Сведения о частных сборках

Частная сборка — это сборка, развернутая вместе с приложением и доступная для монопольного использования этого приложения. То есть другие приложения не совместно используют частную сборку. Частные сборки — это один из методов, которые можно использовать для создания изолированных приложений. Дополнительные сведения см. в разделе Об изолированных приложениях и параллельных сборках.

Частные сборки должны работать параллельно с другими версиями сборки в системе. Дополнительные сведения см. в статье Рекомендации по созданию параллельных сборок.

Частные сборки должны сопровождаться манифестом сборки. Обратите внимание, что при упаковке библиотеки DLL в качестве частной сборки применяются ограничения имен, чтобы обеспечить способ, которым Windows выполняет поиск частных сборок. При поиске частных сборок рекомендуется включить манифест сборки в библиотеку DLL в качестве ресурса. В этом случае идентификатор ресурса должен быть равен 1, а имя частной сборки может совпадать с именем библиотеки DLL. Например, если имя библиотеки DLL MICROSOFT.WINDOWS.MYSAMPLE.DLL, значение атрибута name, используемого в элементе assemblyIdentity манифеста, также может быть Microsoft.Windows.mysample. Альтернативным способом поиска частных сборок является предоставление манифеста сборки в отдельном файле. В этом случае имя сборки и ее манифеста должны отличаться от имени библиотеки DLL. Например, Microsoft.Windows.mysampleAsm, Microsoft.Windows.mysampleAsm.manifest и Microsoft.Windows.mysample.dll. Дополнительные сведения о параллельном поиске частных сборок см. в разделе Последовательность поиска сборок.

Частные сборки устанавливаются в папку структуры каталогов приложения. Как правило, это папка, содержащая исполняемый файл приложения. Частные сборки могут быть развернуты в той же папке, что и приложение, в папке с тем же именем, что и сборка, или во вложенной папке для конкретного языка с тем же именем, что и сборка. Например, используйте одну из следующих структур каталогов для развертывания частной сборки Microsoft.tools.pop без указанного языка.

Структура каталогов Описание
APPDIR\MICROSOFT.TOOLS.POP.DLL Манифест развертывается как ресурс в библиотеке DLL.
Appdir\Microsoft.Tools.Pop.MANIFEST Манифест развертывается в виде отдельного файла.
APPDIR\MICROSOFT.TOOLS.POP\MICROSOFT.TOOLS.POP.DLL Манифест развертывается как ресурс в библиотеке DLL, которая находится во вложенной папке с именем сборки.
Appdir\Microsoft.Tools.Pop\Microsoft.Tools.Pop.MANIFEST Манифест развертывается как отдельный файл во вложенной папке с именем сборки.

 

Важно!

Для версий операционной системы Windows до Windows 7 и Windows Server 2008 R2 собственные частные сборки должны быть развернуты в папке, содержащей исполняемый файл приложения. Установка в папке для конкретного языка или в папке с тем же именем, что и сборка, не поддерживается для собственных частных сборок.

 

Используйте одну из следующих структур каталогов для развертывания частной сборки Microsoft.tools.pop с указанным языком. В следующем примере microsoft.Tools.Pop использует английский (США), а код языка — en-us. Для сборки следует заменить правильный код языка DHTML.

appdir\en-us\Microsoft.tools.pop.DLL
appdir\en-us\Microsoft.tools.pop.MANIFEST
appdir\en-us\Microsoft.tools.pop\Microsoft.tools.pop.DLL
appdir\en-us\Microsoft.tools.pop\Microsoft.tools.pop.MANIFEST

Частные сборки можно установить любым способом установки, который может скопировать файл сборки в эту папку, например командой xcopy . Дополнительные сведения об установке частных сборок с помощью установщика Windows см. в разделе Установка сборок Win32.

Частные сборки также можно установить в операционных системах, предшествующих Windows XP. В этом случае сборка должна быть зарегистрирована, и в этих операционных системах манифест не используется. Копия частной сборки устанавливается в частную папку для монопольного использования приложения. Другая версия сборки может быть глобально зарегистрирована в системе и доступна любому приложению, которое к ней привязывается. Глобальной версией сборки может быть версия, установленная с приложением, или более ранняя версия. Дополнительные сведения см. в статье Перенаправление DLL/COM в Windows. Сборку также можно установить в качестве общей сборки для использования несколькими приложениями. Дополнительные сведения см. в разделе Общие сборки.

Обратите внимание, что действия по созданию частной сборки идентичны действиям для создания общей сборки с двумя исключениями:

  • Подпись частной сборки не требуется, и publickeyToken не требуется в элементе assemblyIdentity манифеста сборки.
  • Частные сборки можно установить в папку приложения с помощью любой технологии установки. Частные сборки не обязательно устанавливать с помощью установщика Windows.