Использование C# DLL перепутано с ConfuserEx
В моем проекте приложения в Visual stuido я пытаюсь ссылаться на DLL, перепутанную с ConfuserEx (из другого проекта). Даже если я использую предустановку "none", во время выполнения, когда загружается DLL, мое приложение вылетает со следующим сообщением:
Помощник по управляемой отладке "FatalExecutionEngineError": "Во время выполнения обнаружена фатальная ошибка. Адрес ошибки был 0x063b523c, в потоке 0x341c. Код ошибки 0x80131623. Эта ошибка может быть ошибкой в CLR или в небезопасных или не поддающихся проверке частях пользовательского кода. Распространенными источниками этой ошибки являются ошибки пользовательского маршалинга для COM-взаимодействия или 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>
Может кто-нибудь мне помочь?
1 ответ
Одной из причин может быть то, что anti-debug
защита добавлена. Вы можете добавить следующее в свой crproj
файл для отключения этого:
<module path="path_of_dll_to_confuse">
<rule pattern="true" inherit="false">
<protection id="anti debug" action="remove" />
</rule>
</module>