DXRW4E Posted August 12, 2013 Author Posted August 12, 2013 (edited) DXRW4E It is other task. The task of checking the validity of the path. And it isn't carried out fully. If it isn't carried out, and the meaning of it dubious. I believe that we are not well understood ;@DesktopDir & "\FileExists.au3" = "C:\Users\\\DXRW4E///\\Desktop\\\\\\FileExists.au3" If FileExists("C:\Users\\\DXRW4E///\\Desktop\\\\\\FileExists.au3") Then MsgBox(4096, "C:\Users\\\DXRW4E///\\Desktop\\\\\\FileExists.au3", "Exists") Else MsgBox(4096, "C:\Users\\\DXRW4E///\\Desktop\\\\\\FileExists.au3", "Does NOT exists") EndIf this is a valid path ehhhhhhhh , the _PathSplit() only aesthetically repair, so _PathSplit() is in line with all other AutoIt native function #include <Array.au3> #include <File.au3> Local $sDrive = "", $sDir = "", $sFilename = "", $sExtension = "" Local $aPathSplit, $sPath = "C:\Users\\\DXRW4E///\\Desktop\\\\\\FileExists.au3" $aPathSplit = _PathSplit($sPath, $sDrive, $sDir, $sFilename, $sExtension) ; 3.3.9.16 _ArrayDisplay($aPathSplit) ConsoleWrite('$sDrive = ' & $sDrive & @LF & _ '$sDir = ' & $sDir & @LF & _ '$sDir = ' & $sFilename & @LF & _ '$sExtension = ' & $sExtension & @LF & @LF) ;~ in $aPathSplit Return ;~ [0]|C:\Users\\\DXRW4E///\\Desktop\\\\\\FileExists.au3 ;~ [1]|C: ;~ [2]|\Users\\\DXRW4E///\\Desktop\\\\\\ ;~ [3]|FileExists ;~ [4]|.au3 ;~ >Running:(3.3.9.16):C:\Program Files (x86)\AutoIt3\Beta\autoit3.exe "C:\Users\DXRW4E\Desktop\New AutoIt v3 Script (Beta).au3" ;~ --> Press Ctrl+Alt+F5 to Restart or Ctrl+Break to Stop ;~ $sDrive = C: ;~ $sDir = \Users\DXRW4E\Desktop\ ;~ $sDir = FileExists ;~ $sExtension = .au3 but fixes this invalid Path (as mentioned is a crazy thing, will not have to ever happen), is only a precaution nothing else #include <Array.au3> #include <File.au3> Local $sDrive = "", $sDir = "", $sFilename = "", $sExtension = "" Local $aPathSplit, $sPath = "C: \ Users \/\ DXRW4E //\\ Desktop \\\ FileExists.au3" $aPathSplit = _PathSplit($sPath, $sDrive, $sDir, $sFilename, $sExtension) ; 3.3.9.16 _ArrayDisplay($aPathSplit) ConsoleWrite('$sDrive = ' & $sDrive & @LF & _ '$sDir = ' & $sDir & @LF & _ '$sDir = ' & $sFilename & @LF & _ '$sExtension = ' & $sExtension & @LF & @LF) ;~ in $aPathSplit Return ;~ [0]|C: \ Users \\ DXRW4E //\\ Desktop \\\ FileExists.au3 ;~ [1]|C: ;~ [2]| \ Users \/\ DXRW4E //\\ Desktop \\\ ;~ [3]|FileExists ;~ [4]|.au3 ;~ >Running:(3.3.9.16):C:\Program Files (x86)\AutoIt3\Beta\autoit3.exe "C:\Users\DXRW4E\Desktop\New AutoIt v3 Script (Beta).au3" ;~ --> Press Ctrl+Alt+F5 to Restart or Ctrl+Break to Stop ;~ $sDrive = C: ;~ $sDir = \Users\DXRW4E\Desktop\ ;~ $sDir = FileExists ;~ $sExtension = .au3 Ciao. Edited August 12, 2013 by DXRW4E
AZJIO Posted August 12, 2013 Posted August 12, 2013 (edited) Spaces may be near the ""$sPath = @ScriptDir & '\ file.txt' $hFile = FileOpen($sPath, 2) If $hFile = -1 Then Exit MsgBox(0, 'error', 'error') FileWrite($hFile, '') FileClose($hFile) If FileExists($sPath) Then MsgBox(0, 'Yes', $sPath)Then you should check out the valid characters$sText=StringRegExp($sText, '(?i)^[a-z]:(?:[\\/][^:*?"<>|]+)[\\/]?$') Edited August 12, 2013 by AZJIO My other projects or all
DXRW4E Posted August 12, 2013 Author Posted August 12, 2013 (edited) Hi AZJIO, is a crazy thing & with it should never happen, it means that that's not a responsibility of the _PathSplit if an is Path is invalid, as said to be 100% sure (for the path that is valid or not valid) is better to use the however is only _PathSplit() everything else about Path (how to say in an Microsoft official way) is in AutoIt help WinApiEx ShellPath Management (#include <WinAPIShPath.au3>.) which are those that are 100% compatible with windows Ciao. Edited August 12, 2013 by DXRW4E
guinness Posted August 12, 2013 Posted August 12, 2013 Unfortunately we can't always protect users from themselves. UDF List: _AdapterConnections() • _AlwaysRun() • _AppMon() • _AppMonEx() • _ArrayFilter/_ArrayReduce • _BinaryBin() • _CheckMsgBox() • _CmdLineRaw() • _ContextMenu() • _ConvertLHWebColor()/_ConvertSHWebColor() • _DesktopDimensions() • _DisplayPassword() • _DotNet_Load()/_DotNet_Unload() • _Fibonacci() • _FileCompare() • _FileCompareContents() • _FileNameByHandle() • _FilePrefix/SRE() • _FindInFile() • _GetBackgroundColor()/_SetBackgroundColor() • _GetConrolID() • _GetCtrlClass() • _GetDirectoryFormat() • _GetDriveMediaType() • _GetFilename()/_GetFilenameExt() • _GetHardwareID() • _GetIP() • _GetIP_Country() • _GetOSLanguage() • _GetSavedSource() • _GetStringSize() • _GetSystemPaths() • _GetURLImage() • _GIFImage() • _GoogleWeather() • _GUICtrlCreateGroup() • _GUICtrlListBox_CreateArray() • _GUICtrlListView_CreateArray() • _GUICtrlListView_SaveCSV() • _GUICtrlListView_SaveHTML() • _GUICtrlListView_SaveTxt() • _GUICtrlListView_SaveXML() • _GUICtrlMenu_Recent() • _GUICtrlMenu_SetItemImage() • _GUICtrlTreeView_CreateArray() • _GUIDisable() • _GUIImageList_SetIconFromHandle() • _GUIRegisterMsg() • _GUISetIcon() • _Icon_Clear()/_Icon_Set() • _IdleTime() • _InetGet() • _InetGetGUI() • _InetGetProgress() • _IPDetails() • _IsFileOlder() • _IsGUID() • _IsHex() • _IsPalindrome() • _IsRegKey() • _IsStringRegExp() • _IsSystemDrive() • _IsUPX() • _IsValidType() • _IsWebColor() • _Language() • _Log() • _MicrosoftInternetConnectivity() • _MSDNDataType() • _PathFull/GetRelative/Split() • _PathSplitEx() • _PrintFromArray() • _ProgressSetMarquee() • _ReDim() • _RockPaperScissors()/_RockPaperScissorsLizardSpock() • _ScrollingCredits • _SelfDelete() • _SelfRename() • _SelfUpdate() • _SendTo() • _ShellAll() • _ShellFile() • _ShellFolder() • _SingletonHWID() • _SingletonPID() • _Startup() • _StringCompact() • _StringIsValid() • _StringRegExpMetaCharacters() • _StringReplaceWholeWord() • _StringStripChars() • _Temperature() • _TrialPeriod() • _UKToUSDate()/_USToUKDate() • _WinAPI_Create_CTL_CODE() • _WinAPI_CreateGUID() • _WMIDateStringToDate()/_DateToWMIDateString() • Au3 script parsing • AutoIt Search • AutoIt3 Portable • AutoIt3WrapperToPragma • AutoItWinGetTitle()/AutoItWinSetTitle() • Coding • DirToHTML5 • FileInstallr • FileReadLastChars() • GeoIP database • GUI - Only Close Button • GUI Examples • GUICtrlDeleteImage() • GUICtrlGetBkColor() • GUICtrlGetStyle() • GUIEvents • GUIGetBkColor() • Int_Parse() & Int_TryParse() • IsISBN() • LockFile() • Mapping CtrlIDs • OOP in AutoIt • ParseHeadersToSciTE() • PasswordValid • PasteBin • Posts Per Day • PreExpand • Protect Globals • Queue() • Resource Update • ResourcesEx • SciTE Jump • Settings INI • SHELLHOOK • Shunting-Yard • Signature Creator • Stack() • Stopwatch() • StringAddLF()/StringStripLF() • StringEOLToCRLF() • VSCROLL • WM_COPYDATA • More Examples... Updated: 22/04/2018
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now