您好,我尝试编译/保护test.exe项目。 使用“ ConfuserEx”
我遇到的错误:
[错误]无法解决'test.exe'的依赖关系。 异常:dnlib.DotNet.AssemblyResolveException:无法解析程序集:Discord.Net.WebSocket,版本= 1.0.2.0,区域性=中性,PublicKeyToken =空 在E:\ Source \ Public \ Confuser2 \ dnlib \ src \ DotNet \ IAssemblyResolver.cs:line 113中的dnlib.DotNet.Extensions.ResolveThrow(IAssemblyResolver自身,IAssembly程序集,ModuleDef sourceModule) 在e:\ Source \ Public \ Confuser2 \ Confuser.Core \ ConfuserEngine.cs:line 264中的Confuser.Core.ConfuserEngine.Inspection(ConfuserContext上下文)中 在7:06 AM失败,0:01过去了。
要进一步说明,我有dll,我必须使用.NET Reactor编译器将它们合并到程序中,然后使用“ ConfuserEx”进行保护,并得到该错误。
我相信stackoverflow开发人员的力量,谢谢。
答案 0 :(得分:1)
通常可以通过将受影响的程序集作为外部程序集添加到ConfuserEx项目中来解决此类问题。
可以通过添加以下内容在* .crproj文件中完成
:<module path="Discord.Net.WebSocket.dll" external="true" />
根据需要修复路径值。这将指示ConfuserEx在开始解析类型之前加载特定的程序集。这样,您就可以控制要加载哪些程序集。
external="true"
部分意味着程序集不受包装或混淆,而仅用于解析引用。
因此,最终ConfuserEx项目文件应如下所示:
<project outputDir=".\Confused" baseDir="." xmlns="http://confuser.codeplex.com">
<rule pattern="true" …>
…
</rule>
<module path="test.exe" />
<module path="Discord.Net.WebSocket.dll" external="true" />
</project>
路径可能不同。
答案 1 :(得分:0)