Jump to content

Avira Antivirus 9


Recommended Posts

Hello guys..

I am trying to make a Silent install of the latest Avira Antivirus version.

I Follow this guide..posted here : http://www.itstuff.ca/2009/05/unattended-i...-antivirus.html

First of all I setup autoit v3 (AutoIt Full Installation) downloaded from here.. http://www.autoitscript.com/autoit3/downloads.shtml

I copy the guide's plain view that looks like this :

If WinExists(@ScriptName) Then Exit

AutoItWinSetTitle(@ScriptName)
AutoItSetOption("TrayIconDebug", 1)
; AutoItSetOption("SendKeyDelay", 20)

global $title='Avira AntiVir Personal - Free Antivirus', $file='avira_antivir_personal_en.exe'

Run ( @ScriptDir&'\'&$file )

WinWaitActive("Avira AntiVir Personal - Free Antivirus", "")
ControlClick ($title, "Continue", "Button1")

WinWaitActive("Avira AntiVir Personal - Free Antivirus", "This wizard will install Avira AntiVir Personal on your computer.")
send ("!n")

WinWaitActive("Avira AntiVir Personal - Free Antivirus", "")
ControlClick ($title, "&Next >", "Button2")

WinWaitActive("Avira AntiVir Personal - Free Antivirus", "Licence agreement Avira AntiVir Personal - Free AntiVirus")
send ("!a")
ControlClick ($title, "&Next >", "Button3")

WinWaitActive("Avira AntiVir Personal - Free Antivirus", "Please confirm that you will use the Avira AntiVir Personal - Free Antivirus only for private and not for commercial purposes.")
ControlClick ($title, "", "Button2")
ControlClick ($title, "&Next >", "Button5")

WinWaitActive("Avira AntiVir Personal - Free Antivirus", "Select the program features you want to install")
ControlClick ($title, "C&omplete", "Button1")
ControlClick ($title, "&Next >", "Button7")

WinWaitActive("Avira AntiVir Personal - Free Antivirus", "Yes, I would like to subscribe to the Avira newsletter")
ControlClick ($title, "", "Button2")
ControlClick ($title, "&Next >", "Button5")

WinWaitActive("Avira AntiVir Personal - Free Antivirus", "Installation complete")
ControlClick ($title, "Show readme.txt", "Button1")
ControlClick ($title, "Finish", "Button12")

Do
WinWait("Configuration wizard")
ControlClick("Configuration wizard", "", "Button2")

WinWaitActive("Configuration wizard", "")
ControlClick("Configuration wizard", "", "Button6")

WinWaitActive("Configuration wizard", "")
ControlClick("Configuration wizard", "", "Button8")

WinWaitActive("Configuration wizard", "")
ControlClick("Configuration wizard", "", "Button10")

WinWaitActive("Configuration wizard", "")
ControlClick("Configuration wizard", "", "Button1")

WinWaitActive("Configuration wizard", "")
ControlClick("Configuration wizard", "", "Button11")


WinWaitActive("Configuration wizard", "You have now specified the basic configuration of Avira AntiVir Personal - Free Antivirus")
ControlClick("Configuration wizard", "", "Button12")

Until 1=2

Then i open ''SciTE Script Editor'' and i paste the code inside it. I save & compile the file. The ''Autoit3Wrapper Window'' doesn't appear as shown at the guide.

Anyway,I've used the compiled exe file with WPI...the avira_antivir_personal_en gets unpacked but it stacked to the first ''next button''.

Any help is appreciated because i am not familiar with AutoIt..;?

Edited by GeorgeVasil
Link to comment
Share on other sites


Then i open ''SciTE Script Editor'' and i paste the code inside it. I save & compile the file. The ''Autoit3Wrapper Window'' doesn't appear as shown at the guide.

If you have the full Scite4AutoIt3 editor installed then selecting "Compile" (Ctrl+F7) will show the dialog else selecting "Build" (F7) will compile without prompt (as long as no errors are detected).

Anyway,I've used the compiled exe file with WPI...the avira_antivir_personal_en gets unpacked but it stacked to the first ''next button''.

Any help is appreciated because i am not familiar with AutoIt..;?

With some changes to the code you posted, the script worked for me.

Stopping at the 1st window may have been because the window did not activate. My changes to the code forces the window to activate.

The Do Untill loop is illogical as 1 will never equal 2 and no condition allows the exit of the loop so the loop will forever loop. i replaced the loop as I do not see a need for a loop with the code.

The code shows a lack of using the text parameters and I would advise the use of them to ensure the script operates with the correct window with each execution. I have not done the previous mention of text parameter changes so you can use some time to improve on this.

Posted script with changes made


#RequireAdmin

If WinExists(@ScriptName) Then Exit

AutoItWinSetTitle(@ScriptName)
AutoItSetOption("TrayIconDebug", 1)
; AutoItSetOption("SendKeyDelay", 20)

Global $title = 'Avira AntiVir Personal - Free Antivirus'
Global $file = 'avira_antivir_personal_en.exe'

; Use quoted double quotes to prevent issues with spaces in the path
$pid = Run('"' & @ScriptDir & '\' & $file & '"')
If @error Then Exit 1

; WinWait is usually adequate for Control* functions to operate correct
WinWait($title, "")
ControlClick($title, "Continue", "Button1")

WinWait($title, "This wizard will install Avira AntiVir Personal")
Send("!n")

WinWait($title, "")
ControlClick($title, "&Next >", "Button2")

; Ensure window is active for Send function to operate correct
_WinWaitActive($title, "Licence agreement Avira AntiVir Personal")
Send("!a")
ControlClick($title, "&Next >", "Button3")

WinWait($title, "Please confirm that you will use"); ...not for commercial use
ControlClick($title, "", "Button2")
ControlClick($title, "&Next >", "Button5")

WinWait($title, "Select the program features you want to install")
ControlClick($title, "C&omplete", "Button1")
ControlClick($title, "&Next >", "Button7")

WinWait($title, "Yes, I would like to subscribe to the Avira newsletter")
ControlClick($title, "", "Button2")
ControlClick($title, "&Next >", "Button5")

WinWait($title, "Installation complete")
ControlClick($title, "Show readme.txt", "Button1")
ControlClick($title, "Finish", "Button12")

; Wait for up to 60 seconds for config window
If WinWait("Configuration wizard", "", 60) Then
ControlClick("Configuration wizard", "", "Button2")

WinWait("Configuration wizard", "")
ControlClick("Configuration wizard", "", "Button6")

WinWait("Configuration wizard", "")
ControlClick("Configuration wizard", "", "Button8")

WinWait("Configuration wizard", "")
ControlClick("Configuration wizard", "", "Button10")

WinWait("Configuration wizard", "")
ControlClick("Configuration wizard", "", "Button1")

WinWait("Configuration wizard", "")
ControlClick("Configuration wizard", "", "Button11")

WinWait("Configuration wizard", "You have now specified the basic configuration")
ControlClick("Configuration wizard", "", "Button12")
EndIf

; Wait up to 60 seconds for previous Run process to close
ProcessWaitClose($pid, 60)

Exit

Func _WinWaitActive($title, $text = '')
; Window wait, activate and then wait until active
WinWait($title, $text)
WinActivate($title, $text)
WinWaitActive($title, $text)
EndFunc

Link to comment
Share on other sites

Then i open ''SciTE Script Editor'' and i paste the code inside it. I save & compile the file. The ''Autoit3Wrapper Window'' doesn't appear as shown at the guide.

If you have the full Scite4AutoIt3 editor installed then selecting "Compile" (Ctrl+F7) will show the dialog else selecting "Build" (F7) will compile without prompt (as long as no errors are detected).

Anyway,I've used the compiled exe file with WPI...the avira_antivir_personal_en gets unpacked but it stacked to the first ''next button''.

Any help is appreciated because i am not familiar with AutoIt..;?

With some changes to the code you posted, the script worked for me.

Stopping at the 1st window may have been because the window did not activate. My changes to the code forces the window to activate.

The Do Untill loop is illogical as 1 will never equal 2 and no condition allows the exit of the loop so the loop will forever loop. i replaced the loop as I do not see a need for a loop with the code.

The code shows a lack of using the text parameters and I would advise the use of them to ensure the script operates with the correct window with each execution. I have not done the previous mention of text parameter changes so you can use some time to improve on this.

Posted script with changes made


#RequireAdmin

If WinExists(@ScriptName) Then Exit

AutoItWinSetTitle(@ScriptName)
AutoItSetOption("TrayIconDebug", 1)
; AutoItSetOption("SendKeyDelay", 20)

Global $title = 'Avira AntiVir Personal - Free Antivirus'
Global $file = 'avira_antivir_personal_en.exe'

; Use quoted double quotes to prevent issues with spaces in the path
$pid = Run('"' & @ScriptDir & '\' & $file & '"')
If @error Then Exit 1

; WinWait is usually adequate for Control* functions to operate correct
WinWait($title, "")
ControlClick($title, "Continue", "Button1")

WinWait($title, "This wizard will install Avira AntiVir Personal")
Send("!n")

WinWait($title, "")
ControlClick($title, "&Next >", "Button2")

; Ensure window is active for Send function to operate correct
_WinWaitActive($title, "Licence agreement Avira AntiVir Personal")
Send("!a")
ControlClick($title, "&Next >", "Button3")

WinWait($title, "Please confirm that you will use"); ...not for commercial use
ControlClick($title, "", "Button2")
ControlClick($title, "&Next >", "Button5")

WinWait($title, "Select the program features you want to install")
ControlClick($title, "C&omplete", "Button1")
ControlClick($title, "&Next >", "Button7")

WinWait($title, "Yes, I would like to subscribe to the Avira newsletter")
ControlClick($title, "", "Button2")
ControlClick($title, "&Next >", "Button5")

WinWait($title, "Installation complete")
ControlClick($title, "Show readme.txt", "Button1")
ControlClick($title, "Finish", "Button12")

; Wait for up to 60 seconds for config window
If WinWait("Configuration wizard", "", 60) Then
ControlClick("Configuration wizard", "", "Button2")

WinWait("Configuration wizard", "")
ControlClick("Configuration wizard", "", "Button6")

WinWait("Configuration wizard", "")
ControlClick("Configuration wizard", "", "Button8")

WinWait("Configuration wizard", "")
ControlClick("Configuration wizard", "", "Button10")

WinWait("Configuration wizard", "")
ControlClick("Configuration wizard", "", "Button1")

WinWait("Configuration wizard", "")
ControlClick("Configuration wizard", "", "Button11")

WinWait("Configuration wizard", "You have now specified the basic configuration")
ControlClick("Configuration wizard", "", "Button12")
EndIf

; Wait up to 60 seconds for previous Run process to close
ProcessWaitClose($pid, 60)

Exit

Func _WinWaitActive($title, $text = '')
; Window wait, activate and then wait until active
WinWait($title, $text)
WinActivate($title, $text)
WinWaitActive($title, $text)
EndFunc

Thanks for your time!

I think i have found where the problem is:

Both avira scripts (the one i have posted and yours)..work on Windows 7 EN x64 and Vista SP1 EN x32 but NOT to my XP SP3 GR (x32) (@!~#~!#@~#)

Does it matter that the ''next'' or cancel buttons are transated to Greek?

Any tip to force the installer to use EN language?

Why don't you just use the already known method, see the topic about avira 8.. there is a switch :)

Link me please ?

In which one of this threads switch is located at?

http://www.msfn.org/board/index.php?showto...mp;#entry734770

http://www.msfn.org/board/Avira-Antivir-8-...ed-t116123.html (this needs internet connection)?

I'll try this one when i have free time:

http://www.msfn.org/board/index.php?s=&amp...st&p=699852 :P edit <-- worked fine

Edited by GeorgeVasil
Link to comment
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
  • Recently Browsing   0 members

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