Поделиться через


Распространение библиотеки MFC

Обновлен: Ноябрь 2007

Если приложение динамически компонуется с библиотекой MFC, необходимо, как минимум, распространять библиотеки Mfc90.dll и Msvcr90.dll вместе с соответствующими файлами манифеста для сборок MFC и CRT. Дополнительные сведения о сборках Visual C++ и библиотеках DLL, входящих в их состав, см. в разделе Visual C++ Libraries as Shared Side-by-Side Assemblies. Установка файла Msvcr90.dll необходима, поскольку все библиотеки DLL MFC используют общую версию библиотеки среды выполнения C (CRT).

Библиотеку Mfc90.dll не следует распространять с приложениями MFC, если компоновка с библиотекой DLL MFC осуществляется статически (на вкладке Общие в диалоговом окне Страницы свойства указан параметр Использовать MFC в статической библиотеке). Даже если это работает во время тестирования и внутреннего развертывания приложений, библиотеку MFC не рекомендуется распространять подобным образом. Дополнительные сведения о рекомендуемом решении для развертывания библиотек Visual C++ см. в разделе Выбор метода развертывания.

Если в приложении используются классы MFC, которые реализуют элемент управления WebBrowser (например, CHtmlView Class или CHtmlEditView Class), на целевом компьютере должен быть установлен веб-обозреватель Microsoft Internet Explorer 4.0 или более поздней версии. Установка последней версии Internet Explorer также гарантирует, что на целевом компьютере будет установлена последняя версия файлов общих элементов управления. Дополнительные сведения об установке минимального пакета компонентов Internet Explorer см. в статье базы знаний Q185375: "Практическое руководство. Создание одиночного установочного EXE-файла Internet Explorer".

Если в приложении используются классы баз данных MFC, такие как CRecordset Class и CRecordView Class, необходимо также распространять ODBC и все драйвера ODBC, которые использует приложение. Дополнительные сведения см. в разделе Распространение файлов поддержки базы данных.

Если в приложении MFC используются элементы управления Windows Forms, то вместе с приложением также следует распространять файл mfcmifc90.dll. Эта библиотека DLL является сборкой .NET, подписанной строгим именем, которая может устанавливаться в локальной папке приложения или в глобальном кэше сборок (GAC) с помощью Программа глобального кэша сборок (Gacutil.exe).

При распространении библиотек DLL MFC удостоверьтесь в том, что распространяется окончательная, а не отладочная версия. Отладочные версии библиотек DLL непригодны для распространения. Имена файлов отладочных версий библиотек DLL MFC заканчиваются знаком "d" — в качестве примера можно привести файл Mfc90d.dll.

При необходимости внесения каких-либо изменений в исходный код MFC и перепостроения библиотеки DLL MFC обязательно нужно переименовать модифицированную библиотеку DLL MFC таким образом, чтобы она не конфликтовала с Visual Studio. Повторное построение и переименование библиотеки DLL MFC использовать не рекомендуется. Дополнительные сведения см. в Техническом примечании MFC №33.

Библиотеку MFC можно распространять, либо используя модули слияния, которые устанавливаются вместе с Visual Studio, либо путем развертывания сборки MFC во вложенной папке локальной папки приложения в качестве закрытой сборки. Дополнительные сведения о распространении библиотеки MFC см. в разделеРаспространение файлов Visual C++.

Установка локализированных компонентов MFC

Если в приложении при использовании ресурсов MFC необходимо использовать локализацию путем установки локализационной библиотеки DLL MFC90, следует использовать распространяемые файлы MSM. Например, для локализации приложения на компьютере x86 необходимо включить файлы Microsoft_VC90_MFCLOC_x86.msm и policy_9_0_Microsoft_VC90_MFCLOC_x86.msm в пакет установки для компьютера x86.

Помимо стандартного каталога, манифеста и файлов политики, перераспределяемые файлы MSM содержат набор из 9 библиотек DLL, повсеместно используемых в механизме локализации. Во время процесса установки эти библиотеки DLL будут скопированы в папку winsxs на целевом компьютере.

Дополнительные сведения о локализации приложений MFC можно найти с помощью веб-узла https://support.microsoft.com/ в Техническом примечании MFC №57 и статье базы знаний Q208983: "Практическое руководство. Использование локализационных библиотек DLL MFC".

Локализованные библиотеки DLL MFC можно распространять путем развертывания сборки MFC в локальной папке приложения в качестве закрытой сборки. Дополнительные сведения о распространении библиотек Visual C++ в качестве закрытых сборок см. в разделе Распространение файлов Visual C++.

См. также

Основные понятия

Распространение файлов Visual C++