У меня довольно большая программа в .NET 3.5 SP1, которая компилируется просто отлично. Однако, когда я хочу запутать его Obfuscator Pro (оценка пока), Obfuscator останавливается со следующей ошибкой:
[Создать выход] Это приложение попросило Runtime прекратить его необычным способом.
[Build Output] Для получения дополнительной информации обратитесь в службу поддержки. [Создать выход] ilasm вернулся 3
Ошибка сборки сборки.
Поскольку ошибка исходит от ILASM, я думал, что позволяет делать то, что Obfuscator делает (без обфускации), и выполнил следующие команды:
= > ildasm.exe/OUT=C:\MyApp.exe.il/TEXT/NOBAR/RAWEH/QUOTEALLNAMES/UTF8/LINENUM/FORWARD C:\MyApp\bin\Release\MyApp.exe
= > ilasm C:\MyApp.exe.il
Первая команда (ILDASM) проходит просто отлично, я получаю IL файл 450 МБ.
Вторая команда (ILASM), однако, выдается со следующей ошибкой:
Это приложение попросило Runtime прекратить его необычным способом.
Для получения дополнительной информации обратитесь в службу поддержки.
Кто-нибудь знает, что такое ошибка?
Моя система - это Windows 7 x64 с инструментами Visual Studio 2008 (SP1).
UPDATE:
Я связался с поддержкой Obfuscator и провел несколько тестов для них. Кстати, у них действительно есть полезные люди.
Мы обнаружили, что ошибка возникает только при использовании ILASM x86 из фреймворка .net 2.0. При использовании одного из framework64\v2.0... тогда ошибки не произойдет.
Также при использовании либо (x86, либо x64) ILASM от .net 4.0 (бета-версия 2) он проходит просто отлично.
Так что это действительно похоже на ошибку в ILASM.net 2.0 для x86.
В то время как проблема с ILASM не решена, исправлена следующая проблема: