gpt4 book ai didi

delphi - RegisterEventSource 返回 997 I/O PENDING

转载 作者:行者123 更新时间:2023-12-01 23:08:38 25 4
gpt4 key购买 nike

调用 RegisterEventSource 时出现错误:997(ioending),我该怎么办?

感谢您的帮助!

procedure TForm1.Button111Click(Sender: TObject);
var
StringToAdd: String;
hEventLog: THandle;
p: PChar;
EventID: Word;
CategoryID: Word;
wynik: Boolean;
errnumber: cardinal;
begin
hEventLog := RegisterEventSource(nil, PChar('app'));

errnumber := 0;
errnumber := GetLastError(); //<==997
showmessage (IntToStr(errnumber));

if hEventLog > 0 then
begin
p := PChar('Test');
wynik :=
ReportEvent(
hEventLog,
EVENTLOG_INFORMATION_TYPE, // Event Type
22, // Event Category ID
500, // Event ID
nil, // User SID (optional)
1, // Number of strings
0, // Size of Binary Data
@p, // String to be merged with Text in Ressource DLL
nil // Address of Binary Data
);
errnumber := GetLastError(); //<==997
showmessage (IntToStr(errnumber));

DeRegisterEventSource(hEventLog);
end;
end;

最佳答案

在调用 GetLastError 之前,您没有测试 hEventLog 是否为 NULL。仅当 API 调用失败时,您才应该调用 GetLastError,如文档中所述。

我的猜测是,RegisterEventSource 实际上成功了,并且您从程序执行早期发生的另一个 API 调用失败中获取了错误代码。

关于delphi - RegisterEventSource 返回 997 I/O PENDING,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6677692/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com