您能解释一下 C # 或.NET 中的汇编是什么吗?
.NET 程序集
在 Microsoft.NET 框架中,一个 程序集是部分编译的代码 用于部署的库, 版本控制和安全性。
程序集是代码(通常是 DLL)的已编译输出,但 EXE 也是程序集。这是最小的部署单位。NET 项目。
程序集通常包含。在给定的机器上第一次执行时将被编译成本地代码(“ JITted”-由即时编译器编译)的微软中间语言(MSIL)中的 NET 代码。编译后的代码也将存储在程序集中,并在后续调用中重用。
程序集还可以包含图标、位图、字符串表等资源。此外,程序集还在程序集清单中包含元数据——如版本号、强名称、区域性、引用的程序集等信息。
在99% 的情况下,一个程序集等于磁盘上的一个物理文件——多文件程序集(一个程序集,分布在多个文件中)的情况似乎是一个相当奇怪的边缘情况,在我5年多的工作经验中,我从未遇到过这种情况。NET 开发。
在多文件程序集中,DLL 或 EXE 中仍然只有一个程序集清单,多个网络模块文件中仍然只有 MSIL 代码。
Http://www.codeguru.com/columns/csharp_learning/article.php/c5845
程序集是编译器在成功编译每个。NET 应用程序。它可以是动态链接库,也可以是可执行文件。它只为应用程序生成一次,并且在每次后续编译时更新程序集。
下面是关于. NET 程序集组成的另一个解释,引用如下:
NET 框架由 模块、程序集的概念 同时存储元数据和清单 程序集可以包含 多个模块 创建一个模块 由 C # 编译器编译成程序集 (csc.exe) ,但是程序集可以链接 多个.NET 模块通过 程序集链接器(al.exe)命令行 工具。例如,你的每一个来源 Cs 文件可以编译为 连接在一起形成的模块 一个程序集-一个程序集只是一个 模块和资源的集合。 但是,这些模块中的一个; 必须 包含清单元数据(见下文) 程序集的信息 公共关系委员会理解。 .... 已经创建了一个新的. exe 或. dll 在 VS.NET 中你可以看到你的文件出现 在你的文件夹里,打开它 笔记本会发出胡言乱语,或者 即使是在十六进制编辑器中 而不知道 你需要一个像 ildasm.exe 这样的工具 或 CFF 浏览器,使意义从 这个组件的结构是 如下: 聚乙烯头 CLR 头 CLR 元数据 CLR IL 代码 本地数据
NET 框架由 模块、程序集的概念 同时存储元数据和清单 程序集可以包含 多个模块 创建一个模块 由 C # 编译器编译成程序集 (csc.exe) ,但是程序集可以链接 多个.NET 模块通过 程序集链接器(al.exe)命令行 工具。例如,你的每一个来源 Cs 文件可以编译为 连接在一起形成的模块 一个程序集-一个程序集只是一个 模块和资源的集合。 但是,这些模块中的一个; 必须 包含清单元数据(见下文) 程序集的信息 公共关系委员会理解。 .... 已经创建了一个新的. exe 或. dll 在 VS.NET 中你可以看到你的文件出现 在你的文件夹里,打开它 笔记本会发出胡言乱语,或者 即使是在十六进制编辑器中 而不知道 你需要一个像 ildasm.exe 这样的工具 或 CFF 浏览器,使意义从 这个组件的结构是 如下:
聚乙烯头 CLR 头 CLR 元数据 CLR IL 代码 本地数据
当源代码由语言编译器编译时,它会生成一个 管理大会和 MSIL (MisroSoft 中间语言)。该程序集包含 . dll 或. exe 文件。一个程序集可以有两种类型 私人会议和 共享程序集,共享程序集存储在 GAC (全局装配缓存)中,这样任何应用程序都可以引用它,而私有程序集存储在只能由一个应用程序使用的应用程序文件夹中。
程序集是在发布或编译应用程序时创建的 DLL 或 EXE。
在编写程序(项目)的源代码之后,将创建一个文件,该文件可能是 DLL 或 EXE,取决于您的项目。对于单个项目,它只能使用一次。它有两种类型 1:-单身 2:-共享或多程序 单个程序集只用于单个程序,而共享程序集可用于多个程序
Assembly 是逻辑单元的集合。逻辑单元是指构建应用程序并使用。网络架构。基本上,Assembly 是 Exe 和 DLL 的集合。它是可移植和可执行的。
答案是为了立即抓住。
简而言之,它是一个已编译的项目,涉及您的类和其他文件(如果有的话)。也就是说,每个项目在 解决方案是 集合。
或者更准确地说,
集合是类型存储在 flessystem 中的位置 部署代码的机制 程序集包含用于管理数据的类型 程序集,则必须引用它们
我们怎么知道的?如果你浏览 解决方案下面 项目的属性,你可以看到下面的图像。
当您编译项目时,结果是 DLL或 EXE。