Freigeben über


Verteilen von Visual C++-Dateien

Hinweis

Möchten Sie eine der Visual C++-Runtimedateien herunterladen? Wechseln Sie zur neuesten unterstützten Downloadseite von Visual C++ Redistributable .

Redistributable-Dateien und Lizenzierung

Die Verteilung des Redistributable-Pakets für Visual C++-Runtime, zusammenführen von Modulen und einzelnen Binärdateien ist auf lizenzierte Visual Studio Benutzer beschränkt und unterliegt den Microsoft-Software-Lizenzbedingungen.

Wenn Sie eine Anwendung bereitstellen, müssen Sie auch die Dateien bereitstellen, die zu ihrer Unterstützung erforderlich sind. Wenn Microsoft eine dieser Dateien bereitstellt, überprüfen Sie, ob Sie diese weitervertreiben dürfen. Sie finden einen Link zu den Visual Studio Lizenzbedingungen in der IDE. Wählen Sie im Dialogfeld About Microsoft Visual Studio den Link License Terms aus. Sie können auch die entsprechenden Microsoft-Software-Lizenzbedingungen und -Lizenzen aus dem Visual Studio License Directory herunterladen.

Um die "REDIST-Liste" anzusehen, auf die im Abschnitt "Verteilercode" der Visual Studio 2022 Microsoft-Softwarelizenzbedingungen verwiesen wird, gehen Sie zu Distributable-Codedateien für Microsoft Visual Studio 2022.

Um die "REDIST-Liste" anzuzeigen, auf die im Abschnitt "Verteilercode" der Visual Studio 2019 Microsoft-Softwarelizenzbedingungen verwiesen wird, sehen Sie unter Distributable-Codedateien für Microsoft Visual Studio 2019 nach.

Informationen zum Anzeigen der "REDIST-Liste", auf die im Abschnitt "Verteilbarer Code" der Visual Studio 2017 Microsoft-Softwarelizenzbedingungen verwiesen wird, finden Sie unter Verteilbare Code-Dateien für Microsoft Visual Studio 2017.

Informationen zum Anzeigen der "REDIST-Liste", auf die im Abschnitt "Verteilbarer Code" der Visual Studio 2015 Microsoft-Softwarelizenzbedingungen verwiesen wird, finden Sie unter Distributable-Codedateien für Microsoft Visual Studio 2015.

Weitere Informationen zu weiterverteilbaren Dateien finden Sie unter Ermitteln, welche Dynamic Link Libraries (DLLs) für die Weiterverteilung und Bereitstellungsbeispiele verwendet werden sollen.

Finden der Redistributable-Dateien

Um weiterverteilbare Dateien bereitzustellen, können Sie die von Visual Studio installierten verteilbaren Pakete verwenden. In Versionen von Visual Studio seit 2017 werden diese Dateien vc_redist.arm64.exe, vc_redist.x64.exe und vc_redist.x86.exe benannt. In Visual Studio 2015, 2017 und 2019 sind sie auch unter den Namen vcredist_x86.exe, vcredist_x64.exe und (nur 2015) vcredist_arm.exe verfügbar.

Am einfachsten finden Sie die Redistributable-Dateien durch Festlegen von Umgebungsvariablen in einer Developer-Eingabeaufforderung. In Visual Studio 2022 befinden sich die verteilbaren Dateien im Ordner %VCINSTALLDIR%Redist\MSVC\v143. In der neuesten Version von Visual Studio 2019 finden Sie die weiterverteilbaren Dateien im Ordner %VCINSTALLDIR%Redist\MSVC\v142. In Visual Studio 2017 und Visual Studio 2019 befinden sich die Dateien auch in %VCToolsRedistDir%. In Visual Studio 2015 finden Sie diese Dateien in %VCINSTALLDIR%redist\<locale>, wobei <locale> das Gebietsschema der verteilbaren Pakete ist.

In Visual Studio 2022 und 2019 sind Merge-Modul-Dateien Teil einer optional installierbaren Komponente namens Visual C++ <version> Redistributable Merge Modules im Visual Studio Installer. Die Zusammenführungsmodule werden standardmäßig als Teil einer C++-Installation in Visual Studio 2017 und Visual Studio 2015 installiert. Wenn sie in Visual Studio 2022 installiert sind, finden Sie die verteilbaren Zusammenführungsmodule in %VCINSTALLDIR%Redist\MSVC\v143\MergeModules.

