bran Posted September 18, 2010 Posted September 18, 2010 Hello everyone! Been reading through all the amazing helps topics on this forum and I am really impressed with how many people help with autoit scripting issues and the programming skills show cased here! I have searched the forum and google searches thoroughly looking for help with my issue and I have finally given up. The issue I am having is as follows; The line of code I use to open the logmein.msi file works great on Vista and 7 but doesn't work on XP, Run(@ComSpec & " /c msiexec /i logmein.msi", @TempDir) ;run the logmein install I get an error from the windows installer, "Windows cannot find 'logmein.msi'. Maker sure you..." Even when I take the "portability" out of the code and hard code it find the file on the desktop of an XP system I still get the error message, like the file doesn't exist at all. I have tried MANY variations of the code and I have been unable to correct the issue. As a work around I use prompts to have the XP users open the installer themselves while the script waits for the user to open the installer manually. There are too many issues with this work around for me to be satisfied with leaving it in place. I would really appreciate any help from the scripting experts here! Thanks for reading this!
wakillon Posted September 18, 2010 Posted September 18, 2010 Try $_MsiPath = @ScriptDir & '\logmein.msi' RunWait ( 'msiexec /i "' & $_MsiPath & '"' ) AutoIt 3.3.14.2 X86 - SciTE 3.6.0 - WIN 8.1 X64 - Other Example Scripts
bran Posted September 18, 2010 Author Posted September 18, 2010 On 9/18/2010 at 6:37 PM, 'wakillon said: Try $_MsiPath = @ScriptDir & '\logmein.msi' RunWait ( 'msiexec /i "' & $_MsiPath & '"' ) Thanks for the quick reply! I tried your code and I'm still receiving the same error, here are some of the other lines of code I have written and tried to implement with no success; Run(@ComSpec & " /c msiexec /i \logmein.msi", @WorkingDir) RunWait(@ComSpec & " /c Start logmein.msi", @WorkingDir & "\") RunWait(@COMSPEC & " /c Start \logmein.msi") RunWait(@ComSpec & " /c Start logmein.msi", @WorkingDir & "\") None of these have worked for me. I am testing on a, Windows XP Pro system with SP3 and the most updated windows installer installed. Have had no success on any XP systems thus far.
wakillon Posted September 18, 2010 Posted September 18, 2010 On 9/18/2010 at 7:25 PM, 'bran said: I tried your code and I'm still receiving the same error,None of these have workedfor me. I am testing on a, Windows XP Pro system with SP3 and the most updated windows installer installed. Have had no success on any XP systems thus far.I can assure you that any Msi file will be lauched like that on XPMay be your msi file is not in the same dir than your script ! If it does'nt find msi, that is your path is wrong ! AutoIt 3.3.14.2 X86 - SciTE 3.6.0 - WIN 8.1 X64 - Other Example Scripts
bran Posted September 18, 2010 Author Posted September 18, 2010 On 9/18/2010 at 7:48 PM, 'wakillon said: I can assure you that any Msi file will be lauched like that on XPMay be your msi file is not in the same dir than your script ! If it does'nt find msi, that is your path is wrong !Thanks again for another really fast reply!I am aware that the logmein.msi file and the script need to be in the same directory for the script to be "portable" between computer systems, operating systems and users for it to work the way I need it to. The script and the file are downloaded by the user in an auto extract zip archive. They files are extracted together on the users desktop and the user runs the "Install LogMeIn.exe" file. The easiest, more error proof way I can set this up at the moment. Hopefully while I work to resolve this issue, someone can help me shed light on what I have done wrong and correct my code. Thanks for reading this guys!
GoogleDude Posted September 19, 2010 Posted September 19, 2010 (edited) If you use Orca MSI Editor you can edit the MSI to include all the vars such as account name/password ect.. and make is silent.you can also launch the msi via msiexec directly via ShellExecuteWait ~GD Edited September 19, 2010 by GoogleDude
bran Posted September 19, 2010 Author Posted September 19, 2010 Great advice! Thanks for the great advice, it sounds like it is a great program. I am not interested in modifying the msi installer package in anyway. If I chose this as a work around I would have to modify every new updated install package that was released. I am looking to harness the power of the AutoIt program and resolve this issue without any more external software and find the code to simply execute and run the logmein.msi file. Thanks again for your reply!
bran Posted September 19, 2010 Author Posted September 19, 2010 Still looking for help with this issue, my research with msi packages not installing from command prompt on XP has been non-productive. Any help would be greatly appreciated, thanks!
GoogleDude Posted September 19, 2010 Posted September 19, 2010 I have done a lot of work with silent msi namely with logmein over the years. LogMeIn does some cool stuff to there msi files. They are compiled at time of download if logged into your logmein account via your webbrowser at time of download. If you are not logged into your logmein account at time of download then your account info is not present in the MSI. the only way really to automate a silent install of logmein is to either edit the msi using orca or wrap a controlclick around the gui while filling each field with the correct values before controlclicking next ect.. you can use AutoIt Window Info on the msi window to get the ControlID's and ClassnameNN of each gui object. Iv done this befor but editing the msi is not hard and it allows for a much cleaning and mre silent install. Another way is to use IE in a hidden window to login and download the webbased installer of the msi which will allow logmein installer to connect your lmi account at time of install without requiring you to type in your creds. ~GD
Xtort Posted September 22, 2010 Posted September 22, 2010 I would have to say it appears your path may be incorrect. However, typically this would also bring up the Windows Installer command switches. I have never needed to specify a working dir for an MSI so long as the script was pointed to the proper directory. I suggest the use of some message boxes to sniff out the error. ;~ Check to verify the file exists just for esses and gees $logmein = fileexists(@tempdir &"\logmein.msi") MsgBox(0,"",$logmein) ;You could try this just for testing ;~ If your msi is in %temp% and actually named "logmein.msi" If $logmein = "1" Then Runwait("Msiexec.exe /i "& @TempDir &"\logmein.msi /qb! ALLUSERS=1 OtherProperties=Ect") Else MsgBox(0,"Avian Swine Sars","Error 404: File not found") EndIf ;~ If you had the msi and the script in the same place Runwait("Msiexec.exe /i "& @ScriptDir &"\logmein.msi /qb! ALLUSERS=1 OtherProperties=Ect")
RogerRabbitsClone Posted September 22, 2010 Posted September 22, 2010 (edited) i was doing this a while back, i never finished it but i was trying to write a script that would wrap around the msi, extract it, install it with my email and PW then delete the msi. i used orca to edit the buttons on the installer to accept Alt commands, but i think i wouldve been better off writing a .bat file and using orca. here is the forum i found that helped alot. http://www.msfn.org/board/topic/101432-silent-install-of-logmeinmsi/page__pid__939296__st__140#entry939296 *edit* oh yeah, and if its the free version like i used, the logmein people did all kinds of stuff to prevent silent install because thats part of the pay version. *end edit* Edited September 22, 2010 by RogerRabbitsClone <--a good way to start you day
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