Search the Community
Showing results for tags 'open files'.
-
Automated systems are using FTP to transfer very large 7z files over a WAN into a folder on your server. You would like to test each file (7z -t <filename>) as they are completed during the night. How will you know that the file is finished copying and free to be tested? Here's what I've been trying... +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ #include <Constants.au3> #Include <File.au3> #Include <Array.au3> #RequireAdmin Global $FileGetList1[1000],$FileGetList2[1000] FileChangeDir("H:\CIS-NG") While 1 FileDelete(@TempDir&"\fileget1.txt") RunWait(@ComSpec & " /c " & "dir H:\CIS-NG\*.* /b /OD >"&@TempDir&"\fileget1.txt",@TempDir,@SW_HIDE) _FileReadToArray(@TempDir&"\fileget1.txt",$FileGetList1) For $x = 1 to $FileGetList1[0] Local $hFile = FileOpen("H:\CIS-NG\"&$FileGetList1[$x], 2) If $hFile = -1 Then ContinueLoop Else FileClose("H:\CIS-NG\"&$FileGetList1[$x]) FileFlush("H:\CIS-NG\"&$FileGetList1[$x]) RunWait(@ComSpec & " /K " & "C:\Progra~2\7-zip\7z.exe t H:\CIS-NG\"&$FileGetList1[$x]&" -pPassword",@TempDir,@SW_MAXIMIZE) If @error Then FileDelete("H:\CIS-NG"&$FileGetList1[$x]) FileDelete("H:\Backups\7z.txt") FileWrite("H:\Backups\7z.txt","The readability of 7z, "&$FileGetList1[$x]&" has failed. The file has been deleted.") RunWait(@ComSpec & " /c " & "c:\backup\blat.exe H:\Backups\7z.txt -to backups@domain.com -server inet1.domain.com -subject "&'"'&"FAILED TEST OF 7z, "&$FileGetList1[$x]&" -f 7zTest@domain.com") Else FileMove("H:\CIS-NG"&$FileGetList1[$x],"H:\2BBURNED") FileDelete("H:\Backups\7z.txt") FileWrite("H:\Backups\7z.txt","The readability of 7z, "&$FileGetList1[$x]&" has passed.") RunWait(@ComSpec & " /c " & "c:\backup\blat.exe H:\Backups\7z.txt -to backups@domain.com -server inet1.domain.com -subject "&'"'&"PASSED TEST OF 7z, "&$FileGetList1[$x]&" -f 7zTest@domain.com") EndIf EndIf Next WEnd +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Paul