函数参考


_DebugReportEx

格式化写入调试会话框的信息

#include <Debug.au3>
_DebugReportEx($sData [,$bLastError = False [,$bExit = False]])

参数

$sData 须予报告的数据 (例如 "dllname|functionname")
$bLastError [可选参数] 设置为 True, 表示如有 GetLastErrorMessage() 数据必须追加到报告中
$bExit [可选参数] 设置为 True, 表示脚本必须终止

返回值

成功: 返回 1.
失败: 返回 0.

注意/说明

根据 @error 错误信息将被格式化如下:
0 - 报告 "DLL 返回错误函数".
1 - 报告 "无法打开 dll"
3 - 报告 "无法找到 DLL 函数".

 如果 $sData 不包含 "|" 或 @error 不是上面所指定的报告内容, 信息将不会被格式化.
 如果没有 _DebugSetup(), 已发布的函数总是返回.
 @error 为调用方保留.
 如果 $bLastError = True, @extended 可以设置为 Windows API 的 GetlastError(). 否则保留.

相关

_DebugSetup

示例/演示


#include <Debug.au3>

_DebugSetup()

_DebugReport("message1")

SomeUDF("anyfunction")
If @error Then _DebugReportEx("user32|anyfunction", True); 附加了最后的错误消息

Local $iRet = SomeUDF("CloseClipboard")
If @error Or $iRet = 0 Then _DebugReportEx("user32|CloseClipboard")

_DebugReport("message2")

$iRet = SomeUDF("CloseClipboard")
If @error Or $iRet = 0 Then _DebugReportEx("user32|CloseClipboard", False, True) ; 脚本将被终止

_DebugReport("message3") ; 将不会被报告

Func SomeUDF($func)
    Local $aResult = DllCall("user32.dll", "int", $func)
    If @error Then Return SetError(@error, @extended, 0)
    Return $aResult[0]
EndFunc   ;==>SomeUDF