Verteilen der MFC-Bibliothek

Wenn Sie Ihre Anwendung dynamisch mit der MFC-Bibliothek verknüpfen, müssen Sie die entsprechende MFC-DLL verteilen. Wenn Ihre MFC-App beispielsweise mithilfe der Version von MFC erstellt wurde, die in Visual Studio 2015 enthalten ist, müssen Sie je nachdem, ob Ihre App für schmale Zeichen oder Unicode-Unterstützung kompiliert wird, „mfc140.dll“ oder „mfc140u.dll“ verteilen.

Hinweis

Die Datei „mfc140.dll“ ist nicht im Verzeichnis für verteilbare Dateien in Visual Studio 2015 RTM enthalten. Sie können stattdessen die Versionen verwenden, die von Visual Studio 2015 in den Verzeichnissen Windows\system32 and Windows\syswow64 installiert wurden.

Da alle MFC-DLLs die freigegebene Version der C-Laufzeitbibliothek (CRT) verwenden, müssen Sie diese möglicherweise ebenfalls verteilen. Die Version von MFC, die im Lieferumfang von Visual Studio 2015 enthalten ist, verwendet die universelle CRT-Bibliothek, die als Teil von Windows 10 und Windows 11 verteilt wird. Sie müssen die universelle CRT verteilen, um eine MFC-Anwendung auszuführen, die mithilfe von Visual Studio 2015 auf früheren Versionen von Windows erstellt wurde. Weitere Informationen zum Verteilen der universellen CRT als Betriebssystemkomponente oder durch lokale Bereitstellung finden Sie unter Introducing the Universal CRT (Einführung der universellen CRT). Informationen zum Herunterladen des universellen CRT für die zentrale Bereitstellung in unterstützten Versionen von Windows finden Sie unter Windows 10 Universal C Runtime. Verteilbare architekturspezifische Versionen von „ucrtbase.dll“ für die lokale Bereitstellung finden Sie im Windows SDK. Standardmäßig installiert Visual Studio diese unter C:\Programme (x86)\Windows Kits\10\Redist\ucrt\DLLs\ in einem architekturspezifischen Unterverzeichnis.

Wenn Ihre App erstellt wird, indem Sie eine frühere Version der MFC-Bibliothek verwenden, müssen Sie die entsprechende CRT-DLL aus dem Verzeichnis für verteilbare Dateien verteilen. Wenn Ihre MFC-Anwendung beispielsweise mithilfe des Visual Studio 2013-Toolsets (vc120) erstellt wurde, müssen Sie die Datei „msvcr120.dll“ verteilen. Sie müssen ebenfalls die entsprechende Datei „mfc<version>u.dll“ oder „mfc<version>.dll“ verteilen.

Wenn Sie die Anwendung statisch mit MFC verknüpfen, (das heißt, wenn Sie im Dialogfeld Eigenschaften auf der Registerkarte Allgemein die Option MFC in einer statischen Bibliothek verwenden angeben), müssen Sie keine MFC-DLL verteilen. Obwohl die statische Verknüpfung möglicherweise bei Tests und internen Bereitstellungen von Anwendungen funktioniert, sollte dieses Verfahren nicht zur Neuverteilung von MFC verwendet werden. Weitere Informationen zu den empfohlenen Vorgehensweisen zum Bereitstellen von Visual C++-Bibliotheken finden Sie unter Choosing a Deployment Method (Auswählen einer Bereitstellungsmethode).

Wenn die Anwendung die MFC-Klassen verwendet, die das WebBrowser-Steuerelement implementieren (z.B. CHtmlView Class oder CHtmlEditView Class), sollte auch die aktuellste Version von Microsoft Internet Explorer installiert werden, damit auf dem Zielcomputer die aktuellen allgemeinen Steuerungsdateien vorhanden sind. (Mindestens ist Internet Explorer 4.0 erforderlich.) Informationen zum Installieren von Internet Explorer-Komponenten finden Sie in "Artikel 185375: Erstellen einer einzelnen EXE-Installation von Internet Explorer" auf der Microsoft-Support-Website.

Wenn in der Anwendung die MFC-Datenbankklassen (z.B. CRecordset Class und CRecordView Class) verwendet werden, müssen Sie ODBC und alle in der Anwendung verwendeten ODBC-Treiber verteilen.

Wenn die MFC-Anwendung Windows Forms-Steuerelemente verwendet, müssen Sie mfcmifc80.dll mit der Anwendung verteilen. Diese DLL ist eine mit einem starken Namen signierte .NET-Assembly, die mit einer Anwendung in deren lokalem Ordner oder durch Bereitstellung im globalen Assemblycache (GAC) mit Gacutil.exe (Tool für globale Assemblycaches) verteilt werden kann.

Wenn Sie eine MFC-DLL weiterverteilen, achten Sie darauf, nicht die Debugversion, sondern die Verkaufsversion weiterzuverteilen. Debugversionen der DLLs können nicht weiterverteilt werden. Die Namen von Debugversionen der MFC-DLLs enden auf „d“, z.B. „Mfc140d.dll“.

Sie können MFC entweder mit VCRedist_architecture.exe, Mergemodulen, die zusammen mit Visual Studio installiert werden, oder durch Bereitstellung der MFC-DLL im gleichen Ordner wie die Anwendung verteilen. Weitere Informationen zum Verteilen von MFC finden Sie unter Redistributing Visual C++ Files (Verteilen von Visual C++-Dateien).

Installation lokalisierter MFC-Komponenten

Wenn Sie die Anwendung durch Installieren einer MFC-Lokalisierungs-DLL lokalisieren möchten, müssen Sie die verteilbaren Mergedateien (MSM-Datei) verwenden. Wenn Sie zum Beispiel die Anwendung auf einem x86-Computer lokalisieren möchten, müssen Sie „Microsoft_VC<version>_MFCLOC_x86.msm“ im Installationspaket für einen x86-Computer zusammenführen.

Die weiterverteilbaren MSM-Dateien enthalten die DLLs, die für die Lokalisierung verwendet werden. Es gibt eine DLL für jede unterstützte Sprache. Beim Installationsvorgang werden diese DLLs im Ordner "%WINDIR%\system32\" auf dem Zielcomputer installiert.

Weitere Informationen zum Lokalisieren von MFC-Anwendungen finden Sie unter TN057: Lokalisierung von MFC-Komponenten.

Sie können MFC-Lokalisierungs-DLLs verteilen, indem Sie die MFC-DLL im lokalen Anwendungsordner bereitstellen. Weitere Informationen zum Verteilen von Visual C++-Bibliotheken finden Sie unter Redistributing Visual C++ Files (Verteilen von Visual C++-Dateien).

Siehe auch

Verteilen von Visual C++-Dateien