繁体   English   中英

反编译 Dll - 代码具有用于变量的 CS$4$0001

[英]Decompile Dll - Code has CS$4$0001 for vars

如果可能,我想编辑一个 dll 文件或提取内容并修改它们。

我使用 .Net Reflector 来反编译和生成文件。

除了某些文件包含CS$4$0001而不是变量之外,效果很好。

还有<>g__initLocal31

有没有办法找到那些是什么? 还是我应该更换所有实例并进行测试?

添加:

    [OutputCache(NoStore=true, Location=OutputCacheLocation.Client, Duration=1)]
    public ActionResult _StateTile(string AssetName, string StateName)
    {
        aaReportsEntities dataContext;
        string CS$4$0001 = StateName;
        if (CS$4$0001 != null)
        {
            if (!(CS$4$0001 == "IDLE-UPSTREAM"))

这些可以是:

  • 局部变量(在 IL 中没有名称)
  • 自动实现的属性/类字段事件的支持字段
  • 任何编译器生成的字段(捕获上下文相关的范围等)
  • 表达式树/委托缓存
  • “动态”缓存
  • 迭代器块/“等待”代码中的状态变量
  • 等(同样,主要是编译器生成的任何东西)

它们很重要。 但坦率地说,您可能不应该通过反射器提取代码:通常,如果您有理由这样做,则您已经拥有源代码(或被许可访问它)

您无法取回变量名称。 TReverse工程是很难做到的,推荐这本书- http://www.amazon.co.uk/Reversing-Secrets-Engineering-Eldad-Eilam/dp/0764574817/ref=sr_1_1?ie=UTF8&qid=1353436851&sr=8- 1

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM