Moderators Melba23 Posted February 22, 2011 Moderators Posted February 22, 2011 OldMike,I see you have done most of the work already - I am glad I checked this topic before I started this morning! Here is my mixture of code and pseudo-code to show how I would deal with the opening/closing of the various instances:expandcollapse popup; Array to hold the handles of the 4 instances - and act as flags for "already running" Global $aABBYY_Data[5] $NbrChannels = 4 While 1 ; Check each PDF/OCR folder set in turn For $i = 1 To $NbrChannels ; Code to check if PDFs are present in folder "PDF" & $i ; I presume you have code to wait until the copying process is over so that all required files are counted ; Now check to make sure we are not already processing these files by looking for a handle in the relevant element of the array If Not $aABBYY_Data[$i] Then ; We need to start an instance of ABBYY - I assume you have code to let it know that it is dealing with folder "PDF" & $i Run("C:\Program Files (x86)\ABBYY FineReader 10\FineReader.exe") Sleep(5000) ; Now get all the ABBYY GUI handles $aWinList = WinList("[CLASS:FineReader10MainWindowClass]") ; The one we have just opened is always the first in the list as they are in reverse order of creation ; Store the handle to prevent multiple running on this folder $aABBYY_Data[$i] = $aWinList[1][1] EndIf ; Code to check if the instance saving to folder "OCR" & $i has ended its task If $NumOCR = $NumPDF Then ; You will have the correct values ; Assume it has - activate that particular handle from the array WinActivate($aABBYY_Data[$i]) WinWaitActive($aABBYY_Data[$i]) ; Send the closedown keystrokes Send("{ALTDOWN}") Send("f") Send("{ALTUP}") Send("x") Send("n") ; Code here to empty/move the various files/folders ready for the next run ; Reset the handle value in the array to fire the run code above when more files are added to "PDF" & $i folder $aABBYY_Data[$i] = 0 EndIf Next WEndI hope the comments are clear anough - please ask if not. And do come back if you have trouble integrating this into your existing code - as I am doign this "blind" I cannot guarantee it will fit easily (or even work!). Although I would need to see your code to be able to assist further. 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
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