An assembly is a unit of deployment similar to a DLL, OCX, or executable for a component in COM. Assemblies are DLLs and executables that you build using a .NET compiler.

Assemblies can comprise a single file or multiple files. An assembly includes a manifest that contains information about the following:

  • The assembly name
  • The assembly version
  • Publisher security
  • Files that compose the assembly
  • Dependent assemblies
  • Resources
  • Exported data types

The assembly name is the filename, minus any file extension, of the file that contains the manifest. The developer of the assembly also decides the version of the assembly.

Single-file assemblies contain all the data in a single file, including the manifest and any resources it needs. Multi-file assemblies might have external resources, such as bitmaps, icons, and sound files, or have one file for the core code and another for helper libraries.

Assemblies can be shared (public) or private. Private assemblies are usually located in the same directory as the application. The developer of an application typically writes private assemblies for use by that application.

.NET Framework Considerations

Public assemblies for .NET Framework are located in the Global Assembly Cache (GAC).

For .NET Framework, the Common Language Runtime (CLR) uses configuration settings to determine the assembly version to load for an application. These configuration settings might override your request for a specific assembly version. For example, the system administrator can configure your computer to load version 1.0.0.1 instead of 1.0.0.0. If you then try to load version 1.0.0.0, the CLR promotes the assembly version to 1.0.0.1. LabVIEW also notifies you of the promotion.