iisjman07 0 Posted January 22, 2011 Hi, I'm trying to automate ESET's online virus scanner application. I've created the following code: Run("health\esetsmartinstaller_enu.exe") WinWaitActive("Terms of use") ControlClick("Terms of use", "",107) ControlClick("Terms of use", "Start",105) Sleep(1000) WinWaitActive("ESET Online Scanner") Sleep(1000) ControlClick("ESET Online Scanner", "Start",321) While 1=1 If WinActive("ESET Online Scanner", "Threats found and cleaned!") Then ControlClick("ESET Online Scanner", "Finish", 220) ProcessClose("OnlineCmdLineScanner.exe") ProcessClose("OnlineScannerApp.exe") EndIf WEnd ; If WinActive("ESET Online Scanner", "No threats found.") Then ; ControlClick("ESET Online Scanner", "Finish", 220) ; ProcessClose("OnlineCmdLineScanner.exe") ; ProcessClose("OnlineScannerApp.exe") ; EndIf MsgBox(0, "Msg", "Message") this starts the program scanning, but I'm having trouble with what happens after the scan. The window will show one of two results: a window saying 'threats found and cleaned' or one that says 'no threats found'. I've used a loop which works but I need it to work in the event of either window, not just one. Any help please? Share this post Link to post Share on other sites
Melba23 3,455 Posted January 22, 2011 iisjman07,Welcome to the AutoIt forum. Use an ElseIf structure like this to look for either result: Run("health\esetsmartinstaller_enu.exe") WinWaitActive("Terms of use") ControlClick("Terms of use", "",107) ControlClick("Terms of use", "Start",105) Sleep(1000) WinWaitActive("ESET Online Scanner") Sleep(1000) ControlClick("ESET Online Scanner", "Start",321) While 1 If WinActive("ESET Online Scanner", "Threats found and cleaned!") Then ControlClick("ESET Online Scanner", "Finish", 220) ProcessClose("OnlineCmdLineScanner.exe") ProcessClose("OnlineScannerApp.exe") $sMsg = "Cleaned" ExitLoop ElseIf WinActive("ESET Online Scanner", "No threats found.") Then ControlClick("ESET Online Scanner", "Finish", 220) ProcessClose("OnlineCmdLineScanner.exe") ProcessClose("OnlineScannerApp.exe") $sMsg = "Nothing Found" ExitLoop EndIf WEnd MsgBox(0, "Msg", $sMsg)M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area Share this post Link to post Share on other sites