Hello All !

I want to install msi file with either a silent command line either a powershell script. Before that i used the GUI installed provided by the msi file (i want install it on these OS: windows 2003 x86 R2 SP2, windows 2003 x64 R2 SP2, windows 2008 x86 sp2, windows 2008 x64 sp2, windows 2008 R2 x64 RTM).

I don't use any msi tools and I don't want to modify the msi file source.

Command line directly from windows:

msiexec /qn /l* d:\sqlclientcomp\log_sqlclrtypes.txt /i c:\sqlclientcomp\sqlclrtypes.msi INSTALLDIR=d:\sqlclientcomp

when I run this, the application is installed in the default path (c:\program files\microsoft SQL Server\tools) but not in the defined path (d:\sqlclientcomp). It is present in the Control Panel (add/remove program / features). The application is fully fonctional.

I try to put quotes, double-quotes and other escape characters, it the same problem (on x86 or x64 platforms)
"d:\sqlclientcomp", "d:\sqlclientcomp\", d:\sqlclientcomp, `"d:\sqlclientcomp`", replace INSTALLDIR by TARGETDIR: nok, ...
In the generated log, the TARGETDIR or INSTALLDIR is present with the good path.

With Powershell,it is the same problem:

$installdest = "TARGETDIR=" + "```"" + $targetloc + "```"
invoke-expression "msiexec /i /qn /l* C:\TEMP\log_makemsi.txt $packagepath $installdest" ($packagepath is the source of my msi file, $installdest is the destination folder)

I use a local account administrator, all the disks have the good permissions.

Can you help me ?
Regards
0 Comments   [ + ] Show Comments

Comments

Please log in to comment

Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.

Answers

0
You would probably have better luck if you were using an MST, but still I should work through the switch.

Try running this without the /qn and see what happens. Your parameter should be passed to the install and be visible.

msiexec /i c:\sqlclientcomp\sqlclrtypes.msi INSTALLDIR="d:\sqlclientcomp" /l* "d:\sqlclientcomp\log_sqlclrtypes.txt"
Answered 06/28/2011 by: jmaclaurin
Third Degree Blue Belt

Please log in to comment
0
Hello !

Thanks for your response.

If I suppress "/qn" setting, my "msi" file runs ok, but I must click on the different windows to continue installation

If I let "/qb" or "/qn", the window help msi file appears: I click on "ok" button", but nothing run.

I want to find a solution for silent installation. We don't have any msi tools and we can't modify it for security and checksum reasons and because we have not skills and competencies on this subject.

Thanks a lot for your help
Best regards
Answered 06/28/2011 by: yanolezard
Yellow Belt

Please log in to comment
0
If it worked and installed to the proper directory without the /qn or having to change the install directory, then use the same command line as above and add /qn.

FYI, that is how you troubleshoot if your command line string has the correct syntax or not.
Answered 06/28/2011 by: jmaclaurin
Third Degree Blue Belt

Please log in to comment
0
Hello !

Today, I have tested this with an other "msi" file (I want to verify if my msi file was corrupted or malformed). I precise that I work on 64 bits systems and 32 bits systems and I have the same behaviours.

C:\>msiexec /i c:\crossx\xmlnotepad.msi INSTALLDIR="K:\testmsi" /l* k:\testmsi\xmlnotepad.log --> install starts, i click on next, i accept the license, but in the proposed path, it is the default path (c:\Program Files (x86)\XML Notepad 2006\) not my defined folder. It seems that this "INSTALLDIR=" setting is ignored. However, I can uninstall it properly.

C:\>msiexec /i c:\crossx\xmlnotepad.msi INSTALLDIR="K:\testmsi" /l* k:\testmsi\xmlnotepad.log /qn --> install starts but not in the proposed path, it is the default path (c:\Program Files (x86)\XML Notepad 2006\) which is used. It seems that this "INSTALLDIR=" setting is ignored. However, I can uninstall it properly.

An idea ?
Answered 06/29/2011 by: yanolezard
Yellow Belt

Please log in to comment
0
These may be the possibilities you can look for

Check if ROOTDRIVE property is set in msi.

Check if any custom action is setting the INSTALLDIR. (I have seen some application with custom action setting the target path)
Answered 06/29/2011 by: naveen.packager
Green Belt

Please log in to comment
Answer this question or Comment on this question for clarity