얼마전 개발한 Library와 Framework에서 오류가 발생시 이를 직접 처리하지않고,
Library와 Framework를 사용하는 쪽에서 처리하도록 throw 시키는 코드를 작성했습니다.
visual studio에서 실행할때는 정상적으로 throw가 처리되더군요..
Library에서 throw --> Framework에서 throw --> Application에서 try/catch에서 에러처리
근데.. 배포 후 실해 보니 디버그창이 뜨네요..
Library에서 throw --> 디버그창
해당 문제를 발견해 준 팀원이 아래와 같은 해결책까지 찾아주었습니다.
Winform 프로젝트의 Program.cs 에서 UnhandledExceptionMode 를 지정해주면 되더군요.
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.SetUnhandledExceptionMode(UnhandledExceptionMode.ThrowException);
Application.Run(new Main.FrmMain());
}
관련된 이슈는 stackoverflow에도 나오더군요.. (요즘은 데브피아보다 stackoverflow를 더 많이 찾게 되네요..)
http://stackoverflow.com/questions/1105573/preventing-unhandled-exception-dialog-appearing


