Pergunta

Eu tenho um programa bastante grande no .NET 3.5 SP1, que está compilando muito bem. No entanto, quando eu quero ofuscá -lo com o Obfuscator Pro (avaliação por enquanto), o ofuscador para com o seguinte erro:

Saída de construção] Este aplicativo solicitou o tempo de execução para encerrá -lo de maneira incomum.
Construir saída] Entre em contato com a equipe de suporte do aplicativo para obter mais informações.
Saída de construção] ILASM retornou 3
Construir saída] Erro de construção.

Como o erro vem do ilasma, pensei que vamos fazer o que o Ofuscator faz (sem ofuscação) e executou os seguintes comandos:

=> 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

O primeiro comando (ildasm) passa muito bem, eu recebo um arquivo IL de 450 MB.
O segundo comando (ILASM), no entanto, trava com o seguinte erro:

Este aplicativo solicitou o tempo de execução para encerrá -lo de maneira incomum.
Entre em contato com a equipe de suporte do aplicativo para obter mais informações.

Alguém tem alguma ideia de qual poderia ser o erro?
Meu sistema é o Windows 7 X64 com as ferramentas do Visual Studio 2008 (SP1).

ATUALIZAR:
Entrei em contato com o suporte do Obfuscator e fiz alguns testes para eles. A propósito, eles têm pessoas realmente úteis.
Descobrimos que o erro ocorre apenas ao usar o iLasm x86 na pasta .NET 2.0 Framework. Ao usar o do Framework64 V2.0 ... então o erro não acontece.
Além disso, ao usar o ilasmo (x86 ou x64) do .NET 4.0 (beta 2), ele passa muito bem.
Portanto, isso realmente parece um bug no ILASM do .NET 2.0 para x86.

Foi útil?

Solução

Embora o problema com o ILASM não seja realmente resolvido, o seguinte resolveu o problema:

  • Use ILASM da pasta Framework64
    O iLasm x64 funciona bem. No entanto, eu não poderia forçar o Dotfuscator a usá -lo.
  • Instale .NET Framework 4.0 (Beta 2)
    Quando o iLasm do .NET Framework 4.0 é usado, ele funciona muito bem.
  • Execute o Dotfuscator com o '/inpl: na' bandeira
    O apoio do Dotfuscator me disse para usar essa bandeira e funcionou bem.
    Segundo eles, não deve haver diferença no EXE gerado, por isso estou usando esta solução atualmente (o sinalizador não está disponível na GUI).
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top