msiexec parameters via setup.exe to create log not working
Asked Answered
M

2

1

I'm trying to get a log from my install that uses a setup.exe. I can get a log with just setup.exe /V"/l\*v c:\temp\installlog.txt", but I want to pass the x parameter as well to get "Extra debugging information" and when I try setup.exe /V"/l*vx c:\temp\installlog.txt" I get:

1629: Invalid command line.

Any idea what I'm doing wrong? I have msiexec version 5 installed.

Mallissa answered 11/4, 2018 at 19:49 Comment(5)
Did you solve this issue?Finable
No - to be honest I just gave up on it. It is an InstallScript MSI project for now - I'd love to convert it to a basic installer, but no time right now. So I just figured that what I was trying to do is impossible because of the project setup.Mallissa
The next question is what your requirements were, but that might be too elaborate here. Maybe check what just showed up - and see my answer too. Installscript MSI is challenging.Finable
This particular installer is relatively simple (only about 150 components), so I should be able to convert it fairly simply. But we have a release coming up very quickly so I don't have time right now. I'll cone back and convert it later. Thanks for all of your help with this!Mallissa
No problem. Best of luck - and get some accomplices during testing ;-).Finable
D
1

Ancient setup.exe: I tried with an ancient version of Installshield and the setup.exe for a Basic MSI worked as expected. I could pass in Setup.exe V"/L*v C:\Test1.log" and Setup.exe V"/L*vx C:\Test1.log" - both command lines worked and the resulting log files were different with the x adding more verbose nonsense :-). Verbose indeed.

Modern Suite Setups: I tried with InstallShield2018Premier.exe - a recent installer from Installshield, and it failed with that command line. I am pretty sure this latter file is an Installshield Suite setup.exe - it has to be. These suite setup.exe files (or whatever they are renamed to) are not the same as the setup.exe files generated for a single MSI file. There are some details about this here (just my observations, needs verification): Regarding silent installation using Setup.exe generated using Installshield 2013 (.issuite) project file.

So I guess the first thing I would verify is that you are not using a suite setup.exe (as opposed to a regular setup.exe launcher). However, it does look like the command line without the x parameter did work for you, and then this theory doesn't make any sense. Posting anyway in case you tested with another setup.exe or something like that. There could also be changes to the regular setup.exe which makes it fall over on the x now, but it worked in earlier versions.


Since the above does not seem like a real answer, how about some longshot suggestions?

  • Did you try to disable your anti-virus while running with this switch? Just to rule this out in case the x initiates something funky.
  • Did you try and verify similar results on another computer? Maybe a virtual machine? (a very basic, clean one).
  • Is this an Installscript MSI? I would build a Basic MSI wrapped in a test setup.exe to see if the behavior is the same for a vanilla MSI file.
  • All I can think of at the moment.

UPDATE: OK, a couple of things.

  • Installscript MSI projects are very buggy in my experience. I would use a Basic MSI if at all possible. The resulting MSI files are also much more compatible with corporate deployment requirements.
  • Maybe Try This: It is possible that you can "hack" the compiled Installscript MSI setup to be able to install without the setup.exe wrapper. So you extract the files with an admin install going setup.exe /a and then you use this trick: How to deploy the Installshield MSI without having to run Setup.exe - in order to run the extracted MSI file using the normal msiexec.exe engine. So then you just go msiexec.exe /i MyMsi.Msi /L*Vx C:\Test.log /QN and see what you get.
  • It is also conceivable that there is a setting in Installscript MSI projects where you can directly specify a command line to pass to msiexec.exe for testing. I have no access to recent Installshield version and can not help you with this. Documentation might give you a clue.
Dispassion answered 11/4, 2018 at 23:31 Comment(7)
It is an InstallScript MSI project. I'll try a Basic and see what happens. I just tried on a different machine (a VM) and was excited because it started installing prereqs, but then I got the same error :-(. Thanks for trying...Mallissa
OK, added a couple of more suggestions. Best advice I can give you is to rely on Basic MSI instead of Installscript MSI - if you can. Just my 2 cents.Finable
Oh, and in case you should decide to go for Basic MSI. There used to be an Export Into feature when right clicking a component which allowed you to export a component into another MSI project - preserving the GUID and other data. A real click-fest, but possible if the setup isn't too huge. It might even be automatable via the COM automation interface. There might be samples on community.installshield.com.Finable
Hey Stein. Thanks, but when I use the export component wizard it seems to create a new Merge Module project (not sure what that is) - I was hoping it would create a new Basic Installer project and then I'd have to create my screens one-by-one, so I'm not sure how to use that.Mallissa
I think you need to create a fresh basic MSI project first (not a merge module project), then close it and open your original Installscript MSI project. Then you right click a component in Component view and select "Export Into..." and then browse to your fresh basic MSI project's source file (ISM format) and target that for export. That is how it worked back in the day - sorry, I don't have a recent version of Installshield to verify. Maybe contact Installshield support and see if they have tools that can help you do this with more auto-magic? (based on the COM automation interface).Finable
Thanks - that was an idea I had after my reply. I'm doing that now and it seems to work. Of course I'll still need to create all of the screens, but this should be a big help!Mallissa
Switching to Basic MSI back in the day saved me from major problems down the line. I am not sure about the current state of affairs, but Basic MSI are welcomed for corporate deployment - and this is of crucial concern if you want your software approved for large company use. Make yourself deployment friendly, and maybe provide a one-page PDF with large scale deployment suggestions (how to set installer parameters via PUBLIC properties, what features are optional - if any, etc...). Silent installation is crucial for corporate deployment. Test it well is my best advice.Finable
B
1

Have you tried this?

setup.exe /s /v"/lvoicewarmupx! C:\temp\install.log"
But answered 12/4, 2018 at 3:2 Comment(1)
Is this installer sensitive? Could you share it to me via dropbox?But

© 2022 - 2024 — McMap. All rights reserved.