P / Invoke中的奇怪的上一个错误

时间:2010-02-18 06:21:12

标签: c# pinvoke

家伙!我通过P / Invoke调用“PrintDlg”Win32 API。奇怪的是,如果我使用Visual Studio调试模式(按F5)运行我的应用程序,最后一个错误是122,这意味着“传递给系统调用的数据区域太小”,但如果我用Ctrl + F5运行它,最后一个错误是0,消息是“操作成功完成”。怎么可能这样呢?非常感谢......

1 个答案:

答案 0 :(得分:0)

a)除非函数返回false,否则不要检查错误。

b)不要使用GetLastError,请使用CommDlgExtendedError as the docs suggest

c)开始接受问题的答案。 :)