Moin,
für FindFirstFile muss Windows.FindClose(
Handle) anstatt CloseHandle(
Handle) benutzen werden.
DriveIsReady muss also so aussehen...
Delphi-Quellcode:
function DriveIsReady(const Drive: string): Boolean;
var
wfd : TWin32FindData;
hFindData : THandle;
begin
SetErrorMode(SEM_FAILCRITICALERRORS);
hFindData := FindFirstFile(Pointer(Drive + '*.*'), wfd);
Result := (hFindData <> INVALID_HANDLE_VALUE);
if Result then
Windows.FindClose(hFindData);
SetErrorMode(0);
end;
ich habe da gleich mal die IF-Anweisung rausgeschmissen (war schlechter Stil)
MfG
Thorsten
Edit: Das FindClose wird nur noch ausgeführt, wenn das
Handle gültig ist (liefert intern nicht mehr soviele Fehler)