Определение библиотек DLL для распространения
Если вы разработали приложение, использующее DLL-файлы из Visual Studio, для его запуска на компьютерах пользователей также должны присутствовать эти файлы.Поскольку у большинства пользователей, скорее всего, отсутствует Visual Studio, необходимо передать им эти файлы.В Visual Studio эти DLL-файлы доступны в составе распространяемых библиотек, которые можно включить в состав установщика приложения.
Распространяемые DLL-файлы копируются на компьютер при установке Visual Studio.По умолчанию они хранятся в папке Program Files (x86)\Версия Microsoft Visual Studio\VC\Redist.Для облегчения включения этих файлов в состав установщика они также доступны в центре загрузки Майкрософт в качестве отдельных распространяемых пакетов.Это исполняемые файлы, устанавливающие распространяемые файлы на компьютер пользователя.Версия распространяемого пакета должна соответствовать версии Visual Studio, используемой для создания приложения.Чтобы найти необходимый распространяемый пакет, выполните поиск в Центре загрузки Майкрософт по словам "Распространяемые пакеты Visual C++" (или "Visual C++ Redistributable Packages").
Чтобы определить, какие библиотеки DLL необходимо повторно распространить вместе с приложением, составьте список библиотек DLL, от которых зависит приложение.Составить этот список можно, к примеру, с использованием средства Dependency Walker (depends.exe), описанного в разделе Основные сведения о зависимостях приложения Visual C++.
Составив список зависимостей, сравните его со списком из любого файла Redist.txt, расположенного в каталоге установки Microsoft Visual Studio, или со "списком REDIST" распространяемых библиотек DLL, на который ссылается раздел "Распространяемый код" условий лицензионного соглашения на использование программного обеспечения корпорации Майкрософт для вашей копии Visual Studio.Для Visual Studio 2013 этот список можно найти в разделе Распространяемый код для Microsoft Visual Studio 2013 и Microsoft Visual Studio 2013 SDK.Невозможно повторно распространить все файлы, включенные в Visual Studio. Разрешается повторно распространить только файлы, указанные в файле Redist.txt или в "списке REDIST" в Интернете. Отладочные версии приложений и различные отладочные библиотеки DLL-файлов Visual C++ невозможно повторно распространить.Дополнительные сведения см. в разделе Выбор метода развертывания.
В следующей таблице описываются некоторые библиотеки DLL Visual C++, от которых может зависеть ваше приложение.
Библиотека Visual C++ |
Описание |
Применение |
---|---|---|
msvcr120.dll |
Библиотека среды выполнения языка С (CRT) для машинного кода. |
Приложения, использующие Функции библиотеки CRT. |
msvcp120.dll |
Стандартная библиотека C++ для машинного кода. |
Приложения, использующие стандартную библиотеку C++. |
mfc120.dll |
Библиотека Microsoft Foundation Class (MFC). |
Приложения, использующие библиотеку MFC. |
mfc120u.dll |
Библиотека MFC с поддержкой Юникода. |
Приложения, использующие библиотеку MFC и требующие поддержки Юникода. |
mfcmifc80.dll |
Библиотека управляемых интерфейсов MFC. |
Приложения, использующие библиотеку MFC с Элементы управления Windows Forms. |
mfcm120.dll |
Управляемая библиотека MFC. |
Приложения, использующие библиотеку MFC с Элементы управления Windows Forms. |
mfcm120u.dll |
Управляемая библиотека MFC с поддержкой Юникода. |
Приложения, использующие библиотеку MFC с Элементы управления Windows Forms и требующие поддержки Юникода. |
Примечание |
---|
Библиотеку шаблонных классов ATL больше не требуется повторно распространять в качестве отдельного DLL-файла.Ее функции были переданы заголовкам и статической библиотеке. |
Дополнительные сведения о повторном распространении этих библиотек DLL с приложением см. в разделе Распространение файлов Visual C++.Примеры содержатся в разделе Примеры развертывания.
Как правило, повторное распространение системных DLL-файлов не требуются, поскольку они входят в состав операционной системы.Однако возможны исключения, например если приложение выполняется в нескольких версиях операционных систем Microsoft.В этом случае необходимо внимательно ознакомиться с соответствующими условиями лицензирования.Также попробуйте обновить системные библиотеки DLL с помощью центра обновления Windows, пакетов обновления или повторно распространяемых пакетов, предоставляемых Майкрософт.Доступные пакеты можно найти на веб-сайте Поддержка Microsoft или в Центре загрузки Майкрософт.