OVH Cloud OVH Cloud

Valeur binaire de Registre ...

16 réponses
Avatar
scraper
Bonjour à tous !


voila, j'ai un souci ....

je récupère une valeur de Registre (REG_BINARY)

cette valeur est du type (par exemple) :

99e6a91ce96e5b4e9419313d8f9282c3

et je souhaiterais la transformer en string ..... disons en quelque chose de
lisible lol


j'ai jamais fait ça, et n'ai donc aucune espère d'idée de par où commencer
....


un peu d'aide ou de lecture seraient les bienvenus

merci à tous par avance ;-)


--
Adresse invalide
Mon site : http://scraper.chez-alice.fr
Me contacter : http://pcland.easyforum.fr/index.htm

scraper

10 réponses

1 2
Avatar
Aski
Hello scraper,

Tu as savamment écrit :

Bonjour à tous !


voila, j'ai un souci ....

je récupère une valeur de Registre (REG_BINARY)

cette valeur est du type (par exemple) :

99e6a91ce96e5b4e9419313d8f9282c3

et je souhaiterais la transformer en string ..... disons en quelque
chose de lisible lol


j'ai jamais fait ça, et n'ai donc aucune espère d'idée de par où
commencer ....


un peu d'aide ou de lecture seraient les bienvenus

merci à tous par avance ;-)



Je ne sais pas si je suis à côté de la plaque :
décomposer en groupe de 2 caractères
convertir chaque groupe d'hexa en décimal
prendre le caractère correspondant au code ASKI ( lol ) obtenu
concaténer

Je viens de le faire sur un exemple et ça marche
Avatar
scraper
Bonjour Aski, dans le message
news:
tu disais :

Hello scraper,




hello ;-)

Je ne sais pas si je suis à côté de la plaque :
décomposer en groupe de 2 caractères
convertir chaque groupe d'hexa en décimal
prendre le caractère correspondant au code ASKI ( lol ) obtenu
concaténer

Je viens de le faire sur un exemple et ça marche



ben comme je te dis, je débute .... :-D

un exemple (le tien ? ;-) serait bienvenu ? :-)

merci ....




--
Adresse invalide
Mon site : http://scraper.chez-alice.fr
Me contacter : http://pcland.easyforum.fr/index.htm

scraper
Avatar
Aski
Hello scraper,

Tu as savamment écrit :

Bonjour Aski, dans le message
news:
tu disais :

Hello scraper,




hello ;-)

Je ne sais pas si je suis à côté de la plaque :
décomposer en groupe de 2 caractères
convertir chaque groupe d'hexa en décimal
prendre le caractère correspondant au code ASKI ( lol ) obtenu
concaténer

Je viens de le faire sur un exemple et ça marche



ben comme je te dis, je débute .... :-D



Tu rigoles. rofl

un exemple (le tien ? ;-) serait bienvenu ? :-)

merci ....



