2013-02-27 64 views
1

组件是否可以包含exe文件?组件是否可以包含exe文件?

我有一个程序生成一个exe文件,但也使用我创建的.dll文件。是一个多文件程序集?

编辑:

那么这是什么我读到有关.NET中的多文件assembiles?那些包含一个.exe和.dll?

+1

程序集可以是exe或dll。 – Sam 2013-02-27 20:16:03

+0

所以程序集是一个EXE或一个DLL?不是都? – 2013-02-27 20:29:05

+0

@ B-Rad:程序集是磁盘上的文件。 – SLaks 2013-02-27 20:29:59

回答

6

不,如果你有一个.exe文件和一个.dll,那是两个独立的程序集。

如果你想只有一个文件,你可以尝试使用ILMerge(direct download,NuGet)来组合这两个文件。

+2

nuget:https://nuget.org/packages/ilmerge – 2013-02-27 20:14:14

+0

@RobertLevy:谢谢,将会加入。 – 2013-02-27 20:22:40

0

您可以使用工具ILMerge将程序集合&合并为一个可执行文件。

看看this

1

使用ILMerge提议乔恩斯基特:

ilmerge.exe /target:winexe /out:bothassemblies.exe assembly1.exe assembly2.dll 
1

This SO post描述了single-file assemblymulti-file assembly之间的区别。下面是从后一个片段来回答您的更新问题:

问:

What is this I read about multi-file assemblies in .NET?

答:

带命令行的编译器,你可以组装分成多个零件 - 单个组件的Manifest包含查找作为组件一部分的信息所需的信息,但存储在单独的f ILE。例如,您可以在自己的文件中保留一个资源图像(即:.bmp),因此无需加载它就可以打开程序集。 Visual Studio不支持创建多文件程序集,但它们看起来像DLL或EXE,加上零个或多个netmodule文件,以及零个或多个资源文件(可以是任何东西)。主DLL或EXE包含指定其他文件所在位置的清单。构建这些步骤所需的步骤在“如何构建多文件程序集”中有详细介绍。

相关问题