Jump to content

Recommended Posts

Posted

I have an application that uses Active X controls hosted in Internet Explorer. I created a script that mixes use of some ie.au3 functions with the Window type functions to automate a test. I notice that most of the time the ie.au3 functions get executed even before the Window functions placed in lines before them causing unpredictable results. I am basing my conclusion on the behavior I am seeing and also what shows in the tray icon when using AutoItSetOption("TrayIconDebug", 1)

Here is a code snippet:

------------------------------------------------------------------------------------------------------

ControlFocus("Test App - Microsoft Internet Explorer","","ThunderRT6TextBox4")

ControlSetText("Test App - Microsoft Internet Explorer","","ThunderRT6TextBox4", "0211381437") ; bank routing number

ControlFocus("Test App - Microsoft Internet Explorer","","ThunderRT6TextBox5")

ControlSetText("Test App - Microsoft Internet Explorer","","ThunderRT6TextBox5", "ABC123") ; account number

ControlFocus("Test App - Microsoft Internet Explorer","","ThunderRT6ComboBox6") ; account type

Send("{DOWN 2}") ;down twice to select Checking acct

ControlFocus("Test App - Microsoft Internet Explorer","","ThunderRT6ComboBox4") ; amount type

Send("{DOWN 2}") ;down twice to select Fixed Amount

ControlFocus("Test App - Microsoft Internet Explorer","","MSMaskWndClass2")

ControlSetText("Test App - Microsoft Internet Explorer","","MSMaskWndClass2", "100.00") ; deposit

ControlFocus("Test App - Microsoft Internet Explorer","","ThunderRT6ComboBox2") ; amount over type

Send("{DOWN 4}") ;down to select None

; Select radio button to save new record as of supplied date

ControlCommand("Test App - Microsoft Internet Explorer", "", "ThunderRT6OptionButton2", "Check", "")

ControlFocus("Test App - Microsoft Internet Explorer","","ThunderRT6TextBox1")

ControlSetText("Test App - Microsoft Internet Explorer","","ThunderRT6TextBox1", $effectivedate)

; Press Save

$oFrame = _IEFrameGetObjByName ($oIE, "BotFrame")

$oButton = _IEGetObjByName($oFrame, "save")

$oButton.click

Sleep(2000)

; you should receive the DirectDeposit message Bank Routing No. must be 9 digits. Please reenter.

WinWait("DirectDeposit")

ControlClick("DirectDeposit","","Button1")

----------------------------------------------------------------------------------------

For example the $oButton.click has executed but the tray icon is showing Send("{DOWN 4}") as if it still needs to execute.

Has anyone experienced these kind of synchronization problems?

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...