Fileexists
- Kwai chang caine
- Messages : 6989
- Inscription : sam. 23/sept./2006 18:32
- Localisation : Isere
Ou bien plus compliqué
:
Version GNOZAL
Version BINGO
Version travismcgee
Version de Pb
Version de RichardL
http://www.purebasic.fr/english/viewtopic.php?t=22041

Version GNOZAL
Code : Tout sélectionner
Procedure FileExists(FileName.s)
Protected Result.l, Find.WIN32_FIND_DATA
Result = FindFirstFile_(@FileName, Find)
FindClose_(Result)
If Result <> #INVALID_HANDLE_VALUE
ProcedureReturn #True
EndIf
ProcedureReturn #False
EndProcedure
Code : Tout sélectionner
Import "ntdll.lib"
RtlDoesFileExists_U(file.p-unicode)
EndImport
Debug RtlDoesFileExists_U("c:\your.file")
Code : Tout sélectionner
If ExamineDirectory(0,GetCurrentDirectory(),"Sqlite3.dll") = 0
; it isn't there, handle condition
Else
; it is there, handle condition
EndIf
Code : Tout sélectionner
Debug PathFileExists_("c:\program files\internet explorer\iexplore.exe")
Debug PathFileExists_("c:\program files\internet explorer\iexplore.exee")
Code : Tout sélectionner
Procedure.l Exist(File$) ;- Check a drive + file exists, without system requesters etc.
; Check if a drive or drive+file exists
; Return -1 if exists, else 0
; *** Never *** displays a system error even if device is missing
; such as a multi card interface with no cards plugged in.
Protected EFlag.l, OldErrorMode.l, Junk.l
OldErrorMode = SetErrorMode_(1) ; Turn off screen error messages
If GetFileAttributes_(@File$)=-1 ; Get file butes. -1 = fail
Junk.l=GetLastError_() ; Get last error, to flush system
SetLastError_(0) ; Set error to zero
EFlag.l = 0 ; Return value to flag FAIL
Else
EFlag.l = -1 ; Return value to flag a PASS
EndIf
SetErrorMode_(OldErrorMode) ; Reset the error flags
ProcedureReturn EFlag
EndProcedure
- Kwai chang caine
- Messages : 6989
- Inscription : sam. 23/sept./2006 18:32
- Localisation : Isere