2013-02-27 66 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包含指定其他文件所在位置的清單。構建這些步驟所需的步驟在「如何構建多文件程序集」中有詳細介紹。

相關問題