Создание сборокCreate assemblies

Однофайловую или многофайловую сборку можно создать с помощью интегрированной среды разработки, например Visual Studio, либо с помощью компиляторов и средств, доступных в Windows SDK.You can create single-file or multifile assemblies using an IDE, such as Visual Studio, or the compilers and tools provided by the Windows SDK. Простейшая сборка представляет собой один файл, имеющий простое имя и загружаемый в единственный домен приложения.The simplest assembly is a single file that has a simple name and is loaded into a single application domain. На эту сборку нельзя ссылаться из других сборок, находящихся вне папки приложения; кроме того, к ней неприменим механизм проверки версий.This assembly cannot be referenced by other assemblies outside the application directory and does not undergo version checking. Для удаления приложения, состоящего из сборки, достаточно просто удалить папку, в которой оно располагается.To uninstall the application made up of the assembly, you simply delete the directory where it resides. Для большинства разработчиков сборки с такими возможностями достаточно для развертывания приложения.For many developers, an assembly with these features is all that is needed to deploy an application.

Многофайловую сборку можно создать на основе нескольких модулей кода и файлов ресурсов.You can create a multifile assembly from several code modules and resource files. Кроме того, можно создать сборку, которая будет совместно использоваться несколькими приложениями.You can also create an assembly that can be shared by multiple applications. Совместно используемая сборка должна иметь строгое имя и должна быть развернута в глобальном кэше сборок.A shared assembly must have a strong name and can be deployed in the global assembly cache.

Существует несколько способов объединения модулей кода и ресурсов в сборки; способ зависит от следующих факторов.You have several options when grouping code modules and resources into assemblies, depending on the following factors:

  • Управление версиямиVersioning

    Объединение модулей, имеющих одни и те же сведения о версии.Group modules that should have the same version information.

  • РазвертываниеDeployment

    Объединение модулей кода и ресурсов, поддерживающих данную модель развертывания.Group code modules and resources that support your model of deployment.

  • Повторное использованиеReuse

    Объединение модулей, если они могут логически использоваться совместно для некоторых целей.Group modules if they can be logically used together for some purpose. Например, сборка, состоящая из типов и классов, редко используемых для сопровождения программы, может быть помещена в ту же самую сборку.For example, an assembly consisting of types and classes used infrequently for program maintenance can be put in the same assembly. Кроме того, типы, предназначенные для совместного использования несколькими приложениями, могут быть объединены в сборку, которая должна быть подписана строгим именем.In addition, types that you intend to share with multiple applications should be grouped into an assembly and the assembly should be signed with a strong name.

  • БезопасностьSecurity

    Объединение модулей, содержащих типы, которым требуются одни и те же разрешения безопасности.Group modules containing types that require the same security permissions.

  • Область действияScoping

    Объединение модулей, содержащих типы, область видимости которых должна быть ограничена этой же сборкой.Group modules containing types whose visibility should be restricted to the same assembly.

Особое внимание нужно уделить предоставлению доступа к сборкам среды CLR из неуправляемых COM-приложений.There are special considerations when making common language runtime assemblies available to unmanaged COM applications. Дополнительные сведения о работе с неуправляемым кодом см. в разделе Предоставление COM-клиентам доступа к компонентам .NET Framework.For more information about working with unmanaged code, see Expose .NET Framework components to COM.

См. такжеSee also