2014-01-23 25 views
0

我從C#項目創建了一個.exe項目。它有很多DLL文件。我怎樣才能隱藏這些文件或嵌入到項目中?因爲,我不想看到我使用過的DLL。如何隱藏C#.exe項目中的所有dll文件

在此先感謝。

編輯:有些DLL是我的,有些不是我的,它們是第三方的DLLL 。

+0

這些DLL由你開發還是第三方DLL? – Steve

+0

查看http://research.microsoft.com/en-us/people/mbarnett/ilmerge.aspx - 儘管任何人看仍然能夠找到相同的代碼/數據... –

+0

一些DLL是我的,一些不是我的,他們是第三方的DLLS。 – 1teamsah

回答

1

將來自DLLS的代碼作爲EXE的一部分集成到您的項目中。

或者你可以嘗試ILMerge

ILMerge是可以用來 組件合併多個.NET成一個單一的組件的工具。 ILMerge獲取一組輸入 程序集並將它們合併到一個目標程序集中。輸入程序集列表中的第一個 程序集是主程序集。當 主要程序集是可執行文件時,則目標程序集爲 ,該程序創建爲具有與主要程序集 程序集相同入口點的可執行文件。另外,如果主要程序集具有強名稱,並提供了.snk 文件,則目標程序集將使用指定密鑰重新簽名,以使其也具有強名稱。

2

您可以使用ILMerge,Microsoft的一個實用程序將程序集合到單個程序集(.EXE)中。

更在http://research.microsoft.com/en-us/people/mbarnett/ilmerge.aspx

找出但是,如果你有一個WPF項目,推薦的替代方案是嵌入在引用的程序集的資源,並根據需要加載它們。你可以在Jeffrey Richter的博客http://blogs.msdn.com/b/microsoft_press/archive/2010/02/03/jeffrey-richter-excerpt-2-from-clr-via-c-third-edition.aspx找到更多關於這種方法的信息。

+0

[ILRepack](https://github.com/gluck/il-repack)是一個開源替代品。 – Gluck