Jump to content
Sign in to follow this  
Neo

Clicking on OK in a IE prompt opened in a GUI

Recommended Posts

Neo

Hello everyone,

After having tried numerous times with several ways, I now turn to you for help dear autoiters.

I have a predefined window that opens a website in which I have to select somethings and then Submit it.

Whereas this was working when I was using Internet Explorer, now with the GUI when I submit a dialog box informs me that the changes have been saved. I want to click ok or exit that dialogbox by Send("{ESC}") but it does not work no matter what I tried the script seems to hang. If I use WinWait or WinActivate commands they don't seem to make the dialogbox active and even when I just try to close the window by sending an ("{ESC}") it doesn't close that window.

Please help as I have run out of ideas and am out of time <_< !

CODE
$oIE = _IECreateEmbedded ()

GUICreate("Automated Site Allocation Tool", 780, 600, (@DesktopWidth - 780) / 2, (@DesktopHeight - 600) / 2, $WS_VISIBLE + $WS_CLIPSIBLINGS)

$GUIActiveX = GUICtrlCreateObj($oIE, 4, 5, 765, 565)

GUISetState() ;Show GUI

;Later in the code

MouseClick("left",700,553,1,8) ;SUBMIT

WinWait("Microsoft Internet Explorer","")

If Not WinActive("Microsoft Internet Explorer","") Then WinActivate("Microsoft Internet Explorer","")

WinWaitActive("Microsoft Internet Explorer","")

Send("{ESC}")

MouseClick("left",730,553,1,8) ;RETURN

Thank you! Thank you ! Thank you!

Edited by Neo

Share this post


Link to post
Share on other sites
DaleHohm

See the second example for _IEAction

Dale


Free Internet Tools: DebugBar, AutoIt IE Builder, HTTP UDF, MODIV2, IE Developer Toolbar, IEDocMon, Fiddler, HTML Validator, WGet, curl

MSDN docs: InternetExplorer Object, Document Object, Overviews and Tutorials, DHTML Objects, DHTML Events, WinHttpRequest, XmlHttpRequest, Cross-Frame Scripting, Office object model

Automate input type=file (Related)

Alternative to _IECreateEmbedded? better: _IECreatePseudoEmbedded  Better Better?

IE.au3 issues with Vista - Workarounds

SciTe Debug mode - it's magic: #AutoIt3Wrapper_run_debug_mode=Y Doesn't work needs to be ripped out of the troubleshooting lexicon. It means that what you tried did not produce the results you expected. It begs the questions 1) what did you try?, 2) what did you expect? and 3) what happened instead?

Reproducer: a small (the smallest?) piece of stand-alone code that demonstrates your trouble

Share this post


Link to post
Share on other sites
Neo

See the second example for _IEAction

Dale

If you mean _IEAction($oIE, "visible") I am trying it now and will let you know what happens. Thank you very much in advance, I am so stressed.

Share this post


Link to post
Share on other sites
DaleHohm

; *******************************************************

; Example 2 - Same as Example 1, except instead of using click, give the element focus

; and then use ControlSend to send Enter. Use this technique when the

; browser-side scripting associated with a click action prevents control

; from being automatically returned to your code.

; *******************************************************


Free Internet Tools: DebugBar, AutoIt IE Builder, HTTP UDF, MODIV2, IE Developer Toolbar, IEDocMon, Fiddler, HTML Validator, WGet, curl

MSDN docs: InternetExplorer Object, Document Object, Overviews and Tutorials, DHTML Objects, DHTML Events, WinHttpRequest, XmlHttpRequest, Cross-Frame Scripting, Office object model

Automate input type=file (Related)

Alternative to _IECreateEmbedded? better: _IECreatePseudoEmbedded  Better Better?

IE.au3 issues with Vista - Workarounds

SciTe Debug mode - it's magic: #AutoIt3Wrapper_run_debug_mode=Y Doesn't work needs to be ripped out of the troubleshooting lexicon. It means that what you tried did not produce the results you expected. It begs the questions 1) what did you try?, 2) what did you expect? and 3) what happened instead?

