This website uses cookies. By clicking Accept, you consent to the use of cookies. Click Here to learn more about how we use cookies.
Turn on suggestions
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
- Revenera Community
- :
- InstallShield
- :
- InstallShield Forum
- :
- Re: How to avoid INI update
Subscribe
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Subscribe
- Mute
- Printer Friendly Page
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Aug 31, 2010
02:31 PM
How to avoid INI update
When a user runs our install, we prompt them for values that are placed in an INI file (Server IP, Company Name, etc.).
There are default values for these prompted values and in some situations (like when they install in a training class) the defaults are appropriate.
However, once a user has installed the system, if we run an upgrade, the default values entered during the initial install are replaced with the default values.
How can I tell the system NOT to touch the INI file on a Minor Upgrade?
Thanks!!
bob:confused:
There are default values for these prompted values and in some situations (like when they install in a training class) the defaults are appropriate.
However, once a user has installed the system, if we run an upgrade, the default values entered during the initial install are replaced with the default values.
How can I tell the system NOT to touch the INI file on a Minor Upgrade?
Thanks!!
bob:confused:
(13) Replies
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Sep 01, 2010
09:49 AM
Try setting "Not Installed" to the condition for the component associated with the INI file entry. You may also need to set the Reevaluate Condition setting to Yes.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Sep 01, 2010
09:26 PM
I've created a component called INIFile.
I've associated the component with the INI file.
I've set the condition of the component to:
INIFile = "Not Installed"
And I've set the Reevaluate Condition to Yes.
But now the INI file is not even getting installed.
What might I be doing wrong? Also, the icon for the component has a red exclamation (!) on it. But the software isn't giving any feedback as to what's wrong.
Thanks.
:confused:
bob
I've associated the component with the INI file.
I've set the condition of the component to:
INIFile = "Not Installed"
And I've set the Reevaluate Condition to Yes.
But now the INI file is not even getting installed.
What might I be doing wrong? Also, the icon for the component has a red exclamation (!) on it. But the software isn't giving any feedback as to what's wrong.
Thanks.
:confused:
bob
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Sep 01, 2010
09:33 PM
You need to associate the component with a feature. Also you just need to put "Not Installed" to the Condition setting.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Sep 02, 2010
08:15 AM
I set the component's condition to:
(IS_MINOR_UPGRADE=0) Or (IS_MAJOR_UPGRADE=0)
And it works great. Thank you for your help!!
bob
(IS_MINOR_UPGRADE=0) Or (IS_MAJOR_UPGRADE=0)
And it works great. Thank you for your help!!
bob
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Sep 02, 2010
10:07 AM
Hello Hidenori,
you are talking about "Transitive Components".
Be carefull, setting new condition to component and reevaluate it by reinstallation.
If the component was installed and now the condition is false by reevaluation,
this component is being removed!
you are talking about "Transitive Components".
Be carefull, setting new condition to component and reevaluate it by reinstallation.
If the component was installed and now the condition is false by reevaluation,
this component is being removed!
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Sep 03, 2010
08:26 AM
I used your advice and set the condition to "Not Installed". But now it uninstalls the INI and shortcuts on a minor upgrade. My goal is for the install to not touch either on an minor upgrade.
Ideas?
bob
:eek:
Ideas?
bob
:eek:
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Sep 03, 2010
08:48 AM
I removed the reevaluate condition and it doesn't uninstall on an upgrade, but it overwrites with the default INI as it was before.
BTW, I set the Never Overwrite condition to Yes, but it still Overwrote anyway. 😞
Ideas?
bob
BTW, I set the Never Overwrite condition to Yes, but it still Overwrote anyway. 😞
Ideas?
bob
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Sep 03, 2010
10:36 AM
I guess the $64 question is how can I turn off the UNINSTALL feature of components that use a condition for install/upgrade?
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Sep 03, 2010
11:07 AM
I set the components to be permenant, so that keeps them from being removed in an update, and not modified in an update. So I guess we are there, but I'd like them removed in an uninstall, so this isn't the best solution.
Any Ideas or is this the best I can do?
Thanks.
bob:confused:
Any Ideas or is this the best I can do?
Thanks.
bob:confused:
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Sep 03, 2010
11:39 AM
Another approach that you can try is to set a condition to the WriteIniFiles action so that the INI file changes will not occur during minor upgrades.
[LIST=1]
Go to the Custom Actions and Sequences view.
Expand the Sequences > Installation > Execute node.
Set "Not Installed" to the Condition field of the WriteIniFiles action.
Rebuild your setup.
Please remove the condition from the underlying component, and change the Reevaluate Condition setting back to No.
Hope that helps.
[LIST=1]
Please remove the condition from the underlying component, and change the Reevaluate Condition setting back to No.
Hope that helps.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Sep 03, 2010
12:41 PM
Thank you! That appears to be it.
Now if there was only a way to detect the existance of an SQL Instance, or a way to ignore script errors if we run a query against a non-existent instance of SQL server, I could go on to other projects.
bob:o
Now if there was only a way to detect the existance of an SQL Instance, or a way to ignore script errors if we run a query against a non-existent instance of SQL server, I could go on to other projects.
bob:o
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Sep 03, 2010
02:03 PM
You may want to try executing the ISSQLServerList action which queries and sets the existing instances of Microsoft SQL server to the IS_SQLSERVER_FLATLIST Windows Installer property in a comma-delimited manner. Then, you would need to write your own custom action that will check to see if the desired instance is included in the list.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Sep 03, 2010
03:12 PM
You might want to use a substring operator in your conditional expressions in order to determine if the desired instance name is in IS_SQLSERVER_FLATLIST.
PROPERTY >< "substring"
syntax as one possibility...
PROPERTY >< "substring"
syntax as one possibility...
![](/skins/images/CC38E504FC9E1309DC48ACFEB4925670/responsive_peak/images/icon_anonymous_message.png)