lcFloppy="A:" llok=IsFloppyReady() IF llok && disk detected in floppy drive *--Ok to proceed check for existing files on floppy =ADIR(afiles,lcFloppy+"\*.*") IF UPPER(TYPE('afiles'))!="U" *etc ELSE *etc ENDIF ELSE *Check drive B: ENDIF RETURN FUNCTION IsFloppyReady #DEFINE SEM_FAILCRITICALERRORS 1 #DEFINE SEM_NOALIGNMENTFAULTEXCEPT 4 #DEFINE SEM_NOGPFAULTERRORBOX 2 #DEFINE SEM_NOOPENFILEERRORBOX 32768 && 0x8000 DECLARE INTEGER SetErrorMode IN kernel32 INTEGER uMode LOCAL lvOldOnError, lnVfpError, lnOldErrorMode * saving the old ErroMode value, and at the same moment * suppressing a possible system message of no disk in drive lnOldMode = SetErrorMode (SEM_FAILCRITICALERRORS) * saving the old ON ERROR state lvOldOnError = ON("ERROR") lnVfpError = .F. ON ERROR lnVfpError = .T. SET CONS OFF IF lcFloppy="A:\" .OR. lcFloppy="A:" DIR a: ELSE DIR b: ENDIF SET CONS ON * restoring saved properties ON ERROR &lvOldOnError = SetErrorMode (lnOldMode) RETURN NOT lnVfpError