2009-05-14 9 views
6

Tengo un problema recurrente con las aplicaciones .NET que no se inician (en otros sistemas que no sean los míos). El hecho es que no puedo, desafortunadamente, crear siempre un paquete que funcione sin problemas. Por lo tanto, a menudo tengo que enviar un archivo ZIP de mi carpeta Debug o Release.Solución de problemas con una aplicación .NET que no se inicia

Mi problema real es que estas aplicaciones no dicen POR QUÉ no están comenzando. Simplemente no obtengo ninguna excepción si los inicio desde la línea de comandos, ni en EventLog, ni siquiera si trato de imprimir en la salida el resultado de un bloque Try Catch en todas mis aplicaciones ... ¿Me falta algo?

La mayoría de las veces, faltan bibliotecas o problemas de seguridad. Pero sería bueno saber qué está pasando exactamente sin dolor: D

Respuesta

3

¿Has probado los registros de fusión? Suzanne Cook tiene un artículo sobre este here.

Otra cosa que hacer (para minimizar los errores silenciosos): minimice su método Main; La razón de esto es que JIT funciona por método, y si no puede JIT Main no puede usar su control de excepciones:

/* for winform, you still new [STAThread] here */ 
static void Main() { 
    try { 
    MainCore(); 
    } catch (Exception ex) { 
    // shout about it 
    } 
} 

[MethodImpl(MethodImplOptions.NoInlining)] // usually overkill 
static void MainCore() { 
    // real code 
} 
0

Sé que no está abordando el problema directamente, pero ¿ha intentado publicar su aplicación (suponiendo que esté usando Visual Studio, por supuesto)? Este debe envolver todo lo que necesita en el instalador.

1

que he tenido un problema con lo que las aplicaciones de WPF no empezarían - resulta que el problema estaba relacionado con las fuentes en el PC del usuario - deshabilitar el servicio WindowsPresentationFontCache solucionó el problema.

También encontré un puesto en otro lugar con la siguiente información ...

... por alguna razón desconocida, el cliente tenía entradas erróneas en las claves de registro que se utilizan para construir esa “familia de fuentes predeterminada "Caché citada en el seguimiento de la pila. Se le pidió al cliente que exporte las entradas en HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ Fonts, y me envíe el archivo. Hubo varios nombres de fuentes que empezaban extrañamente con guiones (---). Estos se corrigieron y se envió un archivo de registro al cliente para su importación. ¡Después de eso, la aplicación comenzó con éxito!

También puede haber la necesidad de eliminar la memoria caché de fuente, según las instrucciones en este enlace http://support.microsoft.com/kb/937135

Cuestiones relacionadas