C#
2014.12.15 15:27
응용 프로그램에 첫 번째 IWin32Window 개체가 만들어지기 전에 호출해야 합니다. 오류해결방법
다물칸 주소복사
조회 수 898 추천 수 0 댓글 0
구분 | 팁&트릭 |
---|---|
출처 | http://support.inishtech.com/FAQ108 |
한글에러: 응용 프로그램에 첫 번째 IWin32Window 개체가 만들어지기 전에 호출해야 합니다.
영문에러: setcompatibletextrenderingdefault must be called before the first
잘되다가 갑자기 이런 에러가 빡 나면... 아... 이게 뭔 에러인교?? 으악..... 삽질의 연속하다가 역시 구글링의 힘...
역시 한글리소스는 없다. 제길슨.... 이글이 이 오류의 첫 한글 해답일까? 닷넷이 나온지 10년이 넘었는데...
아니면 내가 한글로는 검색을 못하는 건가?
아니면 오류가 외국 사람들이랑 나만 났던 건가?
출처 링크에서는 코드 복사가 이상하게 된다. 모양은 똑같은데... 일일히 다 타이핑했다.
별반 다를게 없는데 신기하게 여기서는 오류없이 실행된다. 함수 더 태운 이유 하나만으로...
참고로 Application.SetCompatibleTextRenderingDefault(false); 이 구문에서
False일 경우 GDI사용, True일 경우 GDI+를 사용한다는 옵션이란다. 확인 못함.
[STAThread] static void Main() { AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException; InitialiseWinFormsSettings(); try { Execute(); } catch (Exception ex) { DumpException(ex, "Unhandled exeception(1)"); } } private static void InitialiseWinFormsSettings() { Application.ThreadException += Application_ThreadException; Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); } static void Application_ThreadException(object sender, ThreadExceptionEventArgs e) { DumpException(e.Exception, "Thread Exception"); } static void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e) { DumpException((Exception)e.ExceptionObject, "Unhandeld execption (2)"); } static void DumpException (Exception exception, string title) { MessageBox.Show(exception.ToString(), title); } private static void Execute() { Application.Run(new frmLogin()); }