我正在开发一个 C# 混淆程序,我想知道是否有一些方法名称“硬连线”到框架中,因此不应修改。我首先想到的是 .ctor、.cctor 和 Dispose。还有其他我应该避免修改的吗?
编辑:
为了详细说明,并受到 Paul Alexander 的启发(感谢您的回答),我通过修改 IL 源代码来做到这一点。以下是一些典型的(?).method 语句:
.method family hidebysig virtual instance void
Dispose(bool disposing) cil managed
.method private hidebysig instance void
InitializeComponent() cil managed
.method public hidebysig specialname rtspecialname
instance void .ctor(class [mscorlib]System.Collections.Generic.List`1<string> twoLetterWords) cil managed
.method private hidebysig static string[]
CreateStringArray() cil managed
我可以看到构造函数 (.ctor) 有一个“rtspecialname”选项,而 Dispose 有一个“family”选项。这是我应该留意的事情吗?
您绝对应该避免修改公共类中的任何公共方法。还要避免修改属性 getter 和 setter (get_XXX
and set_XXX
方法)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)