Reproducer: a small (the smallest?) piece of stand-alone code that demonstrates your trouble

Share this post


Link to post
Share on other sites
Neo

; *******************************************************

; Example 2 - Same as Example 1, except instead of using click, give the element focus

; and then use ControlSend to send Enter. Use this technique when the

; browser-side scripting associated with a click action prevents control

; from being automatically returned to your code.

; *******************************************************

I am really new in this and have trouble figuring out how to make it work.

I have tried using this:

MouseClick("left",680,553,1,8)  ;SUBMIT
ControlSend("Microsoft Internet Explorer","","","{ENTER}")
MouseClick("left",730,553,1,8)  ;RETURNoÝ÷ ٩ݶ¬jëh×6MouseClick("left",680,553,1,8)    ;SUBMIT
WinWait("Microsoft Internet Explorer","")
If Not WinActive("Microsoft Internet Explorer","") Then WinActivate("Microsoft Internet Explorer","")
WinWaitActive("Microsoft Internet Explorer","")
ControlSend("Microsoft Internet Explorer","","","{ENTER}")
MouseClick("left",730,553,1,8)  ;RETURN

But neither one worked. I really appreciate you trying to help me but can you help me a little more ? :">

Thank you again and again.

Edited by Neo

Share this post


Link to post
Share on other sites
DaleHohm

I thought I knew what was happening to you, but am now not so sure.

You'll need to provide more code and more information. Can you create a reproducer by supplying HTML or and internet site and enough stand-alone code to demonstrate the issue?

Dale


Free Internet Tools: DebugBar, AutoIt IE Builder, HTTP UDF, MODIV2, IE Developer Toolbar, IEDocMon, Fiddler, HTML Validator, WGet, curl

MSDN docs: InternetExplorer Object, Document Object, Overviews and Tutorials, DHTML Objects, DHTML Events, WinHttpRequest, XmlHttpRequest, Cross-Frame Scripting, Office object model

Automate input type=file (Related)

Alternative to _IECreateEmbedded? better: _IECreatePseudoEmbedded  Better Better?

IE.au3 issues with Vista - Workarounds

SciTe Debug mode - it's magic: #AutoIt3Wrapper_run_debug_mode=Y Doesn't work needs to be ripped out of the troubleshooting lexicon. It means that what you tried did not produce the results you expected. It begs the questions 1) what did you try?, 2) what did you expect? and 3) what happened instead?

Reproducer: a small (the smallest?) piece of stand-alone code that demonstrates your trouble

Share this post


Link to post
Share on other sites
Neo

This is how the script window looks like and the dialog box that is opened as modal.

Posted Image

When I used the AutoIt Window Info it gave me ID 2 for the window that is opened in front but for the life of me I can't seem to do anything after that window is active :S.

All my code is below:

#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_icon=Rete.ico
#AutoIt3Wrapper_outfile=AllocateSite.exe
#AutoIt3Wrapper_Allow_Decompile=n
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
#cs ----------------------------------------------------------------------------

 Author: Neo
 
 
 Script Function:
    Script to automatically allocate the sites for ??????'s InForm studies.

#ce ----------------------------------------------------------------------------
#include <GUIConstants.au3>
#include <IE.au3>

_IEErrorHandlerRegister ()

Global $Paused
HotKeySet("{PAUSE}", "TogglePause")
HotKeySet("^q", "Terminate")

Opt("WinWaitDelay",100)
Opt("WinTitleMatchMode",4)
Opt("MouseCoordMode",2)

Do 
    $trial = InputBox("Automated InForm Site Allocation", "Please enter the trial URL (i.e. https://www.??????????.com/????)","","",350,120)
    If @error = 1 Then
        Exit
    EndIf   
    If $trial = "" Then
        MsgBox(048,"Error!", "The URL cannot be empty")
    Endif
