cancel
Showing results for 
Search instead for 
Did you mean: 
DataAnalyzer
Pilgrim

Re: How to Change Value of @PRODUCT_NAME Programmatically?

No need to be condescending. If I knew the answer, I wouldn't be asking. And are you implying I'm afraid of working? I'm trying to solve a problem, not waste your or anyone else's time.

You're the first response to clarify that this feature request couldn't be done programmatically within InstallShield, so thank you for that.

Per your recommendations and others, if I want to implement this feature, I'll need to get a VB6 or .NET developer to create this for me. That would be difficult to manage and change. I'll just manually create a new Product Configurations for each name I need which is what I was trying to consolidate. It's nice to have different releases under one Product Configuration, but I find it odd that all the releases have to be the same Product Name.

DLee65 wrote:
This is too precious. You want to set the name programmatically but you do not want to utilize the tools that people have pointed to you to program a solution.
The answer is, NO, InstallScript does not have a property that can set it's compile time name. It has to be set at compile time by some type of external method that requires you to program it to set programmatically.

Sorry no simple answers. So Yes, it is possible but not without work.
0 Kudos
DLee65
Pilgrim

Re: How to Change Value of @PRODUCT_NAME Programmatically?

DataAnalyzer wrote:
Did you just send me to the entire help file? I've already searched the help file and can't find what I need. Maybe I'm just clueless. Is there an example that can show me what to do? What property to set programmatically in the script?

I need to programmatically change the product name based on the features included. For instance, Retail, Trial, Beta, etc. I have separate releases within a product and would like to set that accordingly.

Would also like to set things like the copyright, signing code, postbuild properties, etc. programmatically rather than having to set it manually for each tab, but that's a different dream.


Why not create separate configurations for Retail, Trial, and Beta and set the name in the configuration settings? Then you can specify which one to build from a command line or just click the correct one from the UI? If what I was trying to accomplish is to have a configuration like:
_Alpha
_Beta
_RC1
_Retail
_Trial
_etc

In this case you should have a finite list of configurations. If the number of configurations is finite then specifying separate configurations is the correct method to accomplish this.
If, however, you are trying to obtain something like
_0.0.1_Alpha, where the version value changes with each build then you will need some type of external process to configure the compile settings dynamically. Automation interface is hands down the best method for implementation here.

EDIT: Just read your previous reply. I can understand if you are not familiar with .NET, but if you are familiar with vbscript or javascript you can implement the automation interface using that by using CreateObject("ISWIAUTO##.ISPROJECT") . There should be plenty of examples here on the forums of how others have used it.

Here is one example: http://helpnet.installshield.com/installshield18helplib/IHelpAutoExReport.htm
0 Kudos
DataAnalyzer
Pilgrim

Re: How to Change Value of @PRODUCT_NAME Programmatically?

Yes, I could and have created a separate configuration for each one. Unfortunately, that's not very efficient.

I was hoping to have a separate release within each configuration because they would share the same configuration settings (and flags) plus each release having their own flag(s). If I could programmatically change the product name based on the flags, I'd be done. Instead, I have to create separate configurations and manually try to keep all their settings in snyc. Sounds like there isn't a way to do this.

DLee65 wrote:
Why not create separate configurations for Retail, Trial, and Beta and set the name in the configuration settings? Then you can specify which one to build from a command line or just click the correct one from the UI? If what I was trying to accomplish is to have a configuration like:
_Alpha
_Beta
_RC1
_Retail
_Trial
_etc

In this case you should have a finite list of configurations. If the number of configurations is finite then specifying separate configurations is the correct method to accomplish this.
If, however, you are trying to obtain something like
_0.0.1_Alpha, where the version value changes with each build then you will need some type of external process to configure the compile settings dynamically. Automation interface is hands down the best method for implementation here.

EDIT: Just read your previous reply. I can understand if you are not familiar with .NET, but if you are familiar with vbscript or javascript you can implement the automation interface using that by using CreateObject("ISWIAUTO##.ISPROJECT") . There should be plenty of examples here on the forums of how others have used it.

Here is one example: http://helpnet.installshield.com/installshield18helplib/IHelpAutoExReport.htm
0 Kudos
DataAnalyzer
Pilgrim

Re: How to Change Value of @PRODUCT_NAME Programmatically?

Since the responses haven't solved this problem, I'd like to rephrase this.

I'd like to have one setup program that contains multiple versions. Based on the information they enter (could be a serial number or options they choose), I can have the script set the right features and install it properly. However, I'd like the name of the product in the Windows Programs list to reflect the selection they made.

How would I change the product name in my script so my setup program that contains multiple versions/products can do this?
0 Kudos