/build/static/layout/Breadcrumb_cap_w.png

have MSI write to default user\ntuser.dat?

Is there a way to have an MSI write to c:\documents and settings\default user\ntuser.dat? That would be the hkey_current_user registry for new users (not hkey_users\.default). I don't want any self-healing or active setup to run. My users are always new.

Setting the RegistryKeyPath bit (4) in the Component Attribute doesn't do it, neither does ALLUSERS=1.

0 Comments   [ + ] Show comments

Answers (7)

Posted by: anonymous_9363 12 years ago
Red Belt
0
Er...why not simply write to HKEY_USERS\.Default?
Posted by: tamahome 12 years ago
Purple Belt
0
HKEY_USERS\.Default is used by the System account, not new users.
Posted by: anonymous_9363 12 years ago
Red Belt
0
So it is! I'd forgotten that. In recalling it, a distant memory came to me about a solution I came across at a client site, where an Active Setup script would determine a user's "new" status by comparing the date/time of the local profile with the current date/time....I'll see if I can find anyone I know who's still there.

Do I also recall that the command line utility REG.EXE can load profiles? Of course, the user needs to be logged off first.

EDIT:
http://blogs.technet.com/deploymentguys/archive/2008/06/06/useful-script-number-5-adjusting-the-default-user-registry-hive.aspx
Posted by: schieb 12 years ago
Purple Belt
0
Why don't you want to use active setup? You can run it with silent paramters so the users shouldn't notice it. If you need to change the Default Users HKCU key then it sounds like you need to address this with your image creation and not at the software level. I would fix it there by exporting the .dat, mount that hive and make the changes, then unload the hive and copy it back to your image. At the software level, this request seems unattainable if you don't want to use self-healing or active setup.

The vbscript above will do the loading of the hive like I am referring to. But even easier, if you are using a XP SP3 sysprep'd image just make the changes under the administrator account and add this, UpdateServerProfileDirectory=1 , under the section [Unattended] in sysprep.inf. That will copy the administrator profile over the Default User profile during sysprep.
Posted by: tamahome 12 years ago
Purple Belt
0
Basically all my users are always 'new', so those dialog boxes would run on every login or program launch. I didn't know the active setup could be hidden, but you have to hope the user doesn't run the application before the active update is done. I don't think I should have to make a new image every time I upgrade IE or Itunes. I have ways to update the default user hive with Altiris Rapidinstall (which Altiris deprecates) or reg.exe, but I think it's a major shortcoming that Windows Installer can't do it.
Posted by: schieb 12 years ago
Purple Belt
0
Self-healing alone does this unless your users are clicking cancel, or the components are not set up properly within the package. The self-heal only occurs once per user if you let it complete. If it runs every time you click the shortcut the package is not set up properly. You mention IE. This uses Active Setup natively to accomplish this task (IEAK). You aren't repackging that application right? R.I.P. RIPs, those were old four years ago :)

Active Setup itself is not transparent, but you can make the stubpath silent. Additionally, Active setup is going to run for a new user anyways to configure the base OS stuff so you can just tag your app on the end if for some reason a self-heal (from a dekstop shortcut, etc..) doesn't work. I believe the solution below is more complex then you require, but I'll give the example regardless.

Active setup won't let the desktop load until it is done running. So in your package make an entry under:

HKLM\Software\Microsoft\Active Setup\Installed Components\{GUID of APP}

(Default) REG_SZ Name of Software
StubPath REG_SZ msiexec.exe /fu {GUID of APP} /qn
Version REG_SZ 1

This will silently kick off a self-heal if a HKCU entry needs created for a new user because the versions will not match (1 > null), thus triggering the Stubpath.
Posted by: tamahome 12 years ago
Purple Belt
0
I usually script an install using msi silent install flags or autoit inside a rapidinstall package. If I need any hkey_current_user registry entries in the default user hive, Rapidinstall automatically puts them in.
Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.

Don't be a Stranger!

Sign up today to participate, stay informed, earn points and establish a reputation for yourself!

Sign up! or login

Share

 
This website uses cookies. By continuing to use this site and/or clicking the "Accept" button you are providing consent Quest Software and its affiliates do NOT sell the Personal Data you provide to us either when you register on our websites or when you do business with us. For more information about our Privacy Policy and our data protection efforts, please visit GDPR-HQ