发信人: bird_lee@GZ()
整理人: teleme(2001-01-18 16:47:06), 站内信件
|
标 题: 忘了FormatMessage吧! 发信站: 网易虚拟社区 (Mon Jul 24 18:42:58 2000), 站内信件
在Windows API帮助里我们常看到这几句话。
If the function succeeds, the return value is nonzero.
If the function fails, the return value is zero.
To get extended error information, call GetLastError.
Microsoft认为对第一个API返回所有可能的错误代码是效率代下的,所以他们写 了一个独立的API-GetLastError来返回错误代码。但是当你使用GetLastError时 ,返回的只是一些数字,你当然不希望发生错误时返回只是一些数字,Microsof t还是一个独立的API-FormatMessage来把这些数字转换成文字。但是这一个函数 并不是那么好掌握的。
在DELPHI中有一个函数SysErrorMessage把FormatMessage很好的封装起来,
例如
ShowMessage(SysErrorMessage(GetLastError));
简单,方便。
但是你要记住,当发生错误时要马上GetLastError,因为当你调用另一个API时, 它的值马上后改变。
-- Delphi Fans
http://delfan.yeah.net
Delphi Fans,技巧集(太多了),控件,源码
※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.101.113.205]
|
|