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