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: Key file question
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
‎Sep 12, 2011
02:50 AM
Key file question
Please give me a reason why not set all my files to a "key file". All my files are important, even my .config, .bin, .wav ect files.
(6) Replies
Not applicable
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Sep 12, 2011
08:55 AM
Hi, Magnus
You can add more components, each one only insert one file to set key file.
BR,
Kevin
You can add more components, each one only insert one file to set key file.
BR,
Kevin
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Sep 12, 2011
09:04 AM
I have lots of components, one component for every file, and I set key file to all my files. I just want to know if there is any reason not to set a file to a key file.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Sep 12, 2011
11:14 AM
The big thing with keyfiles is that they are what Windows Installer uses to determine if a component is correctly installed or not before it runs AutoRepair.
Microsoft's best practices say to use executable modules as Keypaths, because these comprise functional parts of your application. And thus, if one is missing, autorepair should trigger since ostensibly the application won't work without being repaired.
That said, any files that if missing will cause your application to misbehave you will want to set as Keyfiles. Files that are somewhat optional (like a readme.txt for example) and should not trigger autorepair, you can leave as non-keypath files in a component that contains a keypath, or in its own component without a keypath.
Hope this helps!
Microsoft's best practices say to use executable modules as Keypaths, because these comprise functional parts of your application. And thus, if one is missing, autorepair should trigger since ostensibly the application won't work without being repaired.
That said, any files that if missing will cause your application to misbehave you will want to set as Keyfiles. Files that are somewhat optional (like a readme.txt for example) and should not trigger autorepair, you can leave as non-keypath files in a component that contains a keypath, or in its own component without a keypath.
Hope this helps!
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Sep 13, 2011
12:02 AM
Now I know that my strategy will work "one component for every file, and set key file to all my files".
Thanks!
Thanks!
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Sep 13, 2011
12:40 AM
You should also take a look at Rob Mensching´s Windows Installer Components Introduction.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Sep 13, 2011
06:14 PM
It's pretty well agreed in the WiX community that despite what the MSFT directions on MSDN say that a 1:1 file to component relationship with each file being a keyfile in it's own component is the default, general case to start with.
There are times when you would steer away from this but this is the best way to start. The question I think the author is asking is how do you go about telling InstallShield that this is what you *WANT* when using the component wizards.
I know I've asked in the past for a wizard configuration screen that allows you to define your component rules ( actually different profiles would be nice ) so that the authoring will be exactly the way you want when you do a big drag and drop.
In my tool ( IsWiX ) I provide a simple radio selection that asks if you want one to many ( InstallShield / MSFT style ) or one to one ( WiX / MSFT style ) authoring for non-program executable files.
There are times when you would steer away from this but this is the best way to start. The question I think the author is asking is how do you go about telling InstallShield that this is what you *WANT* when using the component wizards.
I know I've asked in the past for a wizard configuration screen that allows you to define your component rules ( actually different profiles would be nice ) so that the authoring will be exactly the way you want when you do a big drag and drop.
In my tool ( IsWiX ) I provide a simple radio selection that asks if you want one to many ( InstallShield / MSFT style ) or one to one ( WiX / MSFT style ) authoring for non-program executable files.