User Profile Fixup
I've an existing MSI package with documented bulk deployment options, i.e. HKCU registry settings that can be deployed for standard application settings. I've created an MST and added the HKCU customisation.
If I deploy the application, the HKCU user configuration is present for the installed user but won't fixup for any following users, be they administrators or users.
Any tips on where to start troubleshooting?
Many thanks.
If I deploy the application, the HKCU user configuration is present for the installed user but won't fixup for any following users, be they administrators or users.
Any tips on where to start troubleshooting?
Many thanks.
0 Comments
[ + ] Show comments
Answers (8)
Please log in to answer
Posted by:
frodo
18 years ago
Posted by:
The Packeteer
18 years ago
Chipfork,
What i do in this situation is that i Create a New component in the MSI / MST with those HKCU in them, you then need to put your Keypath to a HKCU key that doenst appear when another user logs on. This key must not be already in the profile. ( NTuser.dat )
When starting an Advertised package your Advertisement checks the keypaths. If there not there or there broken or altered the Repair kicks in.
The Keypath is a kind of Checkup if the program Components are installed correctly.
For example : in a Component you have 3 files : 2 CHM files and 1 EXE file.
You set your Keypath on the EXE file.
When you start the advertised Application its checks for that component if the EXE file is inplace and not altered or broken. When you delete the EXE file and startup the Advertised Application you will see a Repair occur. this is what the Keypath Does.
You need to create a duplicate situation for your HKCU Keys.
What i do in this situation is that i Create a New component in the MSI / MST with those HKCU in them, you then need to put your Keypath to a HKCU key that doenst appear when another user logs on. This key must not be already in the profile. ( NTuser.dat )
When starting an Advertised package your Advertisement checks the keypaths. If there not there or there broken or altered the Repair kicks in.
The Keypath is a kind of Checkup if the program Components are installed correctly.
For example : in a Component you have 3 files : 2 CHM files and 1 EXE file.
You set your Keypath on the EXE file.
When you start the advertised Application its checks for that component if the EXE file is inplace and not altered or broken. When you delete the EXE file and startup the Advertised Application you will see a Repair occur. this is what the Keypath Does.
You need to create a duplicate situation for your HKCU Keys.
Posted by:
nheim
18 years ago
Posted by:
chipfork
18 years ago
ORIGINAL: The Packeteer
Chipfork,
What i do in this situation is that i Create a New component in the MSI / MST with those HKCU in them, you then need to put your Keypath to a HKCU key that doenst appear when another user logs on. This key must not be already in the profile. ( NTuser.dat )
When starting an Advertised package your Advertisement checks the keypaths. If there not there or there broken or altered the Repair kicks in.
The Keypath is a kind of Checkup if the program Components are installed correctly.
For example : in a Component you have 3 files : 2 CHM files and 1 EXE file.
You set your Keypath on the EXE file.
When you start the advertised Application its checks for that component if the EXE file is inplace and not altered or broken. When you delete the EXE file and startup the Advertised Application you will see a Repair occur. this is what the Keypath Does.
You need to create a duplicate situation for your HKCU Keys.
Many thanks for the reply. [;)]
I'm using WPS and have added the HKCU configuration into the MST which in turn has created a new CurrentUser component. I've checked the package and their are no other HKCU settings, only in the new component.
However I noticed when the application starts under a new user (local profiles on Virtual OS so clean) the application automatically creates some default HKCU settings, one of which was set to the Keypath in my MST. So I tried changing the component Keypath to a subkey not automatically created and tried the package again - still no joy. None of the additional registry settings in the MST have been added, just the defaults created by the app.
Anything else I can/should try?
Thanks!
Posted by:
chipfork
18 years ago
ORIGINAL: nheim
Hi chipfork,
please read this thread: http://itninja.com/question/distribution-message21
This gives you an understanding of the self healing process.
Regards, Nick
Thanks Nick, that's a very useful post and has helped me to understand the process.
I've followed Jim's example and created the parent CurrentUser feature and moved the existing features under that. I've moved any HKCU and File (User related - profile, etc.) to components under the new CurrentUser feature. The self repair now works for the HKCU however when the sub-feature with the entry point does a full feature repair then there are a few issues. I'm not sure if this is common, possibly relates to how it was developed - the app tries to re-register a DLL which errors and then kicks off what I think is a CA which tries to install another app utility, this fails as we're now logged on as a User. Have an idea how to work round this, not sure if it's good/the best way, but thought of moving this feature down and moving the entry point/shortcut into it. Not ideal, as this simply avoids the awkward feature doing a full feature repair.
Apologies but a newbie question. I'm a bit confused with regards Entry Points. As I understand it an entry point triggers the process by which Windows Installer checks keypaths - my understanding is that firstly only components in the same feature as the entry point will be checked (if missing then full feature repair), then components in any parent features (if missing then component level repair). From that I assume any features at the same level with missing keypaths will be ignored.
The entry point is where I'm confused - using WPS I can browse the components/features and I believe those items listed under "Advertising" are entry points. Reading the Wise Help, also any shortcuts that are "advertised" are also entry points or at least the executable that they point to is. Does this mean that if an application has no advertised shortcuts or file associations set then self repair won't occur?
Please could someone clarify entry points or point me to a good (simple) reference, many thanks.
Posted by:
bobcapilontra
17 years ago
Posted by:
nheim
17 years ago
Posted by:
bobcapilontra
17 years ago
Hi Nick,
I agreed about use active setup or self healing, .DEFAULT it was just a suggestion for new users... however I have not work with active setup since the security team does not approve it based on security issues reported before. We need to create a usercomponet and embebedd in dummy icon, but it's a company best pratices...
:)
Regards,
Marcelo
I agreed about use active setup or self healing, .DEFAULT it was just a suggestion for new users... however I have not work with active setup since the security team does not approve it based on security issues reported before. We need to create a usercomponet and embebedd in dummy icon, but it's a company best pratices...
:)
Regards,
Marcelo
Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.
so that the conversation will remain readable.