Ajouter une clé HKEY_CURRENT_USER pour tous les utilisateurs
J'ai un installeur qui installe une touche sur la clé de registre HKEY_CURRENT_USER. Quand je lance le programme d'installation, il ne s'ajouter à l'utilisateur de l'installation. Est-il possible d'ajouter la clé de tout utilisateur à la fois ?
Grâce
Vous devez vous connecter pour publier un commentaire.
Vous auriez à passer à travers tous les différents utilisateurs dans
HKEY_USERS
, ce qui nécessite de droits élevés. Et ne capture pas tous les utilisateurs qui n'ont pas encore été créé. C'est juste pas la bonne approche.La façon de le faire est d'ajouter les valeurs par défaut correspondant du clé sous
HKLM
au moment de l'installation. Lorsque votre programme tente de lire à partir du registre, il ressemble àHKCU
premier, et si votre clé n'est pas présente, il copie les informations de la clé correspondante dansHKLM
à la clé dansHKCU
.Une règle générale d'installer des programmes, c'est qu'ils ne doivent pas compter sur d'être exécuté par l'utilisateur qui sera par la suite utiliser le programme qui a été installé. Certes dans l'entreprise des paramètres de programmes sont généralement installés sous un compte d'utilisateur qui ne le seront jamais par la suite d'exécuter le programme en cours d'installation.
Dans certains cas, le programme d'Installation Active peut être la solution.
Il fonctionne en ajoutant une clé de HKLM\SOFTWARE\Microsoft\Active Setup\installed Components\%nom du package% avec un numéro de version. Lorsqu'un utilisateur se connecte à Windows vérifie cet emplacement et la compare à HKCU\SOFTWARE\Microsoft\Active Setup\installed Components\%nom du package%. S'il est manquant ou une version inférieure puis il exécute tout ce qui a été mis en HKLM\SOFTWARE\Microsoft\Active Setup\installed Components\%nom du package%\StubPath.
Vous pouvez faire quelques choses de cette façon, par exemple, je l'ai utilisé pour ajouter un certain script (pour mapper un lecteur réseau) à l'
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
la manière suivante:
Ce qui se passe ici:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Active Setup\installed Components\MapDrive.
Il n'est, par conséquent, il crée et dirige également la deuxième commande reg add, ce qui ajoute une chaîne de caractères avec une valeur C:\map.cmd sous HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
Air compliqué, mais en sens qu'une fois que vous le comprendre, et très utile.
http://wpkg.org/Adding_Registry_Settings#Adding_entries_to_HKCU_for_all_users
C'est mon processus comme je travaille actuellement dans Windows 7
Trouver la clé/s que vous souhaitez sous HKCU dans regedit, de l'exporter/eux.
Maintenant, cliquez-droit sur la clé HKEY_USERS et sélectionnez charger la ruche. Accédez à C:\Users\Default et sélectionnez NTUSER.DAT. Nom de la ruche ce que vous voulez (par exemple NAMEHERE).
dans votre fichier reg exporté remplacer toutes les instances de
[HKEY_CURRENT_USER\
avec
[HKEY_USERS\NAMEHERE\
(ou ce que vous avez nommé votre ruche)
et enregistrez le fichier
double-cliquez sur le fichier reg pour la fusionner
Mettre en évidence la NAMEHERE clé et sélectionnez décharger la ruche.
Maintenant pour tout les nouveaux profils ils obtenir ces clés. Les profils existants ne pas bien donc vous n'aurez pas le voir travailler si vous vous connectez avec un pré-profil existant. Si vous souhaitez supprimer le profil que j'ai trouver la façon la plus propre est droit sur poste de travail, sélectionnez propriétés, paramètres système avancés, puis sélectionnez les paramètres dans le profil d'utilisateur. Mettez en surbrillance le profil que vous souhaitez supprimer et sélectionnez supprimer.
Il semble que cela ne fonctionne pas tout le temps. Je suis ici à la recherche d'informations sur pourquoi cela ne fonctionne pas pour les clés, je suis en train d'ajouter des sous
HKEY_CURRENT_USER\Software\Classes\ mais jusqu'à présent cela a toujours fonctionné. Je vais ajouter une note si je vois pourquoi cela ne fonctionne pas, je suis en train de se demander si je dois l'ajouter par le biais de politiques dans le contexte de l'utilisateur.
Je pense que la meilleure façon de le faire est par GPO.
Créer un objet de stratégie de groupe pour modifier la
HKCU
qui s'appliquent aux changements que vous souhaitez apporter aux utilisateurs touchés par cet objet de stratégie de groupe.La suite Microsoft KB pourrait aider à mettre en œuvre ce:
http://technet.microsoft.com/en-us/library/bb742499.aspx
Non, il n'y a aucun moyen de le faire.
Pense que dans ce scénario: vous avez installé l'application, puis un nouveau compte d'utilisateur est créé. Comment pouvez-vous ajouter une clé de registre pour ce nouveau compte lors de l'installation?
Ou la seule façon de le faire est lorsque l'utilisateur lance l'application. C'est votre application crée la clé avec des valeurs par défaut au premier lancement.