Jump to content
Sign in to follow this  
elyos002

help about "runas"

Recommended Posts

elyos002

Hi, I am new on the forum and I am french. I just begin to use autoit that is why I would like to have some help.

In fact, I try to make an automatic uninstallation of a software version and then an automatic install of the new version.

When the script works on the administator session, its works very well. This script is below :

; Script Start - Add your code below here

MsgBox(48, "AV5", "uninstallation is beginning. Please do not touch to your keyboard!")

Run ( "C:\Program Files\AT\unins000.exe" )

sleep ( 2000 )

send ( "!O" )

sleep ( 2000 )

send ( "{ENTER}" )

sleep ( 5000 )

send ( "{ENTER}" )

sleep ( 5000 )

DirRemove( "C:\Program Files\AT", 1)

MsgBox(48, "AV7", "deinstall is beginning. Please do not touch to your keyboard")

Run ( "C:\AV7.exe" )

WinWaitActive ( "Langue de l'assistant d'installation" )

sleep ( 3000 )

send ( "{ENTER}" )

sleep ( 3000 )

send ( "{ENTER}" )

sleep ( 3000 )

send ( "!A" )

sleep ( 3000 )

send ( "{ENTER}" )

sleep ( 3000 )

send ( "!S" )

sleep ( 3000 )

send ( "!S" )

sleep ( 3000 )

send ( "!O" )

sleep ( 2000 )

send ( "{TAB}" )

sleep ( 2000 )

send ( "{DOWN}" )

sleep ( 500 )

send ( "{DOWN}" )

sleep ( 500 )

send ( "{DOWN}" )

sleep ( 500 )

send ( "{DOWN}" )

sleep ( 500 )

send ( "{DOWN}" )

sleep ( 500 )

send ( "{DOWN}" )

sleep ( 500 )

send ( "{DOWN}" )

sleep ( 500 ) ;

send ( "{DOWN}" )

sleep ( 500 )

send ( "{SPACE}" )

sleep ( 5000 )

send ( "!S" )

sleep ( 3000 )

send ( "!S" )

sleep ( 3000 )

send ( "!S" )

sleep ( 3000 )

send ( "!I" )

sleep ( 20000 )

send ( "!T" )

Exit

But when I try to run the script on a user session, it does not run well. After removal of the former version, it install the new one, but in the same time another occurence of the script runs. The only difference with the script made for the administrator session is a loop which determnine if the current user is administrator or not. And if he is not, which makes a "runas" command.

; Script Start - Add your code below here

$user = "Administrator"

$pass = "xxxxxxxx"

If Not IsAdmin() Then

RunAs($user, @ComputerName, $pass, 0, @ScriptName, @ScriptDir)

Exit

EndIf

MsgBox(48, "AV5", "uninstallation is beginning. Please do not touch to your keyboard!")

Run ( "C:\Program Files\AT\unins000.exe" )

sleep ( 2000 )

send ( "!O" )

sleep ( 2000 )

send ( "{ENTER}" )

sleep ( 5000 )

send ( "{ENTER}" )

sleep ( 5000 )

DirRemove( "C:\Program Files\AT", 1)

MsgBox(48, "AV7", "deinstall is beginning. Please do not touch to your keyboard")

Run ( "C:\AV7.exe" )

WinWaitActive ( "Langue de l'assistant d'installation" )

sleep ( 3000 )

send ( "{ENTER}" )

sleep ( 3000 )

send ( "{ENTER}" )

sleep ( 3000 )

send ( "!A" )

sleep ( 3000 )

send ( "{ENTER}" )

sleep ( 3000 )

send ( "!S" )

sleep ( 3000 )

send ( "!S" )

sleep ( 3000 )

send ( "!O" )

sleep ( 2000 )

send ( "{TAB}" )

sleep ( 2000 )

send ( "{DOWN}" )

sleep ( 500 )

send ( "{DOWN}" )

sleep ( 500 )

send ( "{DOWN}" )

sleep ( 500 )

send ( "{DOWN}" )

sleep ( 500 )

send ( "{DOWN}" )

sleep ( 500 )

send ( "{DOWN}" )

sleep ( 500 )

send ( "{DOWN}" )

sleep ( 500 ) ;

send ( "{DOWN}" )

sleep ( 500 )

send ( "{SPACE}" )

sleep ( 5000 )

send ( "!S" )

sleep ( 3000 )

send ( "!S" )

sleep ( 3000 )

send ( "!S" )

sleep ( 3000 )

send ( "!I" )

sleep ( 20000 )

send ( "!T" )

Exit

What did I make wrong in this second script?

Thank you for your answers.

Share this post


Link to post
Share on other sites
SKlocke

For your script, I think you should use the RunAsWait to run the script as admin. This will pause your first instance while the second is running. RunAs will continue execution of the first instance without waiting.

Also, you could have a look at the #RequireAdmin keyword, which will perform a similar function.

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.