Until $trial <> ""
Do 
    $iTotal = InputBox("Automated InForm Site Allocation", "Please enter the number of rows in the excel spreadsheet","","",350,120)
    If @error = 1 Then
        Exit
    EndIf
    If $iTotal = "" Then
        MsgBox(048,"Error!", "Please insert a number higher than 1")
    Endif
Until $iTotal <> ""
Do
    $username = InputBox("Automated InForm Site Allocation", "Please enter your username (Manager)","","",350,120)
    If @error = 1 Then
        Exit
    EndIf
    If $username = "" Then
        MsgBox(048,"Error!", "The username cannot be empty")
    Endif
Until $username <> ""
Do
    $password = InputBox("Automated InForm Site Allocation", "Please enter your password for " & $username,"","",350,120)
    If @error = 1 Then
        Exit
    EndIf
    If $password = "" Then
        MsgBox(048,"Error!", "The password cannot be empty")
    ElseIf $password = "Q" Then
        Exit 0
    Endif
Until $password <> ""

$oIE = _IECreateEmbedded ()
GUICreate("InForm Automated Site Allocation Tool 2007", 780, 600, (@DesktopWidth - 780) / 2, (@DesktopHeight - 600) / 2, $WS_VISIBLE + $WS_CLIPSIBLINGS)
$GUIActiveX = GUICtrlCreateObj($oIE, 4, 5, 765, 565)

GUISetState()       ;Show GUI

_IENavigate ($oIE, $trial)

$oForm = _IEFormGetObjByName($oIE, "frmLogin")
$oUser = _IEFormElementGetObjByName($oForm, "pwdpfUser")
$oPass = _IEFormElementGetObjByName($oForm, "pwdpfPassword")
_IEFormElementSetValue($oUser, $username)
_IEFormElementSetValue($oPass, $password)
_IEFormSubmit($oForm)
Send("{TAB 13}{ENTER}")

$i = 0
MsgBox(048,"InFormation","Please access the list of users and then display the list of all users and then Sort them by Personnel Type (click once) and finally click OK to continue")
Do
WinWait("Microsoft Excel -","")
If Not WinActive("Microsoft Excel -","") Then WinActivate("Microsoft Excel -","")
WinWaitActive("Microsoft Excel -","")
    Send("{DOWN}")
    Sleep(150)
    Send("^c")
WinWait("InForm Automated Site Allocation Tool 2007","")
If Not WinActive("InForm Automated Site Allocation Tool 2007","") Then WinActivate("InForm Automated Site Allocation Tool 2007","")
WinWaitActive("InForm Automated Site Allocation Tool 2007","")
Do
    $busybrowser = _IEPropertyGet($oIE, "busy")
If $busybrowser = True Then
    Sleep(25)
Else
    MouseClickDrag("left",735,110,200,110,15)
    Sleep(150)
    Send("^f")
    WinWait("Find")
    If Not WinActive("Find") Then WinActivate("Find")
    WinWaitActive("Find")
    Sleep(500)
    Send("^v")
    Send("{ENTER}")
    Sleep(500)
WinWait("InForm Automated Site Allocation Tool 2007","")
If Not WinActive("InForm Automated Site Allocation Tool 2007","") Then WinActivate("InForm Automated Site Allocation Tool 2007","")
WinWaitActive("InForm Automated Site Allocation Tool 2007","")
    MouseMove(687,530,15)
    MouseDown("left")
    MouseUp("left")
EndIf
Until $busybrowser = False

Sleep(2000)
;~ SITE ALLOCATION STARTS HERE
    Send("{CTRLDOWN}{CTRLUP}{SHIFTDOWN}{SHIFTUP}{ALTDOWN}{ALTUP}")
    MouseClick("left",490,160,1,10)
    MouseClickDrag("left",735,175,735,295,15)
    Send("{SHIFTDOWN}")
    MouseClick("left",490,290,1,10)
    Send("{SHIFTUP}")
    MouseClickDrag("left",735,271,735,165,15)
    Send("{CTRLDOWN}")
    MouseClick("left",490,258,1,15)
    Send("{CTRLUP}")

    MouseClick("left",680,553,1,8)  ;SUBMIT
    WinWait("Microsoft Internet Explorer","")
    If Not WinActive("Microsoft Internet Explorer","") Then WinActivate("Microsoft Internet Explorer","")
    WinWaitActive("Microsoft Internet Explorer","")
    ControlSend("Microsoft Internet Explorer","",2,"{ENTER}")
    MouseClick("left",730,553,1,8)  ;RETURN
    $i = $i + 1
