/build/static/layout/Breadcrumb_cap_w.png

Desktop shortcut while installation

Hello All,

I am packaging Nice Player. Its a vendor MSI. When i install the MSI it asks like would you like to create desktop short. Unless i say Yes or No it won't continue the installation.

I have tried the below options...
I have tried Tuner
There is no such dialog.. I have suppressed the Welcome dialog giving end dialog - return = 1.
i have deleted desktop shortcut itself from MSI still the window pops up.
i don't see any properties to alter the value.

I too kthe verbsoe log with/without the shortcuts its more or less the same. I don't see any CA being called there.

Any ideas higly appreciated.
Suma

0 Comments   [ + ] Show comments

Answers (28)

Posted by: anonymous_9363 15 years ago
Red Belt
0
The only 'Nice Player' I can find is for the Mac. Is the MSi downloadable?
Posted by: AngelD 15 years ago
Red Belt
0
What I would do is to use DebugView and while selecting either yes/no it may set a property which will be displayed in real-time in the DebugView window (turn off autoscroll while you do the selection).
If that doesn't work then use Process Monitor or Explorer and then drag the "cross" toolbar icon over the window holding the yes/no question. If it's a custom action you will see the custom action executable/binary file. Find that in the verbose log and turn it off. Make sure that the shortcut is either created or not in another way.
Posted by: sumarchana 15 years ago
Orange Senior Belt
0
I don't think so.. We have paid for it.

I have attached the partila og output for your reference...

