cerrar aplicacion en c#

NeB1

Si, esta pregunta es real xD

Me estoy volviendo loco para controlar todas las excepciones del programa, y la última que me queda (pero jodidamente importante) es al cerrar la aplicación. Es un formulario, luego, tengo unos archivos que son main.cs, mainDesigner.cs y Program.cs

si desde main.cs hago 'Close()'; (lo que cerraría el formulario) entonces desde Program.cs me salta una excepcion porque "no se puede acceder al objeto eliminado". Sin embargo, si hago 'Application.Exit()', el formulario no se cierra xDDDD, y si hago Application.Exit() y despues close(), me salta otra excepción.

Estoy empezando a odiar el vc# este....

Soltrac

#1 Porque te estás dejando algo en memoria, por eso no te cierra.

Application.Exit() debe cerrarte siempre salvo que dejes threads abiertos o cosas que el propio sistema no puede liberar.

Por cierto, olvídate tanto del designer (que no se porqué se llama así cuando Vc# los nombra *.designer.cs) y del program.cs.

Tu código debe ir en el archivo .cs y cuanto menos toques los demás mejor. Y menos sin saber que estás haciendo.

Buffoncete

http://www.google.es/search?q=c%23+application+events&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:es-ES:official&client=firefox-a

tercera entrada :P

NeB1

#2 Al final era lo que tu decías. Gasto una librería (WCL) que al ejecutar una de sus instrucciones crea un thread, y no lo estaba finalizando manualmente cuando se cerraba el programa antes de lo esperado.

Usuarios habituales

  • NeB1
  • Buffoncete
  • Soltrac