PreEmptive DotFuscator:找不到模块的调试符号,已经添加了具有相同键的项

问题描述 投票:0回答:1

我正在开发.Net Standard项目,并且正在其中使用netDxf.netstandard库。

我正在尝试使用DotFuscator社区版GUI混淆我的代码。

DotFuscator生成过程失败,并引发以下消息:

Reading debugging symbols for module 'MyNameSpace.dll'...
Warning: No debugging symbols found for module 'MyNameSpace.dll'.
An item with the same key has already been added.
Build Error.

经过两天的代码修剪:我最终完成了一个文件项目,并抛出了相同的错误消息!

using netDxf.Entities;

namespace MyNameSpace
{
    public class Cls
    {
        public static double Method1(Polyline p)
        {
            return 0;
        }

        public static double Method2(LwPolyline p)
        {
            return 0;
        }
    }
}

此代码段出了什么问题,所以混淆过程始终失败?

obfuscation class-library dotfuscator .net-standard-2.1
1个回答
0
投票

我在Dotfuscator团队工作,并以此身份回答这个问题。

感谢您发现此问题。仅当保护.NET Standard库且仅当受保护的库引用名称为netstandard的另一个库时,才会出现这种情况。在这种情况下,您的.NET标准库引用为netDxf.netstandard.dll

您可以通过名称为setting a config property和任何非空值的ilreader.alias_netstandard.never解决此问题。但是,这可能导致程序集解析度出现其他问题,因此您可能还需要更新assembly load paths

关于潜在问题,我们已在内部提交了一个错误。该错误将在Dotfuscator Professional和Dotfuscator社区的将来版本中修复。

© www.soinside.com 2019 - 2024. All rights reserved.