In der neuesten Version von Visual Studio 2019 befinden sich die verteilbaren Zusammenführungsmodule in %VCINSTALLDIR%Redist\MSVC\v142\MergeModules. In Visual Studio 2019 und Visual Studio 2017 sind sie auch in %VCToolsRedistDir%MergeModules zu finden. In Visual Studio 2015 befinden sie sich in Program Files [(x86)]\Common Files\Merge Modules.

Installieren Sie die weiterverteilbaren Pakete

Die Redistributable-Pakete von Visual C++ installieren und registrieren alle Visual C++-Bibliotheken. Wenn Sie eines verwenden, führen Sie es als erforderliche Komponente auf dem Zielsystem aus, bevor Sie Ihre Anwendung installieren. Es wird empfohlen, dass Sie diese Pakete für die Bereitstellungen verwenden, da Sie die automatische Aktualisierung von Visual C++-Bibliotheken ermöglichen. Ein Beispiel für die Verwendung dieser Pakete finden Sie unter der Anleitung: Bereitstellen einer Visual-C++-Anwendung mithilfe des Visual-C++-Redistributable-Pakets.

Jedes Visual C++ Redistributable überprüft, ob auf dem Computer eine neuere Version vorhanden ist. Wenn eine neuere Version gefunden wird, wird das Paket nicht installiert. In Visual Studio 2015 oder höher zeigen verteilbare Pakete eine Fehlermeldung an, die besagt, dass das Setup fehlgeschlagen ist. Wenn ein Paket zum Ausführen das Kennzeichen verwendet, wird keine Fehlermeldung angezeigt. In beiden Fällen protokolliert das Microsoft-Installationsprogramm den Fehler, und ein Fehlerergebnis wird an den Aufrufer zurückgegeben.

In Visual Studio 2015 und höher können Sie diesen Fehler vermeiden, indem Sie die Registrierung überprüfen, um herauszufinden, ob eine neuere Version installiert ist. Die aktuell installierte Versionsnummer ist im Schlüssel gespeichert.

Die Versionsnummer ist 14.0 für Visual Studio 2015, 2017, 2019 und 2022, da die neueste Redistributable mit früheren Versionen bis 2015 binär kompatibel ist. Der Schlüssel ist , oder abhängig von den installierten Versionen für die Plattform. (Sie müssen nur unter dem Unterschlüssel prüfen, wenn Sie Regedit verwenden, um die Version des installierten x86-Pakets auf einer x64-Plattform anzuzeigen.)

Die Versionsnummer wird im Zeichenfolgenwert und auch in der Gruppe von , , , und Werten gespeichert. Um einen Fehler bei der Installation zu vermeiden, müssen Sie die Installation des verteilbaren Pakets überspringen, wenn die aktuell installierte Version aktueller ist.

Befehlszeilenoptionen für die weitervertreibbaren Pakete

Visual C++ Redistributable unterstützt einige Befehlszeilenoptionen. Mit den Optionen , , oder Optionen wird ein Dialogfeld angezeigt, in dem die verfügbaren Optionen aufgelistet sind. Sie können angeben, ob die Redistributable installiert, repariert oder deinstalliert werden soll. Die Option kopiert den vollständigen Inhalt des Redistributable im aktuellen Verzeichnis.

Standardmäßig installiert das Redistributable seine Inhalte und fordert vom Benutzer Informationen an (einschließlich der Angabe, ob nach der Installation neu gestartet werden soll). Sie können die Option angeben, die den Fortschritt anzeigt, andernfalls jedoch keine Benutzerinteraktion erfordert. Sie können auch eine Option angeben, die keine Benutzeroberfläche anzeigt oder eine Benutzerinteraktion erfordert. Mit der Option werden alle Neustartversuche unterdrückt. Standardmäßig wird eine Protokolldatei unter . erstellt. Sie können verwenden, um eine bestimmte Datei für die Protokollierung anzugeben.

