dword:
= DWORD
hex(2):
= Chaîne extensible
hex(7):
= Multi-String
A DWORD
est un entier non signé 32 bits (plage décimale: 0
- 4294967295
) et, dans le registre, a DWORD
commence toujours par 0x
et comporte 8 chiffres qui suivent 0x
. Cela peut être au format décimal ou hexadécimal; par exemple, 1000
peut être écrit comme 0x00001000
ou 0x000003e8
.
DWORDS
ne peut utiliser que les chiffres 0
- 9
. Les chaînes, de toute sorte, utilisent toujours ASCII, et en ACSII, 1000
ne peuvent être écrites qu'en 31,30,30,30
. Pour le type de données String, ASCII fonctionne en arrière-plan sans même que vous le sachiez car l'ordinateur ne comprend que les 1 et les 0.
Pour les types de données à chaîne extensible et à chaînes multiples, ceux-ci enregistrent vos entrées sous la forme d'une série de codes ASCII au format hexadécimal, séparés par des virgules et des zéros hexadécimaux; donc une chaîne extensible 1000
seraithex(2):31,00,30,00,30,00,30,00
Convertissons %PROGRAMFILES%
en une chaîne extensible:
- Utilisez un outil de conversion ASCII en hexadécimal , entrez
%PROGRAMFILES%
dans la zone de texte, délimiteur de sortie défini par l'utilisateur:, %
sélectionnez Convertir, et cela vous donnera:
%25%50%52%4F%47%52%41%4D%46%49%4C%45%53%25
- Copiez / collez le résultat dans un éditeur de texte: déplacez le premier
%
à la fin, recherchez / remplacez tout %
par ,00,
et supprimez la virgule à la fin de la chaîne. Tu devrais obtenir:
25,00,50,00,52,00,4F,00,47,00,52,00,41,00,4D,00,46,00,49,00,4C,00,45,00,53,00,25,00
- Finalement:
hex(2):25,00,50,00,52,00,4F,00,47,00,52,00,41,00,4D,00,46,00,49,00,4C,00,45,00,53,00,25,00
Cette leçon contient toutes les connaissances nécessaires pour effectuer une rétro-ingénierie de toute entrée de registre à code hexadécimal non chiffrée.
.bat
fichier avec unereg
commande au lieu d'un.reg
fichier), mais pourquoi parle-t-il de REG_MULTI_SZ lorsque la question concerne REG_EXPAND_SZ?