jbm Posted December 23, 2005 Share Posted December 23, 2005 I'm haviing a problem installing Spyware Blaster unattended in vmware.The problem is that the autoit script waits for me to click on next before it continueswhen called from my runonceex. But if I run it after windows is installed it worksas expected. Haven't tried it in a real install yet, but I don't think it would be different.here's my runonceex.cmd, not the whole filerem PP=hidec /w %SystemDrive%\Install\SET KEY=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceExREM for %%i in (D: E: F: G: H: I: J: K: L: M: N: O: P: Q: R: S: T: U: V: X: Y: Z:) do if exist %%i\win51 set CDROM=%%iREG ADD %KEY%\005 /VE /D "Perfect Disk" /fREG ADD %KEY%\005 /V 1 /D "hidec /w %SystemDrive%\install\perfectdisk32\perfectdisk32.exe" /f REG ADD %KEY%\010 /VE /D "winrar" /fREG ADD %KEY%\010 /V 1 /D "hidec /w %SystemDrive%\Install\winrar\setup.cmd" /fREG ADD %KEY%\015 /VE /D "Spyware Blaster" /fREG ADD %KEY%\015 /V 1 /D "hidec /w %SystemDrive%\Install\blastersetup\setup.cmd" /fThen my setup.cmd which calls an autoit script.cmdow @ /HID%Systemdrive%\install\blastersetup\spywareblaster.exeHere's the scriptOpt("WinWaitDelay",200)Opt("WinTitleMatchMode",1)Opt("WinDetectHiddenText",1)Opt("MouseCoordMode",0)Opt("ExpandEnvStrings",1)Opt("WinSearchChildren",1)Opt("WinTextMatchMode",2)Opt("TrayIconDebug",1)Run("BLSSETUP.EXE")If Not WinWait("Setup - SpywareBlaster") Then ProcessClose("BLSSETUP.EXE") ExitEndIfIf Not WinActive("Setup - SpywareBlaster") Then WinActivate("Setup - SpywareBlaster")EndIfSend("!n")Do $text = winGetText("Setup - SpywareBlaster","License Agreement")Until StringInStr($text,"I &accept the agreement")Send("!a")Sleep(100)Send("!n")Sleep(100)Do $text = winGetText("Setup - SpywareBlaster","Information")Until StringInStr($text,"Please read the following important information")Send("!n")Do $text = winGetText("Setup - SpywareBlaster","Select Destination Location")Until StringInStr($text,"Setup will install SpywareBlaster into the following folder.")Send("!n")Do $text = winGetText("Setup - SpywareBlaster","Select Additional Tasks")Until StringInStr($text,"Which additional tasks should be performed?")Send("!n")Do $text = winGetText("Setup - SpywareBlaster","Ready to Install")Until StringInStr($text,"Click Install to continue with the installation")Send("!i")Do $text = winGetText("Setup - SpywareBlaster","Completing the SpywareBlaster Setup Wizard")Until StringInStr($text,"Setup has finished installing SpywareBlaster")Sleep(100)Send("{SPACE}")Sleep(100)Send("!f")exit Link to comment Share on other sites More sharing options...
MHz Posted December 24, 2005 Share Posted December 24, 2005 This install script is quite different to what I normally see. I can understand the possible failure that can happen as for the selection of functions and how they are used. I am not going to try to patch up this script to make it work as it needs a concept change to ensure success. When using functions that require active windows, then you have to ensure the windows will in fact be active.Take note of the comments.; Commented useless Opt() functions.Opt("WinWaitDelay", 200);~ Opt("WinTitleMatchMode", 1)Opt("WinDetectHiddenText", 1);~ Opt("MouseCoordMode", 0);~ Opt("ExpandEnvStrings", 1)Opt("WinSearchChildren", 1)Opt("WinTextMatchMode", 2)Opt("TrayIconDebug", 1)Run("BLSSETUP.EXE"); If the window does not appear then the script will wait forever so ProcessClose() and Exit will never happen. Add a timeout parameter to make useful.If Not WinWait("Setup - SpywareBlaster") Then ProcessClose("BLSSETUP.EXE") ExitEndIf; Just activates the window. No check to insure that the window will be active for Send(). i.e. use WinWaitActive() or even a loop to check.If Not WinActive("Setup - SpywareBlaster") Then WinActivate("Setup - SpywareBlaster")EndIfSend("!n"); All following Do loops use WinGetText() which can operate with non active windows also which can make the following Send() functions fail as Send() needs active windows to send to.Do $text = WinGetText("Setup - SpywareBlaster", "License Agreement")Until StringInStr($text, "I &accept the agreement")Send("!a")Sleep(100)Send("!n")Sleep(100)Do $text = WinGetText("Setup - SpywareBlaster", "Information")Until StringInStr($text, "Please read the following important information")Send("!n")Do $text = WinGetText("Setup - SpywareBlaster", "Select Destination Location")Until StringInStr($text, "Setup will install SpywareBlaster into the following folder.")Send("!n")Do $text = WinGetText("Setup - SpywareBlaster", "Select Additional Tasks")Until StringInStr($text, "Which additional tasks should be performed?")Send("!n")Do $text = WinGetText("Setup - SpywareBlaster", "Ready to Install")Until StringInStr($text, "Click Install to continue with the installation")Send("!i")Do $text = WinGetText("Setup - SpywareBlaster", "Completing the SpywareBlaster Setup Wizard")Until StringInStr($text, "Setup has finished installing SpywareBlaster")Sleep(100)Send("{SPACE}")Sleep(100)Send("!f")ExitIf you need help with better function selection then just ask. Link to comment Share on other sites More sharing options...
benners Posted December 24, 2005 Share Posted December 24, 2005 It would probably be easier to modify spwareblasters iss file, as it is an inno setup you can use innounp to extract the files, delete a few lines and create a silent install. Link to comment Share on other sites More sharing options...
jbm Posted December 24, 2005 Author Share Posted December 24, 2005 @MHz I added a timeout parameter to the winwait callsbut it still waits forever in vmware and always worksrunning from windows.@bennersI made a silent install. It works perfectly in windows, haven'ttested it on my unatteded CD yet. Link to comment Share on other sites More sharing options...
tarquel Posted December 25, 2005 Share Posted December 25, 2005 benners is quite right I have a ready made one if you are interested - see the sig for my site CheersNathPS its been mentioned before so try to search in future Link to comment Share on other sites More sharing options...
MHz Posted December 27, 2005 Share Posted December 27, 2005 PS its been mentioned before so try to search in future Did you even look at the thread title or the 1st thread ?You do realize that your limited switchless installers are possibly big eula breakers. Telling people to search rather then help with their real problem is a tad rude. Repacking was not the request of the thread creation. Link to comment Share on other sites More sharing options...
Nightlord Posted December 27, 2005 Share Posted December 27, 2005 And yet it does accomplish getting the program installed.Oh, and if I read this thread correctly, YOUR post is in the wrong place as well... the Preaching forum is elsewhere.To original poster, I've used Tarquel's install and it works like a champ. Puts a shortcut on the desktop and everything. Link to comment Share on other sites More sharing options...
tarquel Posted December 28, 2005 Share Posted December 28, 2005 PS its been mentioned before so try to search in future Did you even look at the thread title or the 1st thread ?You do realize that your limited switchless installers are possibly big eula breakers. Telling people to search rather then help with their real problem is a tad rude. Repacking was not the request of the thread creation.There was no need to be nasty mate - I was only meaning that there had been lots of previous threads on SpywareBlaster unattended [sorry I didnt spell that out lol]. But you are quite right - i should have at least said that I dont know the answer when it comes to AutoIT [i did post it at 04:20 AM GMT hehe] - I was merely offering an alternative.The very fact that we/others are educating people on repacking applications is as good as breaking the EULA - and even if they do it themselves and dont distribute it, its pretty much breaking most EULA's too I'd wager.I did start a thread regarding the legality of doing this - and mostly I got told that it wasnt anything to worry about - thus I then created my site and have had a fair few thanks. Its all free and if any companies dont want their app on there, then i'll happily remove it and apologise - its not in any way a bad thing, only serves to help the people on this site. Of course, if everyone would like me to stop it, then I'll get rid of it - pm me if ya like.What I wont distribute is ready-made hacked versions of programs i.e. MSN 7.5 using a patched/hacked/modified exe to get rid of advertising etc., and other apps like this. I make no modification to the original files, and if I have, its usually a change of a .ini config file - which is hardly terrible.The title may not have been repacking, but as its in Application installs and used the word unattended, theres no harm in saying it now is there?Not meaning to be nasty back but I dont see others getting comments like this that provide the same/similar things - so please dont start on me thanks *smiles*</rant> @Nightlord:Thanks for the compliment and glad it worked for you mate CheersNath Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now