Der folgende Beispielbefehl installiert das x64-Redistributable. Er zeigt den Installationsfortschritt an, erfordert jedoch keine Benutzerinteraktion oder einen Neustart:

vc_redist.x64.exe /install /passive /norestart

Installieren der Redistributable-Mergemodule

Wichtig

Merge-Module für Visual C++ Redistributable-Pakete sind veraltet. Es wird nicht empfohlen, sie für die Anwendungsbereitstellung zu verwenden. Stattdessen empfehlen wir die zentrale Bereitstellung des Visual-C++-Redistributable-Pakets. Die zentrale Bereitstellung durch ein weiterverteilbares Paket ermöglicht es Microsoft, Laufzeitbibliotheksdateien unabhängig zu warten. Eine Deinstallation Ihrer App kann sich nicht auf andere Anwendungen auswirken, die auch die zentrale Bereitstellung verwenden.

Wenn Sie ein weiterverteilbares Paket für die zentrale Bereitstellung verwenden, sind Sie nicht für das Nachverfolgen und Verwalten der Laufzeitbibliotheken verantwortlich. Andernfalls müssen Sie im Falle einer Aktualisierung Ihrer Runtime-Bibliotheksdateien Ihr -Installationsprogramm aktualisieren und erneut bereitstellen. Bis dahin ist Ihre App unter Umständen anfällig für Fehler oder Sicherheitsprobleme.

Redistributierbare Zusammenführungsmodule müssen in das Windows Installer-Paket (oder ein vergleichbares Installationspaket) aufgenommen werden, das Sie zur Bereitstellung Ihrer Anwendung nutzen. Weitere Informationen finden Sie unter „Verteilung mit Hilfe von Mergemodulen“. Ein Beispiel finden Sie unter "Einführung: Bereitstellen einer Visual C++-Anwendung mithilfe eines Setup-Projekts".

Installieren einzelner Redistributable-Dateien

Es ist auch möglich, die Redistributable-DLLs direkt im lokalen Ordner der Anwendung zu installieren. Der lokale Anwendungsordner ist der Ordner, der Ihre ausführbare Anwendungsdatei enthält. Aus Wartungsgründen empfehlen wir nicht, diesen Installationsspeicherort zu verwenden.

Mögliche Laufzeitfehler

Wenn Windows eine der von Ihrer Anwendung erforderlichen redistributable DLLs nicht finden kann, wird möglicherweise eine Meldung wie die folgende angezeigt: "Diese Anwendung konnte nicht gestartet werden, da library.dll nicht gefunden wurde. Installieren Sie die Anwendung neu, um das Problem zu beheben.“

Um diese Art von Fehler zu beheben, stellen Sie sicher, dass ihr Anwendungsinstallationsprogramm ordnungsgemäß erstellt wird. Stellen Sie sicher, dass die weiterverteilbaren Bibliotheken im Zielsystem ordnungsgemäß bereitgestellt werden. Weitere Informationen finden Sie unter "Grundlegendes zu den Abhängigkeiten einer Visual C++-Anwendung".

  • Die Verteilung mit Merge Modules beschreibt, wie Visual C++ Redistributable Merge Modules verwendet werden, um die Visual-C++-Runtime-Bibliotheken als freigegebene DLLs im Ordner zu installieren.
  • Die Verteilung von Visual C++-ActiveX-Steuerelementen beschreibt, wie Sie eine Anwendung, die ActiveX-Steuerelemente verwendet, neu verteilen.
  • Die Weiterverteilung der Microsoft Foundation Class (MFC)-Bibliothek beschreibt, wie Sie eine Anwendung, die MFC verwendet, neu verteilen.
  • Die Weiterverteilung einer ATL-Anwendung (Active Template Library) beschreibt, wie Sie eine Anwendung, die eine ATL verwendet, neu verteilen. In Visual Studio 2012 und höher ist keine ATL-Bibliothek erforderlich.
  • Bereitstellungsbeispiele enthalten Links zu Beispielen, die veranschaulichen, wie Visual C++-Anwendungen bereitgestellt werden.
  • Die Bereitstellung von Desktopanwendungen führt Visual C++-Bereitstellungskonzepte und -technologien ein.
  • Links zu den neuesten unterstützten Visual C++-Redistributable-Downloads.