cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Disabling double-clicking the MSI to install?

Not really an AdminStudio question, but it's still MSI related...

We have an issue where support will sometimes go directly to the MSI and doucble-click on it if they need to install it for whatever reason. With the increase number of transforms, they are missing those pieces as well as any command line oarameters. This of course causes many headaches, and I am sounding ike a broekn record when I tell them NOT to do this!

Anyway... Is there any setting, property, anything, to prevent someone from double-clicking on an MSI to install? I only want installs to be done via command line.

For some reason, I feel like I have heard that this exists. Setting different permissions on the files isn't an option, as the offenders all have admin rights.

Thanks! Jenn
(6) Replies
It would be kind of a hack and not 100% fool proof but you could maybe just make a shortcut to the msi (putting the msi someplace 'harder' or 'longer' to get to. Then the shortcut could include the command line params you want them to pass. At least then they'd have to go out of their way to do it wrong.
One approach is to use a launch condition (in LaunchCondition table) to check for a property, and abort when the property isn't set (expectedly).

If they are familiar with MSI tables, they will still be able to circumvent this. But again, if they know how and why not, and still go ahead to do it, it may be more effective to attack this issue from another angle, other than technical.
If you did use this method when and where in your package would you set the property? Would this only work for an installscript install?
I will have to try the LaunchCondition... We do have a template.ism all users use in repackaging, so we could set it there. That means vendor msis would need it in a transform... Thanks for this idea. Now... what property to set?

The shortcut thing wouldn't work unfortunately because these offenders go right out to our SMS servers and grab it there... (I know, I know)... Not much I can do it about it but try to educate educate educate. I don't control SMS, just MSI standards and packaging...

Thanks for the quick feedback!

Jenn
When a transform is applied to MSI at command line, TRANSFORMS property is set to the name of, or the full path to the transform. So, it would be my first-choice candidate. By using it in the MSI, I don't have to modify any existing MST.
Your bootstrap process would set the property. Like:

setup.exe
setup.ini
CmdLine= TRANSFORMS="foo.mst" FROMSETUP="1"

Launch conditon based on FROMSETUP="1"


Click the MSI and its not set so goodbye. Click the setup.exe and it runs. Or you can just author the property into the transform. Or for that matter you could create a launch condition based on the TRANSFORMS property itself.