Until $i = $iTotal - 1

Func TogglePause()
    $Paused = NOT $Paused
    While $Paused
        Sleep(100)
        ToolTip('The Tool has been paused, press Pause again to resume',0,0)
    WEnd
    ToolTip("")
EndFunc

Func Terminate()
    Exit 0
EndFunc

; Waiting for user to close the window
While 1
    $msg = GUIGetMsg()
    Select
        Case $msg = $GUI_EVENT_CLOSE
            ExitLoop
    EndSelect
WEnd

GUIDelete()

Exit

Thank you

Edited by Neo

Share this post


Link to post
Share on other sites
DaleHohm

Yikes... that style of coding this will make your code very fragile (any UI changes on the webpage will break your tabs and mouseclicks). There are better ways of approaching this by using DOM elements directly as you do with your _IEForm* commands. But to focus on your specific issue now...

You need to figure out whether your script is still active or whether it has stalled waiting for the dialog box to be dismissed. I would put some debug code in the script doing ConsoleWrite's to let me know what was happening. Alternately, you can add this line to the top of your script to get a full echo of executed lines in the console: #AutoIt3Wrapper_run_debug_mode=Y

How you proceed from here will depend on the answer to that question. If the script is stalled, you'll need to use a technique like Example 2 of _IEAction. If it is not, then it is simply a matter of attaching to the dialog and dismissing it... There are two types of dialogs that can appear in an instance like this - one is HTML based and the other is a standard Win32 dialog. When you used AutoIt Window Info, what was the Class of the dialog?

Dale


Free Internet Tools: DebugBar, AutoIt IE Builder, HTTP UDF, MODIV2, IE Developer Toolbar, IEDocMon, Fiddler, HTML Validator, WGet, curl

MSDN docs: InternetExplorer Object, Document Object, Overviews and Tutorials, DHTML Objects, DHTML Events, WinHttpRequest, XmlHttpRequest, Cross-Frame Scripting, Office object model

Automate input type=file (Related)

Alternative to _IECreateEmbedded? better: _IECreatePseudoEmbedded  Better Better?

IE.au3 issues with Vista - Workarounds

SciTe Debug mode - it's magic: #AutoIt3Wrapper_run_debug_mode=Y Doesn't work needs to be ripped out of the troubleshooting lexicon. It means that what you tried did not produce the results you expected. It begs the questions 1) what did you try?, 2) what did you expect? and 3) what happened instead?

Reproducer: a small (the smallest?) piece of stand-alone code that demonstrates your trouble

Share this post


Link to post
Share on other sites
Neo

Yikes... that style of coding this will make your code very fragile (any UI changes on the webpage will break your tabs and mouseclicks). There are better ways of approaching this by using DOM elements directly as you do with your _IEForm* commands. But to focus on your specific issue now...

You need to figure out whether your script is still active or whether it has stalled waiting for the dialog box to be dismissed. I would put some debug code in the script doing ConsoleWrite's to let me know what was happening. Alternately, you can add this line to the top of your script to get a full echo of executed lines in the console: #AutoIt3Wrapper_run_debug_mode=Y

How you proceed from here will depend on the answer to that question. If the script is stalled, you'll need to use a technique like Example 2 of _IEAction. If it is not, then it is simply a matter of attaching to the dialog and dismissing it... There are two types of dialogs that can appear in an instance like this - one is HTML based and the other is a standard Win32 dialog. When you used AutoIt Window Info, what was the Class of the dialog?

Dale

