方法1:測試
設置 CallingConvention = System.Runtime.InteropServices.CallingConvention.Cdecl,可是我設置了也是出錯。換一個convention沒出錯。可是調用不正常。.net
方法2:debug
大概意思是P/Invoke StackImblance這個異常,自己來講能夠忽略掉。io
在.net 2的項目環境下,默認是關掉這個異常檢查的。在.net 4下面,默認是開啓這個檢查的。class
要解決這個問題,能夠在ctrl+alt+e的處理異常類型類型設定裏,managed debug assistants裏把pinvoke statckeimblance的複選框去掉就能夠了。bug
測試了有效果。方法