cs_inuktikut
Messages postés4Date d'inscriptionjeudi 8 mars 2007StatutMembreDernière intervention14 août 2008
-
8 mars 2007 à 18:12
troxsa
Messages postés553Date d'inscriptionjeudi 28 novembre 2002StatutMembreDernière intervention 2 octobre 2016
-
9 mars 2007 à 00:15
Bonjour,
Je voudrais savoir si il existe un script qui me permettrait de récupérer à distance des valeurs dans des clés de registre (dont je connais le chemin) sur plusieurs PC (voir même tous les PC) et mettre ça dans un fichier texte ou autre ?
En résumé, je lance un .vbs (par ex, car je n'ai rien pour compiler) et ensuite je consulte un .txt qui me liste comme ci-dessous: (par ex)
ORDINATEUR1
(valeur de la clé= HKLM\Software\TheProgram\dossier1\sousdossier2\) clé SERIALNUMBER= xxxxxxxxxxx
(valeur de la clé= HKLM\Software\TheProgram\dossier1\sousdossier2\) clé ACTIVATIONKEY= xxxxxxxxxxx
(valeur de la clé= HKLM\Software\TheProgram\dossier1\sousdossier2\) clé VERSION= xxxxxxxxxxx
etc....
ORDINATEUR2
(valeur de la clé= HKLM\Software\TheProgram\dossier1\sousdossier2\) clé SERIALNUMBER= xxxxxxxxxxx
(valeur de la clé= HKLM\Software\TheProgram\dossier1\sousdossier2\) clé ACTIVATIONKEY= xxxxxxxxxxx
(valeur de la clé= HKLM\Software\TheProgram\dossier1\sousdossier2\) clé VERSION= xxxxxxxxxxx
etc....
ORDINATEUR3
(valeur de la clé= HKLM\Software\TheProgram\dossier1\sousdossier2\) clé SERIALNUMBER= xxxxxxxxxxx
(valeur de la clé= HKLM\Software\TheProgram\dossier1\sousdossier2\) clé ACTIVATIONKEY= xxxxxxxxxxx
(valeur de la clé= HKLM\Software\TheProgram\dossier1\sousdossier2\) clé VERSION= xxxxxxxxxxx
etc....
Je suis aussi preneur sur des liens, des tutoriels, des bouquins pour apprendre le VBS par exe, ou tout autre prog qui me permettrait de me lancer la-dedans !
Merci d'avance
ad vitam aeternam
Messages postés17Date d'inscriptionjeudi 19 mai 2005StatutMembreDernière intervention10 mars 2008 8 mars 2007 à 18:47
Salut Inuktikut!
Ok voici peut-être une partier de la réponse à ce que tu cherches; c'est une API:
Fonction RegQueryValueEx
Declare Function RegQueryValueEx Lib "advapi32.dll" Alias "RegQueryValueExA" ( _
ByVal hKey As Long, _
ByVal lpValueName As String, _
ByVal lpReserved As Long, _
lpType As Long, _
lpData As Any, _
lpcbData As Long)As Long
Versions : . Windows 95/98 : Oui . Windows NT : A partir de 3.1 . Windows 2000/XP : Oui
Description :
Cette fonction est à utiliser pour récuperer la valeur d'une clé que l'on aura ouvert ou crée au préalable.
hKey est le handle retourné par la fonction d'ouverture ou de création.
lpValueName est le nom de la valeur que l'on veut récuperer. Pour les valeurs "(Défaut)" il faut donner une chaîne vide en paramêtre.
lpReserved, réservé, à mettre à 0.
lpType stocke le type de donnée qui sera récupéré. Les valeurs possibles sont données dans le tableau ci-dessous.
lpData est la variable dans laquelle sera retournée la valeur lue (initialisation du buffer avant appel à la fonction...).
lpcbData est la longueur du buffer lpData.
Après execution, la fonction retourne la longueur réelle de la variable lpData.
<center>
Constante,
Valeur,
Définition,
----
REG_NONE,
0,
Non défini.,
----
REG_SZ,
1,
Chaîne terminée par un caractère nul.,
----
REG_BINARY,
3,
Valeur binaire.,
----
REG_DWORD,
4,
Mot sur 4 octets.,
----
REG_DWORD_BIG_ENDIAN,
5,
Mot sur 4 octets dont le poids fort est à l'adresse inférieure.,
----
REG_LINK,
6,
Définition d'un lien.,
----
REG_MULTI_SZ,
7,
Ensemble de chaînes terminées par un caractère nul. La fin est signalée par deux caractères nuls.
</center>
Alors maintenant comment ouvrir cette fameuse clé? L'API RegOpenKey; après manipulation n'oublie pas de la refermer avec RegCloseKey.
Après avori déclaré dans un module tes API (avec la clé Public). tu appelle leurs fonctions à l'endroit voulu dans ton programme (par exemple dans l'événement form_load ou autre). Tu ouvre la clé (RegOpenKey) tu lis sa valuer dans un variable tu met cette valeur dans un fichier texte. (Open file #1 as Input File) tu écris ta clé dedans (print #1 "Ordiateur1" & maclé) puis tu ferme la clé avec RegCloseKey et tu boucles pour recommencer pour tous tes ordinateurs.
Je sais; je dois bien le reconnaître, je ne suis pas vraiment clair mais je ne me souvient pas des lignes exactes de commandes et je n'ai guère le temps de les chercher (je suis sur un ordinateur public) aussi excuse moi! Celà dis il ne me semble pas particulièrement difficile de les trouvers! :)
Bonne continuation
En espérant t'avoir dégrossit la recherche
ad vitam aeternam
cs_JMO
Messages postés1854Date d'inscriptionjeudi 23 mai 2002StatutMembreDernière intervention24 juin 201827 8 mars 2007 à 20:37
Bonsoir,
si vous voulez parcourir x servers en vbs, il vous faudra utiliser wmi et wbem et RegRead pour les clés.
un petit exemple suite à un ancien topic.
En mettant les serveurs et les clés dans un tableau ou dictionary + parcours base, fichier...
pour les users/pssw, c'est "aisément" réalisable.