2011-03-12 102 views
2

我有一個用戶報告在.NET框架內發生的一個非常奇怪的異常。什麼可能會導致在System.Windows.Forms.InputLanguage.CreateInputLanguageChangingEventArgs中的溢出異常

從異常堆棧跟蹤爲:

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) 

我看着在反射器InputLanguage類,我不看到的InputLanguageChangingEventArgs的構造任何可能會造成溢出異常。

我的應用程序確實與本地化有關的唯一的事情是嘗試確定操作系統默認語言,並在翻譯可用時將翻譯文件加載到散列表中。這些表格試圖在適當的翻譯之間從右到左和從左到右進行切換,但由於這是日文,我不認爲這會影響它。

+0

你能解決這個問題嗎?我遇到了與日本用戶相同的問題。 – 2014-08-27 12:25:46

+0

這是.NET中的一個錯誤。在這裏看到我的答案http://stackoverflow.com/a/32021586/332528 – torvin 2015-08-15 23:24:50

回答

1

嗯或許日本的符號在ANCII表中的尺寸比普通的sizeof(char)大 - 這是唯一需要考慮的事情。

相關問題