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

Defaults in clean basic MSI causing pain.

Hi, I am looking forward to a good answer to this. Perhaps Robert (D) you could take this?

I have been loyal to IS since the 90's. (Using IS 2010 at the moment).
Every time I create a project I find the Component shared property defaults to 'Yes'. Even if it is an exe or chm, this results in billions of leftover entries in the registry for shared DLL's.
Q1. Why (tf) cannot this be set to No as default?

Q2. Customer today claimed that they cannot pin my shortcut to the taskbar. I did not believe them. Shock Horror - they were right!!
Root cause was another default "Yes" setting for the shortcut as "Advertised".
So, OMG another gotcha.
Love to hear why these bear traps are set?
Many thanks.
Labels (1)
0 Kudos
(6) Replies
Vijay__K
Level 7

I know for the Installshield MSI training course that advertised shortcuts are a 'no no', but they when creating a new one it's default is advertised... yes it is strange.

As far as i know , the shared component setting should'nt effect the registry on removal. The entries that are left behind should be removed, as the msi installation should create counts for each file.
If the count = 0 the file will be removed... (Only a guess).

Vijay
0 Kudos
migpal
Level 4

Cool, thanks for confirming it's not just me! 🙂 (That is going insane).

Yes reference count. Fine. But why not set 'No' as default? Hopefully some more nice people like you will chime in with some more comments.

I notice Installshield 2010 (Pro) in my Start menu also *cannot* be pinned to the taskbar. (Is this an eat their own dogfood thing??) This seems to be a Windows NT 6 & 6.1 feature/issue. Jeepers, could be a Win 7 LOGO requirement I suppose? I have not done any msi training. Just been programming Windows since Windows 3.0


Cheers,
MP
0 Kudos
Bineesh
Level 6

I aslo faced problem on the default setting for component sharing property. I have a dout..
Once 3-4 build are deployed with component shared and after uninstalltion the componnets are left over the system, How to remove it??

With new setup (minor upgrade) same componet not marked as shared not replacing the files. How to upgrade the componet and remove the shareddll entry in the registry for old components??

Its a Basic MSI project
0 Kudos
migpal
Level 4

Hi, On a 32 bit system you will find them here:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SharedDLLs

The same for a 64 bit system, however there will be billions more entries here:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\SharedDLLs

Only seasoned (burnt fingered) InstallShield authors will have set their components to be shared or not correctly and listed in this part of the registry or not.

InstallShield newbies/kiddies will not notice the booby trap/bear trap of the defaut stupid, stupid, stupid 'Yes' setting for 'shared' in the component attributes.
So, a lot of junk collects in this part of the registry. "How to get rid of" well, I recommend CCleaner - a free tool from Piriform!!!

As for the advertised shortcut default setting of Yes, this affects installations using newer MSI Installers. (Vista / Win 7 / Server 2008 R2).
I would say that is also stupid, stupid, stupid.
Probably intimately tied into Flexera's C/C++ source code tree for InstallShield's Yes/No dropdowns /class/function.

I need a Vicodin - make that 6.
Sheesh.......
0 Kudos
Reureu
Level 10

You are right Migpal, these settings are set to "yes" per default.

It is a bit annoying, but with the time, I got used to the routine.

  • Every time I add a component, the first thing I do is set the shared setting to "No".
  • As for the advertised shortcuts, same thing.


I think Flexera should add 2 preferences (ie under Tools->Options)

  • Treat new components as shared by default: Yes/No
  • Treat new shortcuts as advertised: Yes/No


The funny thing is: there is already a preference for the default ".NET Scan at Build" setting under Tools->Options->.NET, so that this .NET Scan setting is preset according to your preferences for all new components.
0 Kudos
migpal
Level 4

Thanks, Exactly what I do.

Though the Advertised Shortcut is a new one for me! 🙂
0 Kudos