2013-07-27 79 views

回答

1

您可以嵌入DLL到可執行文件:

Jeffrey Richter: Excerpt #2 from CLR via C#, Third Edition

許多應用程序包含取決於許多DLL文件 一個EXE文件。部署此應用程序時,所有文件必須部署爲 。但是,您可以使用一種技術將 僅部署爲一個EXE文件。首先,找出您的 EXE文件所依賴的所有DLL文件,該文件不作爲Microsoft .NET 框架本身的一部分提供。然後將這些DLL添加到Visual Studio項目中。 對於每一個DLL文件添加,顯示其屬性,並改變其 「生成操作」爲「嵌入的資源。」這使得C#編譯器 嵌入DLL文件(S)到您的EXE文件,並可以部署這一 EXE文件。

在運行時,CLR將無法找到相關的DLL 組件,這是一個問題。爲了解決這個問題,當你的應用程序 初始化,註冊在AppDomain的 ResolveAssembly事件的回調方法。

+0

我加入了sqlite.dll的資源,但無法找到的屬性生成操作。 這是與AppDomain中的代碼,我使用的回調: http://pastebin.com/Rm3MfE9Y 對不起不得不使用引擎收錄,因爲文本太長。 仍然無法正常工作 – Lambasoft

+0

構建動作就在屬性中。這很難錯過。 –

+0

下載者請留下評論。這是正確的做法。 –