次の疑似コードを含む 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 を返すのはなぜですか? この場合の最後のエラー コードを取得する方法はありますか?