2

在我的 Visual stuido 应用程序项目中,我试图引用一个与 ConfuserEx 混淆的 DLL(来自另一个项目)。即使我使用“无”预设,在运行时,当加载 DLL 时,我的应用程序崩溃并显示以下消息:

托管调试助手'FatalExecutionEngineError':'运行时遇到致命错误。错误地址位于线程 0x341c 上的 0x063b523c。错误代码为 0x80131623。此错误可能是 CLR 中的错​​误或用户代码的不安全或不可验证部分中的错误。此错误的常见来源包括 COM-interop 或 PInvoke 的用户封送错误,这可能会损坏堆栈。

在此处查看错误的屏幕截图

以下是我用来处理我的 DLL 的项目:

<project baseDir="path_to_input_dll_folder" outputDir="path_to_output_dll_folder" xmlns="http://confuser.codeplex.com">
    <rule preset="none" pattern="true"></rule>
    <module path="path_of_dll_to_confuse" />
</project>

谁能帮我?

4

1 回答 1

5

一个原因可能anti-debug是增加了保护。您可以将以下内容添加到crproj文件中以禁用它:

<module path="path_of_dll_to_confuse">
  <rule pattern="true" inherit="false">
    <protection id="anti debug" action="remove" />
  </rule>
</module>
于 2018-08-19T10:54:53.740 回答