gpt4 book ai didi

.net - 无法加载混淆程序集

转载 作者:行者123 更新时间:2023-12-02 02:29:31 24 4
gpt4 key购买 nike

我是第一次使用 dotfuscator。我的项目是用 C# 和 .NET 3.5 编写的,它有一个主程序和一些插件;这是加载插件的代码片段:

// Load the file
Assembly asm = Assembly.LoadFile( pluginPath );

// Instantiate the types I need
foreach( Type type in asm.GetTypes() )
{
...
}

现在的问题是:如果我不混淆一切都很好,但是当我使用 dotfuscator asm.GetTypes() 抛出 ReflectionTypeLoadException 时说

找到的程序集的 list 定义与程序集引用不匹配。 (HRESULT 异常:0x80131040)

我用谷歌搜索了几个小时没有结果。提前致谢。

编辑: 经过一些研究和调试后,我认为这是 list 中的问题,因为反射无法看到(或加载)程序集中的类型。我用 Reflector 打开混淆后的程序集,但一切似乎都很好。

最佳答案

您的程序集是否具有强命名或 Authenticode 签名?混淆会更改程序集的结构,为了在混淆后使用它们,您需要重新注册它们。

Dotfuscator 的商业版本支持退出程序集(包括强名称和 Authenticode),而如果您使用的是免费的社区版,则需要在 Dotfuscator 中作为构建后步骤退出。

关于.net - 无法加载混淆程序集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4309677/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com