Poutant, il m'a semblé être clair.
Comme j'ai k9, j'utilise une règle d'OE : si l'objet contient [Spam] , le
placer dans ....
La valeur correspondante est
5B 53 70 61 6D 5D 00 00 00
Le premier 00 est un séparateur
les 2 derniers couples 00 00 sont les caractères de fin
convertis 5B d'hexa en décimal et recherche le code Ascii, tu trouveras bien
[ ...

Si tu veux, je t'écris volontiers le code sur ton exemple, mais tu dois
savoir faire.
Ou je recherche celui que j'ai écrit ...
Avatar
Fred
dans : news:,
scraper écrivait :

Bonjour à tous !



Hello scraper,

voila, j'ai un souci ....

je récupère une valeur de Registre (REG_BINARY)



Dans quoi la récupères-tu ? Un tableau de Byte ?

cette valeur est du type (par exemple) :

99e6a91ce96e5b4e9419313d8f9282c3



D'où cette chaîne provient-elle ? C'est ce que tu vois avec regedit ou
bien tu l'as déjà sous cette forme (String) dans ton programme ?

et je souhaiterais la transformer en string ..... disons en quelque
chose de lisible lol



Comme le dit Aski, je ne vois pas ce qu'on peut faire de plus lisible
mis à part séparer en groupe de 2 caractères. Chaque paire de caractères
représentant un octet (espace 20, CR 0D, LF 0A, esc 1B ...)
Tout dépend ensuite de ce qu'est censé représenter cette suite d'octets.
Si c'est une chaîne de caractère, alors chaque octet représente un code
de caractère. Mais j'en doute. Dans le registre, les chaînes que j'ai
vues représentées en REG_BINARY sont plutôt en Unicode (2 octets par
caractère) et donc quasiment un zero tous les deux octets. Cela ne
semble pas être le cas.

j'ai jamais fait ça, et n'ai donc aucune espère d'idée de par où
commencer ....



Commence par préciser ta question et, pourquoi pas, nous dire de quelle
valeur du registre il s'agit ;-)


--
Fred
http://www.cerbermail.com/?3kA6ftaCvT
Avatar
scraper
Bonjour Fred, dans le message
news:%
tu disais :

je récupère une valeur de Registre (REG_BINARY)



Dans quoi la récupères-tu ? Un tableau de Byte ?



dans un string

cette valeur est du type (par exemple) :

99e6a91ce96e5b4e9419313d8f9282c3



D'où cette chaîne provient-elle ? C'est ce que tu vois avec regedit ou
bien tu l'as déjà sous cette forme (String) dans ton programme ?



je la vois (presque) telle que, et je la récupère dans un string

et je souhaiterais la transformer en string ..... disons en quelque
chose de lisible lol



Comme le dit Aski, je ne vois pas ce qu'on peut faire de plus lisible
mis à part séparer en groupe de 2 caractères. Chaque paire de
caractères représentant un octet (espace 20, CR 0D, LF 0A, esc 1B ...)
Tout dépend ensuite de ce qu'est censé représenter cette suite
d'octets. Si c'est une chaîne de caractère, alors chaque octet
représente un code de caractère. Mais j'en doute. Dans le registre,
les chaînes que j'ai vues représentées en REG_BINARY sont plutôt en
Unicode (2 octets par caractère) et donc quasiment un zero tous les
deux octets. Cela ne semble pas être le cas.



j'ai fait ceci ...
ça me semblait pas bon, j'ai donc incriminé la fonction .... or je crois que
c'est le contenu de la clé qui est pas exploitable ?
(ou codé ??)


Commence par préciser ta question et, pourquoi pas, nous dire de
quelle valeur du registre il s'agit ;-)



je voudrais lire (et comprendre) cette entrée :

HKEY_CURRENT_USERSoftwareMicrosoftInternet Account
ManagerAccountsAssociatedID

merci ;-)



--
Adresse invalide
Mon site : http://scraper.chez-alice.fr
Me contacter : http://pcland.easyforum.fr/index.htm

scraper
Avatar
scraper
Bonjour Aski, dans le message
news:
tu disais :

Si tu veux, je t'écris volontiers le code sur ton exemple, mais tu
dois savoir faire.
Ou je recherche celui que j'ai écrit ...




finalement, j'ai fait un essai sur une autre clé, et là mon code fonctionne

(vois ma réponse à Fred ..)

je pense que la clé est codée ? :-(




--
Adresse invalide
Mon site : http://scraper.chez-alice.fr
Me contacter : http://pcland.easyforum.fr/index.htm

scraper
Avatar
Aski
Hello scraper,

Tu as savamment écrit :

Bonjour Aski, dans le message
news:
tu disais :

Hello scraper,




hello ;-)

Je ne sais pas si je suis à côté de la plaque :
décomposer en groupe de 2 caractères
convertir chaque groupe d'hexa en décimal
prendre le caractère correspondant au code ASKI ( lol ) obtenu
concaténer

Je viens de le faire sur un exemple et ça marche



ben comme je te dis, je débute .... :-D

un exemple (le tien ? ;-) serait bienvenu ? :-)



Voici une partie de ce que jai utilisé pour les règles de messages

Public Sub DecodeValue(Ind As Integer, Value As String) ', nb As Integer)
Dim BeginS As Integer, LenS As Integer, Pos As Integer
Dim S As String, Sx As String
Dim Continue As Boolean
On Error GoTo Over