Unfortunately, the script seems to be hanging when I use #AutoIt3Wrapper_run_debug_mode=Y. The class of the dialog window is #32770. There are lots of web controls like Internet Explorer_TridentLstBox that I also tried to access the control directly to select multiple items by taking values from an excel spreadsheet but as I am really new I have very hard time working with controls. It would be awesome if you could help me with making the script Yikes-proof after we resolve this issue.

Thank you.

Edited by Neo

Share this post


Link to post
Share on other sites
DaleHohm

Can you be more specific about what this means?

Unfortunately, the script seems to be hanging when I use #AutoIt3Wrapper_run_debug_mode=Y.


Free Internet Tools: DebugBar, AutoIt IE Builder, HTTP UDF, MODIV2, IE Developer Toolbar, IEDocMon, Fiddler, HTML Validator, WGet, curl

MSDN docs: InternetExplorer Object, Document Object, Overviews and Tutorials, DHTML Objects, DHTML Events, WinHttpRequest, XmlHttpRequest, Cross-Frame Scripting, Office object model

Automate input type=file (Related)

Alternative to _IECreateEmbedded? better: _IECreatePseudoEmbedded  Better Better?

IE.au3 issues with Vista - Workarounds

SciTe Debug mode - it's magic: #AutoIt3Wrapper_run_debug_mode=Y Doesn't work needs to be ripped out of the troubleshooting lexicon. It means that what you tried did not produce the results you expected. It begs the questions 1) what did you try?, 2) what did you expect? and 3) what happened instead?

Reproducer: a small (the smallest?) piece of stand-alone code that demonstrates your trouble

Share this post


Link to post
Share on other sites
Neo

Can you be more specific about what this means?

The script executes and I see the steps in the console but it hangs just before executing the part to close the dialog window.

Share this post


Link to post
Share on other sites
DaleHohm

This exercise was not to fix the problem, but rather to understand what is really happening.

The script executes and I see the steps in the console but it hangs just before executing the part to close the dialog window.

And what line of code would that be?

Dale


Free Internet Tools: DebugBar, AutoIt IE Builder, HTTP UDF, MODIV2, IE Developer Toolbar, IEDocMon, Fiddler, HTML Validator, WGet, curl

MSDN docs: InternetExplorer Object, Document Object, Overviews and Tutorials, DHTML Objects, DHTML Events, WinHttpRequest, XmlHttpRequest, Cross-Frame Scripting, Office object model

Automate input type=file (Related)

Alternative to _IECreateEmbedded? better: _IECreatePseudoEmbedded  Better Better?

IE.au3 issues with Vista - Workarounds

SciTe Debug mode - it's magic: #AutoIt3Wrapper_run_debug_mode=Y Doesn't work needs to be ripped out of the troubleshooting lexicon. It means that what you tried did not produce the results you expected. It begs the questions 1) what did you try?, 2) what did you expect? and 3) what happened instead?

Reproducer: a small (the smallest?) piece of stand-alone code that demonstrates your trouble

Share this post


Link to post
Share on other sites
Neo

This exercise was not to fix the problem, but rather to understand what is really happening.

And what line of code would that be?

Dale

These lines do not get executed.

MouseClick("left",680,553,1,8)  ;SUBMIT
    WinWait("Microsoft Internet Explorer","")
    If Not WinActive("Microsoft Internet Explorer","") Then WinActivate("Microsoft Internet Explorer","")
    WinWaitActive("Microsoft Internet Explorer","")
    ControlSend("Microsoft Internet Explorer","",2,"{ENTER}")

Again really thank you for helping me with this. I am at work and trying to figure it out but just seem to have hit a wall.

Share this post


Link to post
Share on other sites
DaleHohm

So it executes this block of code and then stalls?

;~ SITE ALLOCATION STARTS HERE
    Send("{CTRLDOWN}{CTRLUP}{SHIFTDOWN}{SHIFTUP}{ALTDOWN}{ALTUP}")
    MouseClick("left",490,160,1,10)
    MouseClickDrag("left",735,175,735,295,15)
    Send("{SHIFTDOWN}")
    MouseClick("left",490,290,1,10)
    Send("{SHIFTUP}")
    MouseClickDrag("left",735,271,735,165,15)
    Send("{CTRLDOWN}")
    MouseClick("left",490,258,1,15)
    Send("{CTRLUP}")

