Sign in to follow this  
Followers 0
Swatty43

Unfreeze GUI

8 posts in this topic

I have a script that I use as a setup utility for new pcs, I have a function that installs LogMeIn with all of our information. It works just fine all the way through, however when I exit it out of the installer before it finished my script is paused, will not un pause and my GUI is frozen and I need to right click the tray icon to exit. Is there a way to have this not happen? 

I am using a RunWait(LogMeIn()) to start it.

Heres my function:

Func LogMeIn()
    Opt("WinTitleMatchMode", -2)
    Run(@DesktopDir & "\C1SetupUtility\Files\Scripts\Batch\LogMeIn.bat","","",@SW_HIDE)
    WinWaitActive("LogMeIn", "LogMeIn")
    Send("{ENTER}")
    WinWaitActive("LogMeIn", "Account")
    Send("{ENTER}")
    WinWaitActive("License Agreement")
    Send("{ENTER}")
    WinWaitActive("LogMeIn", "Software options")
    Send("{TAB}")
    Send("{TAB}")
    Send("{ENTER}")
    WinWaitActive("LogMeIn", "Computer Description")
    Send("{ENTER}")
    WinWaitActive("LogMeIn", "Computer Access Code")
    Send("franklin")
    Send("{TAB}")
    Send("franklin")
    Send("{ENTER}")
    WinWaitActive("LogMeIn", "Enter your LogMeIn account information")
    Send("test@test.com")
    Send("{TAB}")
    Send("test")
    Send("{TAB}")
    Send("{UP}")
    Send("{ENTER}")
    WinWaitActive("LogMeIn", "Choose Profile")
    Send("{DOWN}")
    Send("{ENTER}")
    WinWaitActive("LogMeIn", "Choose Destination Location")
    Send("{ENTER}")
    WinWaitActive("LogMeIn", "Setup Completed")
    Send("{TAB}")
    Send("{TAB}")
    Send("{SPACE}")
    Send("{TAB}")
    Send("{ENTER}")
    WinWaitActive("LogMeIn", "Enabled and Online")
    Send("{ENTER}")
EndFunc   ;==>LogMeIn

Share this post


Link to post
Share on other sites



WinWaitActive has a timeout parameter, without that it will just sit there waiting forever for the window to appear.


If I posted any code, assume that code was written using the latest release version unless stated otherwise. Also, if it doesn't work on XP I can't help with that because I don't have access to XP, and I'm not going to.
Give a programmer the correct code and he can do his work for a day. Teach a programmer to debug and he can do his work for a lifetime - by Chirag Gude
How to ask questions the smart way!

I hereby grant any person the right to use any code I post, that I am the original author of, on the autoitscript.com forums, unless I've specifically stated otherwise in the code or the thread post. If you do use my code all I ask, as a courtesy, is to make note of where you got it from.

Back up and restore Windows user files _Array.au3 - Modified array functions that include support for 2D arrays.  -  ColorChooser - An add-on for SciTE that pops up a color dialog so you can select and paste a color code into a script.  -  Customizable Splashscreen GUI w/Progress Bar - Create a custom "splash screen" GUI with a progress bar and custom label.  -  _FileGetProperty - Retrieve the properties of a file  -  SciTE Toolbar - A toolbar demo for use with the SciTE editor  -  GUIRegisterMsg demo - Demo script to show how to use the Windows messages to interact with controls and your GUI.  -   Latin Square password generator

Share this post


Link to post
Share on other sites

I'm sure your script hangs on one of the WinWaitActive statements. Set the timeout parameter.


My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2017-04-18 - Version 1.4.8.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX (NEW 2017-02-27 - Version 1.3.1.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2015-04-01 - Version 0.4.0.0) - Download - General Help & Support - Example Scripts
Excel - Example Scripts - Wiki
Word - Wiki
PowerPoint (2015-06-06 - Version 0.0.5.0) - Download - General Help & Support

Tutorials:
ADO - Wiki

 

Share this post


Link to post
Share on other sites

BTW:

I wouldn't use Send. Use the Control* functions to make your script more reliable. I'm (nearly) sure that LogMeIn has a silent install feature. So no need to automate the installation .


My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2017-04-18 - Version 1.4.8.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX (NEW 2017-02-27 - Version 1.3.1.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2015-04-01 - Version 0.4.0.0) - Download - General Help & Support - Example Scripts
Excel - Example Scripts - Wiki
Word - Wiki
PowerPoint (2015-06-06 - Version 0.0.5.0) - Download - General Help & Support

