Question

Reason for this question:

http://nsis.sourceforge.net/Reference/SetShellVarContext

and

http://forums.winamp.com/showpost.php?p=2326213&postcount=5

I am kind of puzzled here... what is actually most current way to handle this Windows specific installation/uninstallation feature, so that installer/uninstaller would automatically write, for example, registry to right place ( if Admin, then to HKLM, if specific user, then to HKCU )?

What makes me worried here is that the built-in command is pre-NSIS 2.0 introduced feature ... but

MultiUser.nsh

is pretty updated and from Joosts comment I start to think it ( using SHELL_CONTEXT ) might be better solution. Could it be right assumption here?

My goal is to make current Installer more flexible for future changes and development needs, including multi-user capabilities ( if, for example, Windows Certification requieres such support ). Ability to automatically depend on HKLM/HKCU, but not statically only on HKLM is pretty good think, right?

Maybe I just mixing File handling in current User context and Registry handling in current User context?

Any guidelines here would be much appreciated.

Était-ce utile?

La solution

MultiUser.nsh uses RequestExecutionLevel and SetShellVarContext.

SetShellVarContext controls where the shell special folders like $appdata resolve to and it also controls the SHCTX pseudo registry root key. This means that you should write uninstall info and file extension registration under the SHCTX key if you wish to support per-user and all users install modes in the same .exe

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top