[..] Lire une valeur de la base de registre PC distant

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Hugues
Niveau 8
Niveau 8
Messages : 597
Enregistré le : ven. 21 sept. 2012 18:12
Status : Hors ligne

[..] Lire une valeur de la base de registre PC distant

#1

Message par Hugues »

Bonjour,

Je souhaiterai lire dans la base de registre de pc pour récupérer la version du processeur.
Je liste l'adresse IP et la mnémonique dans un fichier ini.
J'ai trouvé ce code sur Internet qui me convient.
Je ne sais pas comment faire pour lire à distance sur la base de registre d'un autre pc... Je ne sais pas si c'est autorisé...
Dans mon code je pense qu'il manque user et mot de passe car dans le cas presént, il me renvoie aucune valeur...

Merci par avance.
► Afficher le texte
Avatar du membre
TopXm
Niveau 6
Niveau 6
Messages : 260
Enregistré le : mer. 25 mai 2011 16:37
Localisation : Usa
Status : Hors ligne

Re: [..] Lire une valeur de la base de registre PC distant

#2

Message par TopXm »

Salut,

De mémoire tu dois aussi avoir un service d'accès à distance au registre qui est rarement démarré.
Hugues
Niveau 8
Niveau 8
Messages : 597
Enregistré le : ven. 21 sept. 2012 18:12
Status : Hors ligne

Re: [..] Lire une valeur de la base de registre PC distant

#3

Message par Hugues »

Je dois dire que je suis un peu sec là...
Avatar du membre
TopXm
Niveau 6
Niveau 6
Messages : 260
Enregistré le : mer. 25 mai 2011 16:37
Localisation : Usa
Status : Hors ligne

Re: [..] Lire une valeur de la base de registre PC distant

#4

Message par TopXm »

:) ça se trouve je me gourre complet, mais c'est de ça dont je parle : Base de registre distante
Hugues
Niveau 8
Niveau 8
Messages : 597
Enregistré le : ven. 21 sept. 2012 18:12
Status : Hors ligne

Re: [..] Lire une valeur de la base de registre PC distant

#5

Message par Hugues »

Je sais pas...

Mes PC sont sous WIN XP. Là c'est peut-être moi qui fait fause route, mais on ne pourrait pas utiliser le User et mot de passe pour avoir accès à la base de registre avec un RegRead? Ou bien faut-il passer avec un WMI?

Désolé c'est pas trop mon domain tout ça lol.
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2515
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Lire une valeur de la base de registre PC distant

#6

Message par jguinch »

En plus du service d'accès à distance au registre, il faut les droits suffisants (admin) pour se connecter à la machine distante.
Dans ce cas, il faut exécuter le script avec un autre compte.
Si c'est pas possible d'exécuter le script avec un autre compte, il faudra voir du côté de WMI (recherche ConnectServer + StdRegProv)


Edit : regarde ça, ça ressemble un peu à ce que tu veux faire : https://www.autoitscript.com/forum/topi ... different/
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Hugues
Niveau 8
Niveau 8
Messages : 597
Enregistré le : ven. 21 sept. 2012 18:12
Status : Hors ligne

Re: [..] Lire une valeur de la base de registre PC distant

#7

Message par Hugues »

Oui j'ai 2 types d'accès sur mes IPC, 1 compte utilisateur et un compte administrateur.
Hugues
Niveau 8
Niveau 8
Messages : 597
Enregistré le : ven. 21 sept. 2012 18:12
Status : Hors ligne

Re: [..] Lire une valeur de la base de registre PC distant

#8

Message par Hugues »

J'ai essayé les 2 scripts, mais ça ne fonctionne pas...
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2515
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Lire une valeur de la base de registre PC distant

#9

Message par jguinch »

En fait, il suffit de se connecter aux partages administratif du PC distant (en spécifiant le login/mdp) :

Code : Tout sélectionner

DriveMapAdd("", "\\SERVER\IPC$", 0, "administrateur", "XXXXXX")
et après RegRead("\\SERVER\HKLM\....")


Sinon, j'ai fouiné un peu et j'ai lu un truc intéressant sur MSDN à propos de RegConnectRegistry (_WinAPI_RegConnectRegistry)
MSDN a écrit :If the current user does not have proper access to the remote computer, the call to RegConnectRegistry fails. To connect to a remote registry, call LogonUser with LOGON32_LOGON_NEW_CREDENTIALS and ImpersonateLoggedOnUser before calling RegConnectRegistry.
Donc à priori ça fonctionne en utilisant l'appel à LogonUser puis ImpersonateLoggedOnUser avant de faire le RegRead
► Afficher le texte
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Hugues
Niveau 8
Niveau 8
Messages : 597
Enregistré le : ven. 21 sept. 2012 18:12
Status : Hors ligne

Re: [..] Lire une valeur de la base de registre PC distant

#10

Message par Hugues »

J'ai fait ça, je ne sais pas si la structure est correct... Ca à l'air de fonctionner ^^ Je vais regarder ta solution, elle à l'air beaucoup plus propre ^^

J'espère que cela ne risque pas d'endommager la base de registre de mes PCs... Sinon je vais me faire appeler Marcel lol
► Afficher le texte
davzell
Niveau 5
Niveau 5
Messages : 105
Enregistré le : jeu. 26 sept. 2013 14:15
Status : Hors ligne

Re: [..] Lire une valeur de la base de registre PC distant

#11

Message par davzell »

moi je l'avais fait avec des commandes dos, @compspec le tout en RunAs comme ca tu peux t'authentifier

Code : Tout sélectionner

 $DOS = RunAs($user, $Domain, $mdpPC, 0, @ComSpec & " /k reg query \\" & $NomPC & "\HKLM\SYSTEM\CurrentControlSet\Services\uvnc_service /v ImagePath", "", @SW_HIDE, $STDERR_CHILD + $STDOUT_CHILD)
ensuite fallait récupérer les données lu avec la fonction StdoutRead
Répondre