What is being done in that code section?

Dale

Edited by DaleHohm

Free Internet Tools: DebugBar, AutoIt IE Builder, HTTP UDF, MODIV2, IE Developer Toolbar, IEDocMon, Fiddler, HTML Validator, WGet, curl

MSDN docs: InternetExplorer Object, Document Object, Overviews and Tutorials, DHTML Objects, DHTML Events, WinHttpRequest, XmlHttpRequest, Cross-Frame Scripting, Office object model

Automate input type=file (Related)

Alternative to _IECreateEmbedded? better: _IECreatePseudoEmbedded  Better Better?

IE.au3 issues with Vista - Workarounds

SciTe Debug mode - it's magic: #AutoIt3Wrapper_run_debug_mode=Y Doesn't work needs to be ripped out of the troubleshooting lexicon. It means that what you tried did not produce the results you expected. It begs the questions 1) what did you try?, 2) what did you expect? and 3) what happened instead?

Reproducer: a small (the smallest?) piece of stand-alone code that demonstrates your trouble

Share this post


Link to post
Share on other sites
Neo

So it executes this block of code and then stalls?

;~ SITE ALLOCATION STARTS HERE
    Send("{CTRLDOWN}{CTRLUP}{SHIFTDOWN}{SHIFTUP}{ALTDOWN}{ALTUP}")
    MouseClick("left",490,160,1,10)
    MouseClickDrag("left",735,175,735,295,15)
    Send("{SHIFTDOWN}")
    MouseClick("left",490,290,1,10)
    Send("{SHIFTUP}")
    MouseClickDrag("left",735,271,735,165,15)
    Send("{CTRLDOWN}")
    MouseClick("left",490,258,1,15)
    Send("{CTRLUP}")

What is being done in that code section?

Dale

Sites are allocated from the Internet Explorer Trident List Box as seen in number 3 in the screen shot. I send: Send("{CTRLDOWN}{CTRLUP}{SHIFTDOWN}{SHIFTUP}{ALTDOWN}{ALTUP}") to remove any stuck keys (like CTRL or ALT which happens quite often).

Share this post


Link to post
Share on other sites
DaleHohm

Is that a "yes"? Is Send("{CTRLUP}") the last line that gets executed? If so, that is very odd. What does the MouseClick just prior to that do - what is it clicking on?


Free Internet Tools: DebugBar, AutoIt IE Builder, HTTP UDF, MODIV2, IE Developer Toolbar, IEDocMon, Fiddler, HTML Validator, WGet, curl

MSDN docs: InternetExplorer Object, Document Object, Overviews and Tutorials, DHTML Objects, DHTML Events, WinHttpRequest, XmlHttpRequest, Cross-Frame Scripting, Office object model

Automate input type=file (Related)

Alternative to _IECreateEmbedded? better: _IECreatePseudoEmbedded  Better Better?

IE.au3 issues with Vista - Workarounds

SciTe Debug mode - it's magic: #AutoIt3Wrapper_run_debug_mode=Y Doesn't work needs to be ripped out of the troubleshooting lexicon. It means that what you tried did not produce the results you expected. It begs the questions 1) what did you try?, 2) what did you expect? and 3) what happened instead?

Reproducer: a small (the smallest?) piece of stand-alone code that demonstrates your trouble

Share this post


Link to post
Share on other sites
Neo

Is that a "yes"? Is Send("{CTRLUP}") the last line that gets executed? If so, that is very odd. What does the MouseClick just prior to that do - what is it clicking on?

After the CTRLUP the mouse goes to the SUBMIT button and clicks it after submission the confirmation dialog appears and it just hangs there. The last MouseClick unselects a site from the site allocation TridentListBox. So this line gets executed as well, I am sorry for the mistake in the message yesterday.
MouseClick("left",680,553,1,8)  ;SUBMIT
Thank you again

