2011-03-12 7 views
2

.NET Framework에서 매우 예외적 인 예외를보고하는 사용자가 있습니다.System.Windows.Forms.InputLanguage.CreateInputLanguageChangingEventArgs에서 오버플로 예외가 발생할 수있는 이유

예외에서 스택 추적 : 내가 리플렉터의 InputLanguage 클래스에서 봤는데 내가 오버플로 예외의 원인이 될 수있다하여 InputLanguageChangingEventArgs의 생성자에서 아무것도 표시되지 않습니다

System.String StackTrace = 場所 System.Windows.Forms.InputLanguageChangingEventArgs..ctor(InputLanguage inputLanguage, Boolean sysCharSet) 
    場所 System.Windows.Forms.InputLanguage.CreateInputLanguageChangingEventArgs(Message m) 
    場所 System.Windows.Forms.Control.WmInputLangChangeRequest(Message& m) 
    場所 System.Windows.Forms.Control.WndProc(Message& m) 
    場所 BatteryBar.BatteryBar.WndProc(Message& m) 
    場所 System.Windows.Forms.Control.ActiveXImpl.System.Windows.Forms.IWindowTarget.OnMessage(Message& m) 
    場所 System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) 
    場所 System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) 

.

내 응용 프로그램이 현지화와 관련이있는 유일한 방법은 OS 기본 언어를 확인하고 번역이 가능한 경우 해시 테이블에 번역 파일을로드하는 것입니다. 양식은 적절한 번역을 위해 오른쪽에서 왼쪽 및 왼쪽에서 오른쪽으로 전환하려고 시도하지만 일본어이기 때문에 이것이 영향을 미칠 것이라고 생각하지 않습니다.

+0

이 문제를 해결할 수 있었습니까? 일본 사용자와 동일한 문제가 발생합니다. –

+0

이것은 .NET의 버그입니다. 내 대답은 여기를 참조 http://stackoverflow.com/a/32021586/332528 – torvin

답변

1

어쩌면 일본어 기호는 일반적인 sizeof (char)보다 ANCII 테이블에서 더 큰 크기입니다.

관련 문제