Главная страница | назад





Article #17378: Checking drive ready status.

 Question and Answer Database
FAQ2378D.txt Checking drive ready status.
Category :Windows API
Platform :All
Product :All 32 bit
Question:
How do I check to see if a drive is ready without triggering a
Windows error dialog box?
Answer:
You can use the Windows API function SetErrorMode() to suppress the
Window's critical Error dialog.
Example:
function IsDriveReady(DriveLetter : char) : bool;
var
OldErrorMode : Word;
OldDirectory : string;
begin
OldErrorMode := SetErrorMode(SEM_NOOPENFILEERRORBOX);
GetDir(0, OldDirectory);
{$I-}
ChDir(DriveLetter + ':\');
{$I+}
if IoResult <> 0 then
Result := False
else
Result := True;
ChDir(OldDirectory);
SetErrorMode(OldErrorMode);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
if not IsDriveReady('A') then
ShowMessage('Drive Not Ready') else
ShowMessage('Drive is Ready');
end;
7/16/98 4:31:28 PM

Last Modified: 01-SEP-99