• <menu id="w2i4a"></menu>
  • logo Eziriz中文文檔

    聲明式保護



    .NET Reactor 最新下載


    .NET Reactor 用戶界面提供了多種方法來細化應用于應用程序的保護級別。高級規(guī)則編輯器允許您選擇不同的包含和排除選項,您還可以使用標準 .NET混淆屬性來控制保護級別。如果您希望 .NET Reactor 尊重此屬性,則必須在設置中啟用聲明性保護選項:

    DevExpress VCL圖表控件

    啟用此選項后,您可以使用該屬性來選擇特定的保護功能,選擇是包含還是排除這些功能,并指定應受影響的類和成員。

    選擇保護功能

    可以通過為屬性“Feature”屬性指定值來選擇保護功能。

    [System.Reflection.Obfuscation(Feature = "renaming,controlflow")

    點擊復制

    以下值可用:
    • “重命名”或“混淆”
    • “字符串加密”
    • “控制流”
    • “死靈”
    • “抗壓印”
    • “隱藏方法”

    重要提示:輸入的值必須用引號引起來,并且不區(qū)分大小寫。

    定義行為

    使用Exclude 屬性可以定義是應包含還是排除這些功能。

    [System.Reflection.Obfuscation(Exclude = true, Feature = "renaming")

    點擊復制

    [System.Reflection.Obfuscation(Exclude = false, Feature = "controlflow")

    點擊復制

    • 要包含功能,請將排除屬性設置為false。
    • 要排除功能,請將 Exclude 屬性設置為true。默認值為true,因此如果您希望排除某項功能,則可以選擇顯式設置 Exclude 屬性。

    使用 'ApplyToMembers'屬性可以定義是應包含還是排除這些功能。

    放置屬性和“ApplyToMembers”屬性

    您可以將屬性放置在類和成員(方法、屬性和字段)之上。

    [System.Reflection.Obfuscation(Exclude = true, Feature = "controlflow")
    internal void MyMethod()

    點擊復制

    [System.Reflection.Obfuscation(Exclude = false, Feature = "renaming", ApplyToMembers = false)
    public class MyClass

    點擊復制

    ApplyToMembers屬性的默認值為true。由于它僅影響類成員(方法、屬性、字段和嵌套類)是否受到影響,因此它僅適用于裝飾類的屬性。如果您不希望類成員受到影響,請將 ApplyToMembers 屬性設置為false。

    例子

    示例1:

    [System.Reflection.Obfuscation(Feature = "renaming")
    class MyClass
    {
    class NestedClass
    {}
    void MyMethod(){}
    }
    

    點擊復制

    MyClass、NestedClass 和 MyMethod 不會被重命名。

    示例2:

    [System.Reflection.Obfuscation(Exclude = true, Feature = "renaming", ApplyToMembers = true)
    class MyClass
    {
    class NestedClass
    {}
    void MyMethod(){}
    }

    點擊復制

    這與示例 1 等效。

    示例3:

    [System.Reflection.Obfuscation(Feature = "renaming", ApplyToMembers = false)]
    class MyClass
    {
    class NestedClass
    {}
    void MyMethod(){}

    點擊復制

    僅 MyClass 被排除在重命名之外,但 NestedClass 和 MyMethod 不會被排除。

    示例4

    [System.Reflection.Obfuscation(Exclude = false, Feature = "renaming,stringencryption") // include
    [System.Reflection.Obfuscation(Exclude = true, Feature = "necrobit") // exclude
    class MyClass
    {
    int MyField;
    [System.Reflection.Obfuscation(Exclude = true, Feature = "renaming") // exclude
    void MyMethod(){}
    [System.Reflection.Obfuscation(Exclude = false, Feature = "necrobit") // include
    void MyMethod2(){}
    }

    點擊復制

    • 僅 MyField 和 MyMethod2 將被重命名。
    • 字符串加密將應用于 MyMethod 和 MyMethod2
    • NecroBit 將僅應用于 MyMethod2。
    特殊情況:[System.Reflection.Obfuscation()]

    有一種特殊情況獨立于“聲明性保護”工作。如果您沒有為功能屬性設置值,則該屬性將排除重命名。

    實施例5:

    [System.Reflection.Obfuscation(ApplyToMembers = false)]
    class MyClass
    {
    class NestedClass
    {}
    void MyMethod(){}
    }

    點擊復制

    僅 MyClass 被排除在重命名之外,但 NestedClass 和 MyMethod 不會被排除。

    實施例6:

    [System.Reflection.Obfuscation()]
    enum MyEnum
    {
    A,
    B,
    C
    }

    點擊復制

    MyEnum 和所有字段都被排除在重命名之外。

    實施例7:

    enum MyEnum
    {
    A,
    [System.Reflection.Obfuscation()]
    B,
    C
    }

    點擊復制

    僅 B 字段被排除在重命名之外。

    掃碼咨詢


    添加微信 立即咨詢

    電話咨詢

    客服熱線
    023-68661681

    TOP
    三级成人熟女影院,欧美午夜成人精品视频,亚洲国产成人乱色在线观看,色中色成人论坛 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();