2011-03-30 8 views
9

Comment puis-je exécuter un chemin de spécifier dans regedit à partir de cmd? Je voudrais ajouter une nouvelle clé à un service spécifique. Est-ce que quelqu'un peut m'aider? Je voudrais faire ceci d'un code de C#, mais d'abord j'essaye de le faire de cmd. Thxcmd: regedit à partir de cmd

Je voudrais naviguer de cmd à HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ services \ Service et ajouter dans le service de service une nouvelle clé avec une valeur. J'ai écrit dans cmd: regedit "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Service" add /v KeyName Parameters mais j'ai une erreur en disant qu'il ne peut pas charger le fichier. Pourquoi?

Répondre

9

Pour ajouter une entrée de registre à partir de cmd à l'aide de regedit, créez un fichier * .reg contenant les données que vous souhaitez ajouter. Exemple simple:

Windows Registry Editor Version 5.00 
[HKEY_CURRENT_USER\Software\TestKey] 
"TestDWORD"=dword:0000

puis exécutez ceci: regedit/s myreg.reg

Cela ajoute une clé (affiché comme un dossier dans le navigateur regedit) nommé TestKey à HKEY_CURRENT_USER \ Software. La clé TestKey contient une entrée DWORD nommée "TestDWORD" qui contient 123 en hexadécimal (291 en décimal)


Windows Registry Editor Version 5.00 

[HKEY_CURRENT_USER\Software\TestKey] 
"TestDWORD"=dword:0000

[HKEY_CURRENT_USER\Software\TestKey\SubKey] 
"StringEntry"="StringValue" 

Cela crée TestKey @ HKEY_CURRENT_USER \ Software plus une sous-clé "SubKey" de TestKey avec une entrée de chaîne (nommée "StringEntry") et la valeur de "StringValue"

Il existe un moyen simple de savoir comment créer différents types d'entrées: Utilisez l'interface graphique regedit pour créer les entrées souhaitées, puis marquez la touche et utilisez le menu Fichier -> Exporter. Le fichier généré contiendra la (les) clé (s) et ses entrées.


Pour créer une entrée de Registre en C#: http://msdn.microsoft.com/en-us/library/h5e7chcf.aspx

+0

merci beaucoup. Ma valeur est une valeur de chaîne. Comment puis-je écrire cela dans le fichier .reg? – elisa

+0

Je voudrais ajouter une sous-clé avec une valeur. comment faire? – elisa

+1

Il y a un moyen simple de trouver cela: Utilisez l'interface graphique regedit pour créer les entrées désirées, puis marquez la touche et utilisez le menu Fichier -> Exporter. Le fichier généré contiendra la (les) clé (s) et ses entrées. Edit: déplacé l'exemple à Answer pour un meilleur affichage. – BatteryBackupUnit

0

Je ne sais pas ce que signifie "exécuter un chemin spécifié dans regedit à partir de cmd".

Cependant, si vous souhaitez définir une clé de registre à partir d'un fichier de commandes, il suffit de créer un fichier .reg par exporter à partir Regedit, puis exécutez reg import [filename.reg] (où [filename.reg] est le nom du fichier que vous avez exporté).

Si vous souhaitez ouvrir Regedit pour afficher une certaine clé, voir How to launch Windows' RegEdit with certain path?.

+0

Je veux nagivate à HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ services \ Service où Service est un service que je crée et ajouter ici une nouvelle clé avec une valeur. – elisa

+0

@elisa: Si vous voulez naviguer automatiquement dans Regedit et ajouter manuellement une clé, lisez mon dernier paragraphe. Si vous souhaitez ajouter automatiquement une nouvelle clé au registre, consultez mon deuxième paragraphe.Il n'y a pas de moyen facile de naviguer automatiquement * et * ajouter une clé dans Regedit. – Gabe

+0

Je voudrais ajouter une sous-clé avec une valeur de chaîne et reg_sz et des données: un chemin d'accès à un chemin et une clé spécifiques. comment faire? – elisa

11

vous pouvez utiliser

reg add "HKLM\SYSTEM\CurrentControlSet\services\Service" /v "KeyName" /d "Parameters" /f 

Ce qui créerait une valeur (/ v) le nom KeyName avec des données contenant des paramètres. le commutateur/f est utilisé pour remplacer les confirmations et les interruptions afin que la commande puisse être exécutée sans l'intervention de l'utilisateur, omettre pour le test. De plus, vous pouvez remplacer/v par/ve (valeur vide) et ne pas spécifier de nom de valeur du tout. cela permet d'écrire des données (/ d) à la valeur de clé par défaut. également, si le chemin que vous avez l'intention d'écrire n'existe pas, les clés seront créées sans aucun avertissement.

pour plus d'informations tapez reg /? dans la ligne de commande