2008-08-28 65 views

回答

0

我不認爲你可以刪除元數據,但如果你想保護你的IP,你可以混淆你的代碼。

2

我想您指的是Assembly Manifest

每個裝配,無論是靜態的還是動態的,包含col描述數據 ,其描述了組件中的元件如何相互關聯。程序集清單 包含此程序集元數據 。一種組件 清單包含指定組件的 版本要求和安全 身份,並需要 所有元數據定義組件的範圍和資源 決心引用和 類所需要的所有元數據 。

.Net程序集最重要的特性之一是它們是自描述組件,這是由清單提供的。所以消除它們會以某種方式擊敗它的目的。

2

如果你刪除元數據,框架將無法加載你的代碼,或找出它引用的其他程序集,或者類似的東西,所以不,這不是一個好主意。

混淆器會讓'攻擊者'反編譯你的代碼要困難得多,但是如果有人出於動力和聰明的目的,並沒有太多的事情可以阻止他們。 NET總是會編譯到MSIL,而MSIL本來比原始x86更易於讀取。這只是您使用.NET所做的折中之一。

別擔心。源代碼了Apache,Linux和其他一切都在網上免費提供的,但它不是微軟提供多大的競爭優勢是它:-)

1

這看起來就像是同一個問題:

How do I make the manifest of a .net assembly private?

見我的回答有:

How do I make the manifest of a .net assembly private?

「我想你在談論的是‘模糊’有很多關於它在網絡上的文章:

http://en.wikipedia.org/wiki/Obfuscation

「標準」 工具上的混淆。NET是先發制人的解決方案:

http://www.preemptive.com/obfuscator.html

他們隨Visual Studio中您可以使用一個社區版。

你提到ILDasm,你有沒有看過.NET Reflector?

http://aisto.com/roeder/dotnet/

它給你一個更好的主意,什麼人可以看到,如果你發佈一個清單!」

0

不會像VMware的ThinApp的(以前Thinstall)解決方案幫助一個位以保護您的代碼也是? 儘管它的價格非常高..

相關問題