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

Change Company name in Add Remove Programs

In Add Remove Programs, the company name is taken from summary information, Company Name property. What if I want the installdir to be Company1, but the ARP entry to be 'Company1 widgets and digits'...how to do this (basic MSI)?
Labels (1)
0 Kudos
(14) Replies
RobertDickau
Flexera Alumni

If you're asking about the Publisher value displayed in the Support Info panel, I believe it comes from the Manufacturer property in the Property table.
0 Kudos
Lou_Elston
Level 6

I want the company name displayed in the support information of Add Remove Programs, to be different then the Installdir where the product is installed.
0 Kudos
RobertDickau
Flexera Alumni

Yes, you should be able to specify a different INSTALLDIR value (independent of the value of Manufacturer) in the Product Properties view.
0 Kudos
Lou_Elston
Level 6

Previously the install company name was 'Companyname widgets and digits', the install dir was 'Program files\companyname\product' (not program files\companyname widgets and digits\product). There was also a folder in 'commonappdata\companyname widgets and digits\product'. It created that folder by appending the company name to commonappdata (I was not involved with the previous version of this product). I come along and want the commonappdata folder and the installdir to be the same name. Easy to do, just change the companyname name in summary information to 'compamyname'. The problem is that they want the Add Remove Programs name to be 'Companyname widgets and digits'.
0 Kudos
RobertDickau
Flexera Alumni

Does changing the Publisher value in the Add or Remove Programs view (which sets the Manufacturer property) not work?
0 Kudos
Lou_Elston
Level 6

doing that also changes the company name
0 Kudos
RobertDickau
Flexera Alumni

How, specifically, is that common-data destination being set? Offhand it's not clear how setting Manufacturer or that SIS setting should change a Directory-table entry...
0 Kudos
Lou_Elston
Level 6

There was a ‘Set directory’ custom action that created a Directory value of “[CommonAppDataFolder][Manufacturer]\[ProductName]” that was used in a custom action to try to find a file. By eliminating the Manufacturer property and instead hard coding the company name as in... "[CommonAppDataFolder]XYZCorp\[ProductName]", we are now able to have the common folder name and the program files folder name of just 'CompanyName', (hard coded in the Destination property of the component), and the Add Remove Programs to be the full company name of "CompanyName widgets and digits"
0 Kudos
drewdy
Level 4

Doesn't the ARP entry come from the ProductName property? If you look in the Releases view, under product configuration there's a Product Name field. You can also find this in the ISProductConfigurationProperty table.
0 Kudos
RobertDickau
Flexera Alumni

The product name in ARP comes from ProductName, of course. The Company Name in the support details comes from Manufacturer, though, and other support details come from the other ARPETC properties.

The attached figure is something I made to help myself remember what goes where...
0 Kudos
amitha
Level 3

Hi,
I have a similar problem as urs.I have a product called A.But i want to display in ARP as "Aversion 1.1".I am using basic msi project.Is it possible to change this name???did u find solution to ur problem???

Thnaks
Amitha


Lou Elston wrote:
In Add Remove Programs, the company name is taken from summary information, Company Name property. What if I want the installdir to be Company1, but the ARP entry to be 'Company1 widgets and digits'...how to do this (basic MSI)?
0 Kudos
TheResearch
Level 6

Hi Amitha,

You can do so by changing the ProductName from registry under 'HKEY_CLASSES_ROOT\Installer\Products\GUID'.

The ARP entry will be taken from this registry.

You need a VB Script to enumerate the reg keys under HKEY_CLASSES_ROOT\Installer\Products and find the ProductName for each subkey(GUID) . If this matches ur product name, rename that ProductName to 'whatever' you want.

I have included the VB Script to do this task.


Function changeARPName()

On Error Resume Next
const HKEY_CLASSES_ROOT = &H80000000
strComputer = "."
Set objShell = CreateObject("WScript.Shell")
Set objRegistry=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" &_
strComputer & "\root\default:StdRegProv")

strKeyPath = "Installer\Products"
objRegistry.EnumKey HKEY_CLASSES_ROOT, strKeyPath, arrSubKeys

For Each subkey In arrSubKeys
strGUID = objShell.RegRead("HKEY_CLASSES_ROOT\" & strKeyPath & "\" & subkey & "\ProductName")
If strGUID = "<ur app name>" Then
objShell.RegWrite "HKEY_CLASSES_ROOT\" & strKeyPath & "\" & subkey & "\ProductName", "Aversion 1.1", "REG_SZ"
End If

Next

End function




Execute this Custom Action in Install Execute sequence after Installfinalize.

Let us know if you face any problem.

Hope this helps.
0 Kudos
RobertDickau
Flexera Alumni

Is it an option to change ProductName to the value you want, either as part of the build process or (less good) at run time? The registry solution depends on undocumented registry locations, and a VBScript action that touches the registry might get intercepted by some virus scanners...
0 Kudos
TheResearch
Level 6

RobertDickau wrote:
The registry solution depends on undocumented registry locations


Hello Robert,

Yes, you are right. I agree that this is an undocumented location\solution.

But, due to some requirement, i have implemented the same in one of my project some time back. I couldn't get an alternative at that time. Also, i was under time pressure so i couldnt analyse further.

But believe this works(atleast as a workaround). I am not sure that i got any info that this was anywhere blocked by virus scanners.

Thought of giving a solution for the problem somehow.
0 Kudos