Jump to content
JBeardNC

Preventing App (IE) from opening

Recommended Posts

JBeardNC

When I'm updating Flash or Java for example, I am closing IE for the user beforehand and IE must remain closed as to not interfere with the install. I'd like to see if there is a (better) way to prevent them from opening IE during the middle of the update. Currently, I launch a separate process/script that simply does a While loop and every 50 ms, it checks for IE using WinExists and if it finds it, kills the process. But what ends up happening is if it closes the process at the right moment, the user will get a message that looks like a permissions error or an error like the IE shortcut doesn't exist and prompts the user to remove the shortcut and its causing some confusion. It may be because I have the 50 ms interval too small but I wanted to reach out and see if there is a better way to block an application from opening temporarily while something finishes, in this case, block IE while Java or Flash install completes. I tried using If ProcessExists and got the same results. Here's the script I'm using. Any better ideas? I just need to block IE from opening for about 30 seconds. If it has a notification (like the toast pop-up I added), that's even better but its not required. 

#include <toast.au3>

$sMsg  = "Adobe Flash is being updated on your computer." & @CRLF & @CRLF & "Internet Explorer will open once the update is complete."

sleep (2000)

While ProcessExists ("AdobeFlashUpdate.exe")
    sleep(50)
    If WinExists ("Internet Explorer") Then
        WinClose ("Internet Explorer")
        OpenToast()
    EndIf
WEnd

Func OpenToast()

    _Toast_Set(5, 0xFFFF33, 0x000000, 0xCC0000, 0xFFFFFF, 10)
    $aRet = _Toast_Show(0, "Please wait...", $sMsg, 10, False)
    ;_Toast_Hide()

EndFunc

Run ("C:\Program Files (x86)\Internet Explorer\iexplore.exe")

Exit

Share this post


Link to post
Share on other sites
rudi

Hi.

A group policy setting could be used to temporary disallow starting iexplore.exe:

gpedit.exe

- Computer configuration

-- windows settings

--- security settings

---- software restriction policies --> new software restricion policies

 

activate prior you launch your upate, remove afterwards.

 

Users will receive a message like "your admin disallowed ..."

 

Regards, Rudi.


Earth is flat, pigs can fly, and Nuclear Power is SAFE!

Share this post


Link to post
Share on other sites
JBeardNC

Thanks for the idea but that won't work. It only needs to prevent it from opening for around 30-40 seconds while Flash or Java install. Plus, I don't want the user to receive any error message. If anything, I'd like for them to just see a message that another application is installing and IE will open when its complete.

Share this post


Link to post
Share on other sites
BrewManNH

BlockInput might also be an option to think about.


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

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

  • Similar Content

    • TLAM
      By TLAM
      Hello,
      I am working on an autoIT script for CyberArk which is running Internet Explorer and connecting the user to a web application.
      For an unknown reason (I cannot explain why), IE has some trouble to start, only after a long disconnecting period (morning or after lunch). If he tries again, no problem, IE starts.
      I open a case with CyberArk but I am also searching a workaround, I thought to kill the process directly, or set a timeout with _IELoadWait but the process is not really created..

      May do you have any ideas for helping me ?

      Thanks in advance
       
    • Seminko
      By Seminko
      Wrote a script that grabs all of the IP addresses from Netflix's IP log, checks the IPs and returns suspicious activity.
      Everything works as it should but only when _IECreate is set to visible. When visible is set to false, it fails to login for some reason.
      Any ideas what might cause it and/or how to circumvent that?
    • nooneclose
      By nooneclose
      Hello again, I am in phase two of my help bot. I cannot figure out how to properly code Autoit to click on a webpage button using the I.E UDF. I want to click on the button that I have attached as an image. This button does not have a name but it has an ID. Here is the HTML code for this button that I found using chromes developer inspector.
      HTML Code: 
      <img role="button" tabindex="-1" id="toolactions_INSERT-tbb_image" src="nav_icon_insertkey.gif" alt="New Work Order CTRL+ALT+I" draggable="false"> Here is the code that I have so far:
      ;******************************************************************************* ; Opens IE and fill out a New Workorder ;******************************************************************************* ; Start IE at the ** Tracking Application in ****** $oIE = _IECreate("https:I_am_Bound_by_my_company_to_not_reveal_this_webpage") ; Wait for a browser page load to complete _IELoadWait($oIE) Sleep(6000) ; Store the field names where the important data will be sent Local $nWorkOrderB = _IEGetObjById($oIE, "toolactions_INSERT-tbb_image") _IEAction($nWorkOrderB, "click")  I want my program to click on the button that looks like a piece of paper with a blue # 
      (For those wondering, I am allowed to send images just not the URL.) 
      As always any help would be appreciated. 

    • ohaya
      By ohaya
      Hi,
      I have a situation where I need to make one request to get a kind of pre-logon page, then click a link on that pre-logon page, which then returns a login form page, and then fill in information in the form page and submit it.
      How can I handle that using AutoIT?
      I can get the AutoIT script to tab to the link, then send an ENTER, which then causes the FORM page to appear in IE.  However, I cannot seem to get the form object from the FORM page (_IEFormGetObjByName fails when it searches for the form).  Why is that, and how can I get the AutoIT to process the FORM page?
      Thanks,
      Jim
    • seryth
      By seryth
      I have a script that opens some Excel books that  are stored in SharePoint .  Without getting to much into detail as its a very long story I have to open Internet Explorer to the SP site in order for all of this crap to work. 
       
      Anyway I have a bit of code in my script that i found via google-fu
      $ieList = ProcessList("iexplore.exe") If IsArray($ieList) Then For $I = 1 To Ubound($ieList) -1 ProcessWaitClose($ieList[$I][1]) Next EndIf Exit Now on Windows 7 this bit works great.  On Windows Server 2012 R2 where this things runs is another story.  I need to be able to force close all instances of Internet explorer that are running as part of my code. 
       
      Any help is appreciated. 
×