StOngeCompany Posted May 17, 2012 Posted May 17, 2012 Hi AutoIT Forums, I'm trying to write a script that will scan a directory for .accdb files and zip them. Here is what I have: $directory = InputBox ("Directory", "Please enter the directory.") $scan = FileFindFirstFile($directory & "\" & "*.accdb") If $scan = -1 Then MsgBox(0, "Error", "There are no databases in that directory.") Exit EndIf While 1 Local $file = FileFindNextFile($scan) If @error Then ExitLoop RunWait('Winzip32.exe -a "'$directory & "\" & $file'" "'$directory & "\" & $file'"') WEnd FileClose($scan) The script is able to locate all of the .accdb files in a given directory, I'm just stuck on how I can get the RunWait command to recognize variables. For example, this code works: RunWait('Winzip32.exe -a "C:\Users\dberndt\Desktop\Test\Database1.zip" "C:\Users\dberndt\Desktop\Test\Database1.accdb"') But this does not: RunWait('Winzip32.exe -a "'$directory & "\" & $file'" "'$directory & "\" & $file'"') Any help would be very much appreciated. Thank you in advance for your time and kindness.
water Posted May 17, 2012 Posted May 17, 2012 Give this a try:RunWait('Winzip32.exe -a "' & $directory & '' & $file & '" "' & $directory & '' & $file & '"') My UDFs and Tutorials: Spoiler UDFs: Active Directory (NEW 2024-07-28 - Version 1.6.3.0) - Download - General Help & Support - Example Scripts - Wiki ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts OutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - Wiki OutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - Download Outlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - Wiki PowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - Wiki Task Scheduler (2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki Standard UDFs: Excel - Example Scripts - Wiki Word - Wiki Tutorials: ADO - Wiki WebDriver - Wiki
StOngeCompany Posted May 17, 2012 Author Posted May 17, 2012 Thank you very much, water, it appears that syntax is correct. However, I have one more hurdle to jump. When I run the script, I get an error from WinZip: Cannot open file: it does not appear to be a valid archive. I think I need to differentiate between the .zip and the .accdb. I tried the following code with no luck: RunWait('Winzip32.exe -a "' & $directory & '' & $file & '.accdb' '" "' & $directory & '' & $file & '.zip' '"') If anyone has any suggestions, I'd be very grateful.
water Posted May 17, 2012 Posted May 17, 2012 FielFindNextFile returns a filename including extension e.g. test.accdb. You need to strip off the filename and then can add ".zip" to it. My UDFs and Tutorials: Spoiler UDFs: Active Directory (NEW 2024-07-28 - Version 1.6.3.0) - Download - General Help & Support - Example Scripts - Wiki ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts OutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - Wiki OutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - Download Outlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - Wiki PowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - Wiki Task Scheduler (2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki Standard UDFs: Excel - Example Scripts - Wiki Word - Wiki Tutorials: ADO - Wiki WebDriver - Wiki
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