|
#1
|
|||
|
|||
Changing InstallShield product code
Hi guys,
I want to change the product code for an InstallShield project. I can change the code using the function below but am running into a problem on how to update the 'Uninstall' shortcut, which uses the product code. I'm using the IDriver.exe method, as this project is an InstallScript MSI project. Function InstallShieldChangeProductCode() 'Create the InstallShield Developer automation object Set objInst = CreateObject("ISWiAuto10.ISWiProject") 'For InstallShield X 'use "ISWiAutomation.ISWiProject" for InstallShield Developer 'use "ISWiAutomation9.ISWiProject" for DevStudio 9 'use "ISWiAuto10.ISWiProject" for InstallShield X 'use "ISWiAuto1050.ISWiProject" for InstallShield 10.5 'use "ISWiAuto11.ISWiProject" for InstallShield 11 'Open the project file objInst.OpenProject Step.ExpProperty(Builder, "Filename") 'Change the product and package codes. objInst.PackageCode = objInst.GenerateGUID(); objInst.ProductCode = objInst.GenerateGUID(); 'Update the 'Uninstall' shortcut. 'TBD 'Save changes objInst.SaveProject objInst.CloseProject end function Thanks in advance for your thoughts on how to update the uninstall shortcut too. Martin |
#2
|
|||
|
|||
Current thought
In case anybody is following this thread, I'm currently thinking of solving the problem from within InstallShield. The IS project should be able to pull its own product code for the uninstall shortcut argument rather than having it hard coded. I should be able to do something like
/M[PRODUCT_GUID] rather than /M{9EF6F5CC-69FC-433D-9D2E-971E55CAE819} as the argument for IDriver. The specific thought above failed, but I continue to try. |
#3
|
|||
|
|||
I did it!
Cool, I just saved myseslf hours of work on all my projects. The solution is:
/M[ProductCode] You an create an uninstall shortcut that automatically updates, when the producct code changes by using the above code rather than the explict one that the InstallShield product itself creates. For those that use the /x method the principle should be the same. :-) Martin A. Weinberger ButterflyVista http://www.butterflyvista.com/ |
|
|