Share this post


Link to post
Share on other sites
DaleHohm

The whole point of these two pages of questions has been to figure out what the last line of code executed in your is and what that line did. Are you saying taht the last line executed is MouseClick("left",680,553,1,8) and it is clicking on the Submit button? You confused me with the information on the TridentListBox.

The MouseClick should not stall your script.. the WinWait certainly could however. Please add this right after the Submit button is clicked: ConsoleWrite("I clicked Submit" & @CR) and add a 5 second timeout to your WinWait as see if the behaviour changes.

Dale


Free Internet Tools: DebugBar, AutoIt IE Builder, HTTP UDF, MODIV2, IE Developer Toolbar, IEDocMon, Fiddler, HTML Validator, WGet, curl

MSDN docs: InternetExplorer Object, Document Object, Overviews and Tutorials, DHTML Objects, DHTML Events, WinHttpRequest, XmlHttpRequest, Cross-Frame Scripting, Office object model

Automate input type=file (Related)

Alternative to _IECreateEmbedded? better: _IECreatePseudoEmbedded  Better Better?

IE.au3 issues with Vista - Workarounds

SciTe Debug mode - it's magic: #AutoIt3Wrapper_run_debug_mode=Y Doesn't work needs to be ripped out of the troubleshooting lexicon. It means that what you tried did not produce the results you expected. It begs the questions 1) what did you try?, 2) what did you expect? and 3) what happened instead?

Reproducer: a small (the smallest?) piece of stand-alone code that demonstrates your trouble

Share this post


Link to post
Share on other sites
Neo

The whole point of these two pages of questions has been to figure out what the last line of code executed in your is and what that line did. Are you saying taht the last line executed is MouseClick("left",680,553,1,8) and it is clicking on the Submit button? You confused me with the information on the TridentListBox.

The MouseClick should not stall your script.. the WinWait certainly could however. Please add this right after the Submit button is clicked: ConsoleWrite("I clicked Submit" & @CR) and add a 5 second timeout to your WinWait as see if the behaviour changes.

Dale

I did the above and saw that in the console the last lines that get executed are:

0133: 0-0: ConsoleWrite("I clicked Submit" & @CR)

I clicked Submit

0134: 0-0: WinWait("Microsoft Internet Explorer","",4)

It seems that the line : If Not WinActive("Microsoft Internet Explorer","") Then WinActivate("Microsoft Internet Explorer","") is getting the script to hang.

Do you have any other ideas ? Thank you...

Share this post


Link to post
Share on other sites
DaleHohm

OK, that is really what we've been trying to figure out. This takes IE and the DOM out of the picture and it is just an Win32 issue.

Something like this (taken from the second example of _IEAction I pointed you to originally) should work:

WinWait("Microsoft Internet Explorer", "The form has not been changed.")
ControlClick("Microsoft Internet Explorer", "The form has not been changed.", "[CLASS:Button; TEXT:OK; Instance:1;]")
_IELoadWait ($oIE)

Free Internet Tools: DebugBar, AutoIt IE Builder, HTTP UDF, MODIV2, IE Developer Toolbar, IEDocMon, Fiddler, HTML Validator, WGet, curl

MSDN docs: InternetExplorer Object, Document Object, Overviews and Tutorials, DHTML Objects, DHTML Events, WinHttpRequest, XmlHttpRequest, Cross-Frame Scripting, Office object model

Automate input type=file (Related)

Alternative to _IECreateEmbedded? better: _IECreatePseudoEmbedded  Better Better?

IE.au3 issues with Vista - Workarounds

SciTe Debug mode - it's magic: #AutoIt3Wrapper_run_debug_mode=Y Doesn't work needs to be ripped out of the troubleshooting lexicon. It means that what you tried did not produce the results you expected. It begs the questions 1) what did you try?, 2) what did you expect? and 3) what happened instead?

Reproducer: a small (the smallest?) piece of stand-alone code that demonstrates your trouble

Share this post


Link to post
Share on other sites

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
Sign in to follow this  

×

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.