[英]Internalize Class and Methods in .NET Assembly
我有一組多個程序集(一個程序集將用作API,它取決於其他程序集)。 我想將所有程序集合並為一個程序集,但要防止從外部可見除API之外的所有程序集。
然后,我將使用Xenocode混淆此程序集。 從我所看到的,用Xenocode內部化程序集是不可能的。
我已經從Microsoft看過ILMerge,但是無法確定它是否可以滿足我的要求。 http://research.microsoft.com/~mbarnett/ILMerge.aspx
我已經使用了Microsoft的ILMerge將DLL內部化為一個組裝的庫。 有一個使用ILMerge的有用GUI,稱為NuGenUnify。 你可以在這里找到它。
建議您查看MSDN上的InternalsVisibleTo
屬性。
您可以將所有程序集(API程序集除外)中的所有內容標記為internal
而不是public
,然后將它們重新顯示為您的API程序集。
完成此操作后,使用ILMerge應該會為您提供一個僅具有可見API類的程序集。
我知道Xenocode可以將程序集合並為一個,但是我不確定是否會將其他非主程序集內部化。
我發現ILMerge中的/ internalize開關可以“內部化”除主程序集以外的所有程序集。 非常有用!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.