Il s'agit de la commande hivexregedit qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks en utilisant l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS
PROGRAMME:
Nom
hivexregedit - Fusionnez et exportez les modifications du registre à partir de fichiers au format regedit.
SYNOPSIS
hivexregedit --merge [--prefix préfixe] [--encoding enc] \
fichier-ruche [fichier reg]
hivexregedit --export [--prefix prefix] clé du fichier hive > regfile
DESCRIPTION
Veuillez noter que hivexregedit est un outil de bas niveau permettant de manipuler directement les fichiers ruche. À
fusionner ou exporter les modifications du registre vers les machines virtuelles Windows qu'il est préférable d'utiliser
virt-gagnant-reg (1).
Étant donné un fichier binaire local ("hive"), il existe deux modes. Importations "--merge" (fusions)
changements d'un fichier au format regedit dans la ruche. C'est similaire à l'utilisation du commutateur "/s"
dans Windows regedit.exe.
"--export" exporte une clé de registre (récursivement) au format regedit.
CODAGE
"hivexregedit" s'attend à ce que les fichiers regedit aient déjà été ré-encodés dans le local
codage. Habituellement sur les hôtes Linux, cela signifie UTF-8 avec des fins de ligne de style Unix. Depuis
Les fichiers regedit de Windows sont souvent en UTF-16LE avec des fins de ligne de style Windows, vous aurez peut-être besoin
pour ré-encoder l'intégralité du fichier avant ou après traitement.
Pour ré-encoder un fichier du format Windows vers Linux (avant de le traiter avec le "--merge"
option), vous feriez quelque chose comme ceci:
iconv -f utf-16le -t utf-8 < win.reg | dos2unix > linux.reg
Pour aller dans le sens inverse, après avoir utilisé "--export" et avant d'envoyer le fichier à un
Utilisateur Windows, faites quelque chose comme ceci :
unix2dos < linux.reg | iconv -f utf-8 -t utf-16le > win.reg
Pour plus d'informations sur l'encodage, consultez Gagner ::Hivex ::Regedit (3).
Si vous n'êtes pas sûr de l'encodage actuel, utilisez le filet(1) commande. Les versions récentes de
Windows regedit.exe produit un fichier UTF-16LE avec des fins de ligne de style Windows (CRLF), comme
ce:
Fichier $ software.reg
software.reg : texte Unicode UTF-16 Little-Endian, avec de très longues lignes,
avec terminaisons de ligne CRLF
Ce fichier aurait besoin d'être converti avant que vous ne puissiez le "--merger".
SHELL CITATION
Soyez prudent lorsque vous passez des paramètres contenant "\" (barre oblique inverse) dans le shell. Habituellement, vous
devra utiliser des « guillemets simples » ou des doubles barres obliques inverses (mais pas les deux) pour les protéger de
La coquille.
CurrentControlSet et ainsi de suite
Les clés de registre telles que "CurrentControlSet" n'existent pas vraiment dans le registre Windows au
niveau du fichier ruche, et vous ne pouvez donc pas les modifier.
"CurrentControlSet" est généralement un alias pour "ControlSet001". Dans certaines circonstances, il
peut faire référence à un autre ensemble de contrôles. Le moyen de le savoir est de regarder le
Touche "HKLM\SYSTEM\Select" :
$ hivexregedit --export SYSTEM '\Select'
[\Sélectionner]
"Actuel"=dword:00000001
"Par défaut"=dword:00000001
"Échec"=dword:00000000
"LastKnownGood"=dword:00000002
"Current" est celui que Windows choisira au démarrage.
De même, d'autres clés "Current..." dans le chemin peuvent avoir besoin d'être remplacées.
EXEMPLE
$ virt-cat WindowsGuest /Windows/System32/config/software > software.hive
$ hivexregedit --export \
--préfixe 'HKEY_LOCAL_MACHINE\SOFTWARE' \
software.hive '\Microsoft' > ms-keys.reg
$ hivexregedit --merge système.hive \
--prefix 'HKEY_LOCAL_MACHINE\SYSTEM' additions.reg
OPTIONS
--Aidez-moi
Afficher l'aide.
--déboguer
Activez le débogage dans la bibliothèque hivex. Ceci est utile pour diagnostiquer les bogues et aussi
fichiers ruche malformés.
--fusionner
hivexregedit --merge [--prefix préfixe] [--encoding enc] \
fichier-ruche [fichier reg]
Fusionnez "regfile" (un fichier texte au format regedit) dans le "hivefile" de la ruche. Si "fichier reg"
est omis, alors le programme lit à partir de l'entrée standard. (Vous pouvez également donner plusieurs
fichiers d'entrée).
"--prefix" spécifie le préfixe du registre Windows. Il est presque toujours nécessaire de
utilisez-le lorsque vous traitez de vrais fichiers ruche.
"--encoding" spécifie l'encodage des chaînes non marquées dans l'entrée. Il est par défaut
"UTF-16LE" qui devrait fonctionner pour les versions récentes de Windows. Une autre possibilité est
pour utiliser "ASCII".
--exportation
hivexregedit --export [--prefix prefix] clé du fichier hive > regfile
"key" est un chemin dans la ruche "hivefile". (La clé ne doit contenir aucun préfixe
et doit être cité pour défendre les barres obliques inverses du shell). La clé est exportée,
récursivement, à la sortie standard au format textuel regedit.
"--prefix" spécifie le préfixe du registre Windows. Il est presque toujours nécessaire de
utilisez-le lorsque vous traitez de vrais fichiers ruche.
--préfixe préfixe
Les fichiers Hive et les noms de clé de registre Windows sont indirectement liés. Par exemple, à l'intérieur
la ruche du logiciel, toutes les clés sont stockées par rapport à "HKEY_LOCAL_MACHINE\SOFTWARE".
Ainsi, "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft" apparaît dans le fichier ruche sous la forme "\Microsoft".
Le format de la ruche lui-même ne stocke pas ce préfixe, vous devez donc le fournir en fonction de
connaissance extérieure. (virt-gagnant-reg(1), entre autres, le sait déjà).
Généralement il suffit de passer le paramètre "--prefix
'HKEY_LOCAL_MACHINE\SOFTWARE'" ou similaire lors des fusions et des exportations.
--codage UTF-16LE|ASCII
Lors de la fusion (uniquement), vous devrez peut-être spécifier l'encodage des chaînes à utiliser dans
le fichier ruche. Ceci est expliqué en détail dans "ENCODING STRINGS" dans
Gagner ::Hivex ::Regedit (3).
La valeur par défaut est d'utiliser UTF-16LE, qui devrait fonctionner avec les versions récentes de Windows.
--chaînes-imprimables-unsafe
Lors de l'exportation (uniquement), supposez que les chaînes sont UTF-16LE et imprimez-les sous forme de chaînes à la place
de séquences hexadécimales. Supprimez le point de code zéro final des chaînes s'il est présent.
Ceci est dangereux et ne préserve pas la fidélité des chaînes dans la ruche d'origine pour
raisons diverses:
· Suppose que l'encodage d'origine est UTF-16LE. chaînes ASCII et chaînes dans d'autres
les encodages seront corrompus par cette transformation.
· Suppose que tout ce qui a le type 1 ou 2 est vraiment une chaîne et que
tout le reste n'est pas une chaîne, mais le champ type dans les vraies ruches n'est pas fiable.
· Perd l'information indiquant si un point de code zéro a suivi la chaîne dans la ruche
ou non.
Tout cela se produit parce que la ruche elle-même ne contient aucune information sur la façon dont les chaînes sont
encodé (voir « ENCODAGE DES CHAÎNES » dans Gagner ::Hivex ::Regedit(3)).
Vous ne devez utiliser cette option que pour le piratage et le débogage rapides du contenu de la ruche,
et jamais utilisez-le si la sortie doit être transmise à un autre programme ou stockée dans
une autre ruche.
Utilisez hivexregedit en ligne en utilisant les services onworks.net
