假设我有一个带有这个伪代码的 DLL 库:
var
LastError: DWORD;
procedure DoSomethingWrong; stdcall;
var
FileStream: TFileStream;
begin
try
FileStream := TFileStream.Create('?', fmCreate);
except
on EFCreateError do
LastError := GetLastError; // <- why does GetLastError return 0 here ?
end;
end;
为什么GetLastError
函数在如上所示的 DLL 库中使用时返回 0?有没有办法获得这种情况下的最后一个错误代码?