SI (s) (00:4C) [09:15:56:736]: Executing op: CacheSizeFlush(,)
MSI (s) (00:4C) [09:15:56:736]: Executing op: InstallProtectedFiles(AllowUI=1)
MSI (s) (00:4C) [09:15:56:736]: Executing op: ActionStart(Name=CreateShortcuts,Description=Creating shortcuts,Template=Shortcut: [1])
MSI (s) (00:4C) [09:15:56:736]: Executing op: SetTargetFolder(Folder=C:\Program Files\NICE Systems\NICE Player\)
MSI (s) (00:4C) [09:15:56:736]: Executing op: ShortcutCreate(Name=NICEPL~1|NICE Player,Feature=DefaultFeature,Component={231A20DD-3277-C62D-26AB-3723705541A7}
MSI (s) (00:4C) [09:15:56:787]: Executing op: SetTargetFolder(Folder=C:\Program Files\NICE Systems\NICE Player\)
MSI (s) (00:4C) [09:15:56:787]: Executing op: ActionStart(Name=RegisterExtensionInfo,Description=Registering extension servers,Template=Extension: [1])
MSI (s) (00:4C) [09:15:56:787]: Executing op: RegExtensionInfoRegister(Feature=DefaultFeature,Component={231A20DD-3277-C62D-26AB-3723705541A7}
MSI (s) (00:4C) [09:15:56:797]: Executing op: RegExtensionInfoRegister(Feature=DefaultFeature,Component={231A20DD-3277-C62D-26AB-3723705541A7}
MSI (s) (00:4C) [09:15:56:807]: Executing op: ActionStart(Name=RegisterProgIdInfo,Description=Registering program identifiers,Template=ProgId: [1])
MSI (s) (00:4C) [09:15:56:807]: Executing op: RegProgIdInfoRegister(ProgId=NICE AUD file,,Extension=aud,,Icon=_294823.exe,IconIndex=0,,,)

This is part of the shortcut which is being created when i say YES.

Suma
Posted by: sumarchana 15 years ago
Orange Senior Belt
0
Debugview is a freeware?
Posted by: sumarchana 15 years ago
Orange Senior Belt
0
AngelD,

Can you please tell me what is that "cross" toolbar icon? is it inside the process mon?
Posted by: anonymous_9363 15 years ago
Red Belt
0
I don't think so.. We have paid for it. Not this http://www.nice.com/bin/mediaplayer.zip?bcsi_scan_DEA2E070FBFB2D7A=1 then?

- Create a transform against the original MSI
- Locate the Type 51 Custom Action '_F25E8ED6_E9FD_4130_8CA2_927358A81E52.install.SetProperty'
- Change the value from:
/installtype=notransaction /action=install /LogFile= /PlayerShortcut="[PLAYERSHORTCUT]" /TargetDir="[TARGETDIR]\" /GUILevel=[UILevel] "[#_6DA826374B187CFD70277B744F664004]" "[VSDFxConfigFile]"
to:
/installtype=notransaction /action=install /LogFile= /TargetDir="[TARGETDIR]\" /GUILevel=[UILevel] "[#_6DA826374B187CFD70277B744F664004]" "[VSDFxConfigFile]"

- Test

Please note this is based on a very cursory glance at the MSI. - I haven't tried it myself.

Next, DebugView is freeware, as a Google search would have shown you
Lastly, the cross-hair drag-and-drop feature is in Process Explorer.
Posted by: anonymous_9363 15 years ago
Red Belt
0
This is part of the shortcut which is being created when i say YES. Er, no it's not. It's just an extract from the log.
Posted by: AngelD 15 years ago
Red Belt
0
As Ian metioned "the cross-hair drag-and-drop feature is in Process Explorer" or in Process Monitor which can be found at http://technet.microsoft.com/en-us/sysinternals/default.aspx (former SysInternals), same location where you'll find the DebugView.
Posted by: sumarchana 15 years ago
Orange Senior Belt
0
Hi VBScab,

I checkout the custom action the value is,

/installtype=notransaction /action=install /LogFile= /TargetDir="[TARGETDIR]\" /GUILevel=[UILevel] "[#_D8917A6B9D5E40C16603DDF3A9257277]" "[VSDFxConfigFile]".

I did not find Playershortcut in the whole MSI table. Size of the Nice player.msi is different from what you gave me the website MSI.

However i have downloaded the debugview & process exp.. I will have a look...

Suma
Posted by: sumarchana 15 years ago
Orange Senior Belt
0
I think its a modified MSI from that media player Nice player MSI.
The value is already modified without player shortcut.

I could not get more help frm Debug view or Process Explr
Posted by: anonymous_9363 15 years ago
Red Belt
0
I could not get more help frm Debug view or Process ExplrForgive me, but to me that means you weren't looking hard enough.

Did you set the registry key to enable output to DebugView? That is:REGEDIT4

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Installer]
"Debug"=dword:00000002
Once that's done, you'll clearly see the ManagedInstall action being run. I suspect that your version of the MSI doesn't expose the public property.

If this were me and I had determined beyond doubt that the CA's only purpose was to create that shortcut, I'd disable that CA altogether and just add my own.

I'd also take issue with a vendor that builds their own custom installation DLL into an MSI. Why bother with an MSI at all if you're not going to its technology?!?

Anyway, short of loading the InstallUtil DLL into your favourite disassembler, I'd recommend that you snapshot as far as the dialog and save that somewhere. Then start a new snapshot and answer 'yes' to the shortcut question and save that somewhere else, then compare the changes that were made. Personally, I can't believe anyone would go to the trouble of creating a DLL simply to create a desktop shortcut: it must be doing other work.

Once you know what that action is doing, you can disable it and reproduce its behaviour in your transform.
Posted by: sumarchana 15 years ago
Orange Senior Belt
0
Sorry as am using Debugview tool i was unaware that i should set the registry value.
I have already tried disabling the CA it gives me some runtime error while installation.
Posted by: anonymous_9363 15 years ago
Red Belt
0
I have already tried disabling the CA it gives me some runtime error while installation. ?!?! How did you disable it? I normally set an impossible-to-meet condition, e.g. 0=1. I presume you're doing all this via a transform, BTW, not in the original MSI?
Posted by: sumarchana 15 years ago
Orange Senior Belt
0
Yes, ofcourse in the MST.
There is condition called $C__D8917A6B9D5E40C16603DDF3A9257277>2. Though it is not defined what it is i have tried alreting the values. Still no luck...
Posted by: AngelD 15 years ago
Red Belt
0
The condition will resolve to TRUE if the component is installed local or from source.

Check out: Conditional Statement Syntax
http://msdn.microsoft.com/en-us/library/aa368012(VS.85).aspx
Posted by: AngelD 15 years ago
Red Belt
0
Can you provide us with a link where we can download the product if possible.
Posted by: sumarchana 15 years ago
Orange Senior Belt
0
As it is a licensed software i have just got the MSI's from my team in UK.
Posted by: anonymous_9363 15 years ago
Red Belt
0
OK, so, because of my insatiable curiousity, a desire to marvel at yet another vendor's incompetence, coupled with the fact that I'm not overly busy right now, I ran the MSI and captured what InstallUtil does, to wit the writing of 2 files:

c:\Documents and Settings\package2\Desktop\NICE Player Release 3.lnk
Date: 12/8/2008 10:49 AM
Size: 1,938 bytes
c:\Program Files\NICE Systems\NICE Player Release 3\InstallClasses9_10_5_00.InstallState
Date: 12/8/2008 11:12 AM
Size: 2,012 bytes

Awesome. I think I'll go to work for these people, since they seem willing to pay developers to waste time building utterly pointless DLLs. I can do that all day long.

So, Suma, in your transform:

- disable the CA (and its equivalent uninstalling CA, _23509C46_6243_4AF3_B176_0BB38DA2434E.uninstall)
- remove the brain-dead shortcut they're creating in the MSI (which they install to TARGETDIR) and create your own, adding a Desktop shortcut if you like (does ANYONE still put s/c on the desktop?)
- add the InstallState file. It's an XML file, the absence of which is most likely causing the runtime error.
- send missive to vendor, asking them if they'd like to buy your properly-authored MSI which installs silently to corporate desktops. If they can afford to have developers wasting time as I've outlined, they'll probably pay BIG for your work.
Posted by: anonymous_9363 15 years ago
Red Belt
0
As it is a licensed software i have just got the MSI's from my team in UK. so.....you have a license version of a piece of software which I (and anyone else) can d/l for free? That doesn't make sense. Upload the MSI to senduit.com and paste the link here. You can set an expiry on the link if you're worried about licensing.
Posted by: anonymous_9363 15 years ago
Red Belt
0
Well, I started to play with this MSI and .... what a joke.

Frankly, this is one time when I would recommend re-working it. Note, that's re-working, not re-packaging. It's a simple enough app, as all its files live in the one folder.

Don't forget to include the InstallState file which that CA creates and to tell your authoring tool that it's a .Net app.
Posted by: sumarchana 15 years ago
Orange Senior Belt
0
I disabled the CA _23509C46_6243_4AF3_B176_0BB38DA2434E.uninstall
and
_F25E8ED6_E9FD_4130_8CA2_927358A81E52.install

Added the file to C:\Pgm files\Nice Systems\..\installclasses9_08_4_0.InstallState.(TARGETDIR)
It worked fine...

Thanks a lot mate for your time & patience... Brilliant!
Posted by: anonymous_9363 15 years ago
Red Belt
0
Thanks a lot mate for your time & patience... Brilliant!Just send money...
Posted by: sumarchana 15 years ago
Orange Senior Belt
0
Hi VBScab,

Can you pls tell me how did you know that installutil dll installs just that installclasses9_08_4_0.InstallState file? how could you do that?

Suma
Posted by: anonymous_9363 15 years ago
Red Belt
0
Easy. I started my lightweight snapshotter and took a 'Before' snapshot as soon as the message box appeared, clicked 'Yes' and then, when the install completed, took an 'After' snapshot. It's not rocket science...

Of course, in such situations, you need to ignore the additions that the vendor's stub makes, like dropping EXEs into %SystemRoot%\Installer\[ProductCode], which is why, when I post similar advice, I always qualify what I'm saying by advising that all relevant changes are added to the package. Knowing what to ignore comes with experience.
Posted by: sumarchana 15 years ago
Orange Senior Belt
0
Ok.. thanks a lot for the info... but which tool did you for that? Picture taker?
Posted by: anonymous_9363 15 years ago
Red Belt
0
which tool did you for that? Picture taker? Does it matter? I've used Ziff-Davis's In Control for years. Note that the Ziff Davis download location is subscriber-only but if you search for "InCtrl5.ZIP",you may stumble across a copy. Others here use and recommend InstallWatch but that requires installation first.
Posted by: sumarchana 15 years ago
Orange Senior Belt
0
Okay.. Installwatch & installrite i guess more or less the same... fine. .thanks
Posted by: psomeren 13 years ago
Senior Yellow Belt
0
perhaps a bit late to respond to this thread, but i'll share it with you anyway. I solved the issue by changing the the "Commandline Options" in de "Target" Column. The CustomActions "_3B711910_F068_46C4_8299_BA55BBD75691.commit.SetProperty", "_F25E8ED6_E9FD_4130_8CA2_927358A81E52.install.SetProperty" and "_23509C46_6243_4AF3_B176_0BB38DA2434E.uninstall.SetProperty" all contain a "Commanline Option" called "/GUILevel='[UILevel]'". I changed it to "/GUILevel=2" as I discovered that when I installed the Vendor MSI-package "/qn", I wasn't prompted for the Desktop Shortcut. After install, I checked for the "InstallClasses9_10_6_514.InstallState" file and compaired the contents with an "InstallClasses9_10_6_514.InstallState" file that was installed by just double-clicking the Vendor MSI-package. The contents were the same.

I've created a MST-file to alter the values in the CustomAction table.
Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.
 
This website uses cookies. By continuing to use this site and/or clicking the "Accept" button you are providing consent Quest Software and its affiliates do NOT sell the Personal Data you provide to us either when you register on our websites or when you do business with us. For more information about our Privacy Policy and our data protection efforts, please visit GDPR-HQ