Pregunta

Tengo un programa bastante grande en .NET 3.5 SP1 que está recopilando bien. Sin embargo, cuando quiero confundir con Ofuscador Pro (evaluación por el momento), Ofuscador se detiene con el error siguiente:

  

[Salida Construir] Esta aplicación ha solicitado el tiempo de ejecución de darlo por terminado de una manera inusual.
  [Salida Construir] Por favor, póngase en contacto con el equipo de soporte de la aplicación para obtener más información.
  [Salida Construir] ilasm devueltos 3
  [Creación de salida] Construir un error.

Puesto que el error proviene de ILASM, pensé que le permite hacer lo que hace Ofuscador (w / o la ofuscación) y ejecutados los siguientes 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

El primer comando (ILDASM) pasa muy bien, me sale un archivo de 450MB IL.
El segundo comando (ILASM), sin embargo se bloquea con el error siguiente:

  

Esta aplicación ha solicitado el tiempo de ejecución de darlo por terminado de una manera inusual.
  Por favor, póngase en contacto con el equipo de soporte de la aplicación para obtener más información.

¿Alguien tiene alguna idea de lo que el error podría ser?
Mi sistema es Windows 7 x64 con las herramientas de Visual Studio 2008 (SP1).

ACTUALIZACIÓN:
Me contacto con la ayuda Ofuscador e hizo algunas pruebas para ellos. Tienen gente muy votos allí por el camino.
Hemos descubierto que el error se produce sólo cuando se utiliza la ILASM x 86 desde la carpeta .NET Framework 2.0. Cuando se utiliza el uno del Framework64 \ v2.0 ... entonces el error no sucede.
También cuando se utiliza ILASM (x86 o x64) de .NET 4.0 (Beta 2) pasa muy bien.
Por lo que esto se parece a un error en el ILASM de .NET 2.0 para x86.

¿Fue útil?

Solución

Mientras que el problema con ILASM realmente no se resuelve, los siguientes solucionó el problema:

  • Uso de ILASM Framework64 carpeta
    El 64 ILASM funciona bien. Sin embargo no podía forzar Dotfuscator utilizarlo.
  • Instalar .NET Framework 4.0 (Beta 2)
    Cuando Net Framework 4.0 se utiliza ILASM funciona muy bien.
  • Ejecutar Dotfuscator con el '/ INPL: en' bandera
    apoyo Dotfuscator me dijo que usara esta bandera y funcionó bien.
    De acuerdo con ellos no debe haber ninguna diferencia en el EXE generado por lo que estoy usando esta solución actualmente (La bandera no está disponible en la interfaz gráfica de usuario).
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top