LenS = Len(Value) - 2
'supprimer les 2 derniers caractères nuls
S = Left$(Value, LenS)
Continue = V: BeginS = 1: nbEl(Ind) = 0
While Continue
nbEl(Ind) = nbEl(Ind) + 1
Pos = InStr(BeginS, S, Chr(0))
LenS = Pos - BeginS: Sx = Mid$(S, BeginS, LenS)
Select Case Ind
Case 0: ReDim Preserve T0(nbEl(Ind)): T0(nbEl(Ind) - 1) = Sx
Case 1: ReDim Preserve T1(nbEl(Ind)): T1(nbEl(Ind) - 1) = Sx
Case 2: ReDim Preserve T2(nbEl(Ind)): T2(nbEl(Ind) - 1) = Sx
Case 3: ReDim Preserve T3(nbEl(Ind)): T3(nbEl(Ind) - 1) = Sx
End Select
BeginS = Pos + 1
Wend
Exit Sub
Over:
nbEl(Ind) = nbEl(Ind) - 1
End Sub

Il reste à convertir chaque doublon par Val("&Hxx")
Avatar
Fred
Dans : news:,
scraper disait :

je voudrais lire (et comprendre) cette entrée :

HKEY_CURRENT_USERSoftwareMicrosoftInternet Account
ManagerAccountsAssociatedID




OK.
Cette clé correspond au GUID stocké dans :
HKEY_CURRENT_USERIdentitiesDefault User ID

à quelques inversions près correspondant aux différents groupes de la
représentation d'un GUID
mais je laisse ta perspicacité faire le reste ! ;-)

Bonne prog !

--
Fred
http://www.cerbermail.com/?3kA6ftaCvT
Avatar
scraper
Bonjour Fred, dans le message
news:uct%
tu disais :


OK.
Cette clé correspond au GUID stocké dans :
HKEY_CURRENT_USERIdentitiesDefault User ID



c'est ce à quoi je m'attendais .... mais j'avoue planter lamentablement sur
la lecture de cette entrée :-(

à quelques inversions près correspondant aux différents groupes de la
représentation d'un GUID



euh, je sais même pas de quoi tu me causes là ? lol
mais si tu me dis ça, j'imagine que tu peux la lire, toi ? ;-)

mais je laisse ta perspicacité faire le reste ! ;-)

Bonne prog !



mal barré ....

merci de m'aguicher comme ça, mais je baisse les bras :-(


amicalement





--
Adresse invalide
Mon site : http://scraper.chez-alice.fr
Me contacter : http://pcland.easyforum.fr/index.htm

scraper
Avatar
Fred
Dans : news:,
scraper disait :
Bonjour Fred, dans le message
news:uct%
tu disais :


OK.
Cette clé correspond au GUID stocké dans :
HKEY_CURRENT_USERIdentitiesDefault User ID



c'est ce à quoi je m'attendais .... mais j'avoue planter
lamentablement sur la lecture de cette entrée :-(

à quelques inversions près correspondant aux différents groupes de la
représentation d'un GUID



euh, je sais même pas de quoi tu me causes là ? lol
mais si tu me dis ça, j'imagine que tu peux la lire, toi ? ;-)



Je te donne l'exemple que j'ai dans on registre :
Voilà mon identité (qui correspond à Default User ID) :
HKEY_CURRENT_USERIdentities{9CB1C4D5-9A5F-4B9A-B6DC-DD40EDB07ACB}

Soit 9C B1 C4 D5 | 9A 5F | 4B 9A | B6 DC | DD 40 ED B0 7A CB

(j'ai séparé en octets et dissocié les groupes)

Voilà la valeur que j'ai dans AssociatedID :
D5 C4 B1 9C 5F 9A 9A 4B B6 DC DD 40 ED B0 7A CB
que je sépare en groupes comme le GUID
D5 C4 B1 9C | 5F 9A | 9A 4B | B6 DC | DD 40 ED B0 7A CB

Tu remarques que les trois premiers groupes contiennent les mêmes octets
mais dans l'ordre inverse.
Les deux derniers ont les mêmes octets, et dans le même ordre.
Il faudrait étudier la composition d'un GUID pour expliquer cela mais je
ne pense pas que cela soit nécessaire pour résoudre ton problème. Ce
sont sans doute des histoires de petits boutiens et grands boutiens lol

merci de m'aguicher comme ça, mais je baisse les bras :-(



Et bien voila de quoi repartir je pense :-)

--
Fred
http://www.cerbermail.com/?3kA6ftaCvT
1 2