Tutorials:
ADO - Wiki

 

Share this post


Link to post
Share on other sites

Thanks for all your help, here is my new code:

Func LogMeIn()
    Opt("WinTitleMatchMode", 2)
    Run(@DesktopDir & "\C1SetupUtility\Files\Scripts\Batch\LogMeIn.bat","","",@SW_HIDE)
    WinWaitActive("LogMeIn", "LogMeIn",3)
    ControlSend("LogMeIn", "Simply Connected","", "{ENTER}")
    WinWaitActive("LogMeIn", "Account",3)
    ControlSend("LogMeIn", "Account","","{ENTER}")
    WinWaitActive("License Agreement",3)
    ControlSend("LogMeIn","License Agreement","","{ENTER}")
    WinWaitActive("LogMeIn", "Software options",3)
    ControlSend("LogMeIn", "Software options","","{TAB}")
    ControlSend("LogMeIn", "Software options","","{TAB}")
    ControlSend("LogMeIn", "Software options","","{ENTER}")
    WinWaitActive("LogMeIn", "Computer Description",3)
    ControlSend("LogMeIn", "Computer Description","","{ENTER}")
    WinWaitActive("LogMeIn", "Computer Access Code",3)
    ControlSend("LogMeIn", "Computer Access Code","","franklin")
    ControlSend("LogMeIn", "Computer Access Code","","{TAB}")
    ControlSend("LogMeIn", "Computer Access Code","","franklin")
    ControlSend("LogMeIn", "Computer Access Code","","{ENTER}")
    WinWaitActive("LogMeIn", "Enter your LogMeIn account information",3)
    ControlSend("LogMeIn", "Enter your LogMeIn account information","","test@test.com")
    ControlSend("LogMeIn", "Enter your LogMeIn account information","","{TAB}")
    ControlSend("LogMeIn", "Enter your LogMeIn account information","","test")
    ControlSend("LogMeIn", "Enter your LogMeIn account information","","{TAB}")
    ControlSend("LogMeIn", "Enter your LogMeIn account information","","{UP}")
    ControlSend("LogMeIn", "Enter your LogMeIn account information","","{ENTER}")
    WinWaitActive("LogMeIn", "Choose Profile",3)
    ControlSend("LogMeIn", "Choose Profile","","{DOWN}")
    ControlSend("LogMeIn", "Choose Profile","","{ENTER}")
    WinWaitActive("LogMeIn", "Choose Destination Location",3)
    ControlSend("LogMeIn", "Choose Destination Location","","{ENTER}")
    WinWaitActive("LogMeIn", "Setup Completed",3)
    ControlSend("LogMeIn", "Setup Completed","","{TAB}")
    ControlSend("LogMeIn", "Setup Completed","","{TAB}")
    ControlSend("LogMeIn", "Setup Completed","","{SPACE}")
    ControlSend("LogMeIn", "Setup Completed","","{TAB}")
    ControlSend("LogMeIn", "Setup Completed","","{ENTER}")
    WinWaitActive("LogMeIn", "Enabled and Online",3)
    ControlSend("LogMeIn", "Enabled and Online",'',"{ENTER}")
EndFunc   ;==>LogMeIn

But if I click cancel on the installer my script still freezes and I need to exit and restart it. I am still unable to restart it after it is paused.

Share this post


Link to post
Share on other sites

I still don't understand why you need to cancel the installation?


My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2017-04-18 - Version 1.4.8.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX (NEW 2017-02-27 - Version 1.3.1.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2015-04-01 - Version 0.4.0.0) - Download - General Help & Support - Example Scripts
Excel - Example Scripts - Wiki
Word - Wiki
PowerPoint (2015-06-06 - Version 0.0.5.0) - Download - General Help & Support

Tutorials:
ADO - Wiki

 

Share this post


Link to post
Share on other sites

I still don't understand why you need to cancel the installation?

 

More of a just in case this happens kind of thing haha, I don't plan on quitting the install but I am not the only one using the program.

Share this post


Link to post
Share on other sites

You could block user input while your install is running.


My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2017-04-18 - Version 1.4.8.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX (NEW 2017-02-27 - Version 1.3.1.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2015-04-01 - Version 0.4.0.0) - Download - General Help & Support - Example Scripts
Excel - Example Scripts - Wiki
Word - Wiki
PowerPoint (2015-06-06 - Version 0.0.5.0) - Download - General Help & Support

Tutorials:
ADO - Wiki

 

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  
Followers 0