Udostępnij przez


Redystrybuowanie biblioteki MFC

W przypadku dynamicznego łączenia aplikacji z biblioteką MFC należy ponownie rozpowszechnić zgodną bibliotekę MFC DLL. Jeśli na przykład aplikacja MFC jest kompilowana przy użyciu wersji MFC dostarczanej z programem Visual Studio 2015, musisz ponownie dystrybuować bibliotekę mfc140.dll lub mfc140u.dll, w zależności od tego, czy aplikacja jest kompilowana pod kątem wąskich znaków, czy obsługi Unicode.

Uwaga

Pliki mfc140.dll zostały pominięte z katalogu plików redystrybucyjnych w programie Visual Studio 2015 RTM. Można użyć wersji zainstalowanych przez program Visual Studio 2015 w katalogach Windows\system32 i Windows\syswow64.

Ponieważ wszystkie biblioteki DLL MFC używają udostępnionej wersji biblioteki środowiska uruchomieniowego języka C (CRT), może być również konieczne ponowne dystrybuowanie CRT. Wersja MFC dostarczana z programem Visual Studio 2015 używa uniwersalnej biblioteki CRT, która jest dystrybuowana w ramach systemów Windows 10 i Windows 11. Aby uruchomić aplikację MFC skompilowaną przy użyciu programu Visual Studio 2015 we wcześniejszych wersjach systemu Windows, należy ponownie rozpowszechnić universal CRT. Aby uzyskać informacje na temat redystrybucji uniwersalnego CRT jako składnika systemu operacyjnego lub przy użyciu wdrożenia lokalnego, zobacz Wprowadzenie do uniwersalnego CRT. Aby pobrać uniwersalny CRT do centralnego wdrażania w obsługiwanych wersjach systemu Windows, zobacz Windows 10 Universal C Runtime. Wersje architektury pakietu redystrybucyjnego ucrtbase.dll dla wdrożenia lokalnego znajdują się w zestawie Windows SDK. Domyślnie program Visual Studio instaluje je w folderze C:\Program Files (x86)\Windows Kits\10\Redist\ucrt\DLL\ w podkatalogu specyficznym dla architektury.

Jeśli aplikacja jest kompilowana przy użyciu wcześniejszej wersji biblioteki MFC, należy ponownie rozpowszechnić zgodną bibliotekę DLL CRT z katalogu plików redystrybucyjnych. Jeśli na przykład aplikacja MFC jest kompilowana przy użyciu zestawu narzędzi programu Visual Studio 2013 (vc120), należy ponownie rozpowszechnić bibliotekę msvcr120.dll. Należy również ponownie rozpowszechnić pasujące biblioteki mfc<version>u.dll lub mfc.dll<version>.

Jeśli statycznie połączysz aplikację z MFC (czyli jeśli określisz opcję Użyj MFC w bibliotece statycznej na karcie Ogólne w oknie dialogowym Strony właściwości), nie musisz rozpowszechniać biblioteki MFC DLL. Jednak mimo że łączenie statyczne może działać na potrzeby testowania i wewnętrznego wdrażania aplikacji, zalecamy, aby nie używać go do ponownego rozpowszechniania MFC. Aby uzyskać więcej informacji na temat zalecanych strategii wdrażania bibliotek Visual C++, zobacz Wybieranie metody wdrażania.

Jeśli aplikacja używa klas MFC, które implementują kontrolkę WebBrowser (na przykład klasa CHtmlView lub klasa CHtmlEditView), zalecamy zainstalowanie najnowszej wersji programu Microsoft Internet Explorer, aby komputer docelowy miał najbardziej typowe pliki sterujące. (Wymagany jest co najmniej program Internet Explorer 4.0). Informacje o sposobie instalowania składników programu Internet Explorer są dostępne w artykule "Artykuł 185375: Jak utworzyć pojedynczą instalację EXE programu Internet Explorer" w witrynie internetowej pomoc techniczna firmy Microsoft.

Jeśli aplikacja używa klas baz danych MFC (na przykład klasy CRecordset i klasy CRecordView), należy ponownie dystrybuować odBC i wszystkie sterowniki ODBC używane przez aplikację.

Jeśli aplikacja MFC używa kontrolek Windows Forms, należy ponownie rozpowszechnić bibliotekę mfcmifc80.dll w aplikacji. Ta biblioteka DLL jest zestawem platformy .NET z podpisem silnej nazwy, który można rozpowszechnić z aplikacją w folderze lokalnym aplikacji lub wdrażając go w globalnej pamięci podręcznej zestawów (GAC) przy użyciu narzędzia Gacutil.exe (Global Assembly Cache Tool).

Jeśli ponownie rozpowszechniasz bibliotekę MFC DLL, pamiętaj o ponownej dystrybucji wersji detalicznej, a nie wersji debugowania. Wersje debugowania bibliotek DLL nie są redystrybucyjne. Nazwy wersji debugowania bibliotek DLL MFC kończą się ciągiem "d", na przykład Mfc140d.dll.

Możesz ponownie rozpowszechnić MFC przy użyciu VCRedist_architecture.exe, scal moduły zainstalowane za pomocą programu Visual Studio lub wdrażając bibliotekę MFC DLL w tym samym folderze co aplikacja. Aby uzyskać więcej informacji na temat redystrybucji MFC, zobacz Redystrybucja plików Visual C++.

instalowanie zlokalizowanych składników MFC

Jeśli zdecydujesz się zlokalizować aplikację, instalując bibliotekę DLL lokalizacji MFC, musisz użyć plików scalania redystrybucyjnego (msm). Jeśli na przykład chcesz zlokalizować aplikację na komputerze x86, musisz scalić Microsoft_VC<version>_MFCLOC_x86.msm z pakietem instalacyjnym dla komputera x86.

Pliki msm pakietu redystrybucyjnego zawierają biblioteki DLL używane do lokalizacji. Istnieje jedna biblioteka DLL dla każdego obsługiwanego języka. Proces instalacji instaluje te biblioteki DLL w folderze %windir%\system32\ na komputerze docelowym.

Aby uzyskać więcej informacji na temat lokalizowania aplikacji MFC, zobacz TN057: lokalizacja składników MFC.

Biblioteki DLL lokalizacji MFC można rozpowszechnić, wdrażając bibliotekę MFC DLL w folderze lokalnym aplikacji. Aby uzyskać więcej informacji na temat redystrybucji bibliotek Visual C++, zobacz Redystrybucja plików Visual C++.

Zobacz też

Ponowne dystrybuowanie plików programu Visual C++