IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBScript Discussion :

exporter le base de registre


Sujet :

VBScript

  1. #1
    Débutant  
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Points : 2 415
    Points
    2 415
    Par défaut exporter le base de registre
    bonjour, est-ce possible en vbs d'exporter toute le base de registre de windows ?

  2. #2
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Qu'est ce que tu veux faire ?
    Parce qu'exporter toute la BDR de windows cela ne sert à rien, et elle est très volumineuse.
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

  3. #3
    Débutant  
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Points : 2 415
    Points
    2 415
    Par défaut
    en fait je veut faire deux sauvegardes pour les comparer et voir les clés qui on été modifier

  4. #4
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Est ce un programme qui modifie les clés ?
    parce que le mieux est de ciblés les clés que tu veux comparer.
    Comparer toutes les clés d'un PC avec celui d'un autre ou même le tiens (cas de comparaison entre une veille BDR et la récente en cours d'utilisation) c'est très long, très lourd et cela n'a aucun intérêt, car il y a plein de clé qui change de valeurs et pour des raisons tout à fait justifié.

    En plus le résultat serait tellement voluminuex et foullis que son interprétation serait infaisable.
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

  5. #5
    Débutant  
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Points : 2 415
    Points
    2 415
    Par défaut
    je voudrai quand même essayer, il y a bien des logiciels qui font ca

  6. #6
    Débutant  
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Points : 2 415
    Points
    2 415
    Par défaut
    Des fois je cherche quel clé est modifier quand je modifi un paramétre d'un application, comme ca je fait un fichier .reg pour paramétrer la plu par de mes application par le registre, cela est trsé pratique parce que je réionstalle souvent windows.

    Lorsque je veut chercher quel clé est modifier lorsque je modifi tel partamétre, j'utilise un logiciel avec le quel on fait un premier scan le la BDR, pui on modifi le paramétrer dans l'application, puis on fait le deuxième scan, puis on compare les deux scan.

    Je voudrai créer un script pour faire cela, voila

  7. #7
    Membre averti
    Inscrit en
    Août 2007
    Messages
    302
    Détails du profil
    Informations personnelles :
    Âge : 57

    Informations forums :
    Inscription : Août 2007
    Messages : 302
    Points : 341
    Points
    341
    Par défaut
    Salut,

    encore une fois les bonnes vieilles commandes Dos nous simplifient les choses :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Set objShell = CreateObject("Wscript.Shell")
    objShell.Run "Cmd /c regedit /e c:\registre.reg"
    Bon courage pour éplucher les infos

    A++
    Plus tu pédales moins vite, moins t'avances plus vite.

  8. #8
    Débutant  
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Points : 2 415
    Points
    2 415
    Par défaut
    je connaissez la commande reg mais pas regedit
    reg ne permet pas une sauvegarde complette

  9. #9
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Regedit je l'utilise tous les jours pour fouilelr les clés de registre et je n'avais pas pensé qu'elle pouvait offrir ce genre de fonctionnalité.



    Edit :
    Je viens de tester la commande -> mega rapide.
    Impressionnant.
    Mais un fichier > 50 mo en résultat à comparer
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

  10. #10
    Débutant  
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Points : 2 415
    Points
    2 415
    Par défaut
    Citation Envoyé par ced600 Voir le message
    Mais un fichier > 50 mo en résultat à comparer
    c'est peut être pour cale que mon script ne fonctionne pas:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    set WshShell = WScript.CreateObject("WScript.Shell") 
    Set objShell = CreateObject("Wscript.Shell")
    Set objFSO = CreateObject("Scripting.FileSystemObject")
     
    DesktopPath = WSHShell.SpecialFolders("Desktop")
     
     
     
     
    objShell.Run "Cmd /c regedit /e """ & DesktopPath & "\reg1.reg"""
     
     
    Wscript.echo "On marque une pause le temps de sauvegarder la base de registre" & vbCrLf _
               & "Appuyez sur OK quand la fenêtre dos sera fermer"
     
    Wscript.echo "On marque une pause le temps de modifier les paramétres manuellement dans votre application" & vbCrLf _
               & "Appuyez sur OK quand vous aurez fini"
     
     
    objShell.Run "Cmd /c regedit /e """ & DesktopPath & "\reg2.reg"""
     
     
    Wscript.echo "On marque une pause le temps de sauvegarder la base de registre" & vbCrLf _
               & "Appuyez sur OK quand la fenêtre dos sera fermer"
     
     
    Set objSourceFile = objFSO.OpenTextFile(DesktopPath & "\reg1.reg", 1) ' Fichier originale
    Set objSourceFile2 = objFSO.OpenTextFile(DesktopPath & "\reg2.reg", 1) 'Fichier copié
     
    vrNumLigne = 0
     
    Do Until objSourceFile.AtEndOfStream Or objSourceFile2.AtEndOfStream
       vrNumLigne = vrNumLigne + 1
       vrLigne = objSourceFile.ReadLine
       vrLigne2 = objSourceFile2.ReadLine
       vrComprLign = StrComp(vrLigne, vrLigne2, 1)
          If vrComprLign = 1 Or vrComprLign = -1 Or IsNull(vrComprLign) then
                 vrNul = "Le fichier a été modifier"
                 vrLignDif = vrLignDif & vrNumLigne & ": " & vrLigne & vbCrLf & vrNumLigne & ": " & vrLigne2 & vbCrLf & vbCrLf
                 'vrLignDif2 = vrLignDif2 & "Origin " & vrNumLigne & ": " & vrLigne & vbCrLf & "Modif  " & vrNumLigne & ": " & vrLigne2 & vbCrLf & vbCrLf
          Else
          End If
     
    Loop
    objSourceFile.Close
    objSourceFile2.Close
     
     
    If IsEmpty(vrNul) Then
             Wscript.Echo "La base de registre n'a subi aucune modification"
    Else
             Wscript.Echo vrLignDif
              Const ForReading = 1, ForWriting = 2 
                Set FichierTXT = WScript.CreateObject("WScript.Shell") 
                 Dim fso, f 
                 Set fso = CreateObject("Scripting.FileSystemObject") 
                 Set f = fso.OpenTextFile(DesktopPath & "\Résulta de la comparaison de la base de registre", ForWriting,true) 
                 f.writeline("Fichier source: " & vrFchSlctn) 
                 f.writeline("")
                 f.writeline("")  
                 f.writeline(vrLignDif) 
              f.close
    End If

  11. #11
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Peut être moi il contient plus de 500 000 ligne, je n'ai jamais essayé de comparer autant de ligne dans un fichier

    je teste ton script.
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

  12. #12
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    j'ai une pop up d'erreur 260000 quelque chose pendant la comparaison des fichiers.
    Trop gros à mon avis.

    Edit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
      Set objWMIService = GetObject("winmgmts:\\.\root\cimv2:Win32_Process")
      objWMIService.Create "C:\temp\TDLinkerToToolsTests.exe test TTWorkbench\vdrg " & path, "c:\temp", null, ee
     
    waitforexit ee
     
    function waitforexit(ee)
    Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
    Set colProcesses = objWMIService.ExecQuery("Select * from Win32_Process Where ProcessID = '" & ee & "'")
    if not IsNull(colProcesses) then
       If colProcesses.Count <> 0 Then
          XTools.Sleep(1000) ' à remplacer par la fonction sleep de vbs
          waitforexit ee
       End If
    end if
    end function
    Regarde cette exemple : lance tes commandes dos en process comme j'ai fait et tu peux utiliser la méthode waitfoexit qui attend le fin de l'execution du process avant de continue le script.

    Attention : XTools.Sleep(1000) ' à remplacer par la fonction sleep de vbs
    Et oui j'ai utiliser une librairie d'un soft qui utilise ce script, donc faut retrouver comment faire un sleep en vbs, j'ai oublié comment mais je sais que j'ai écrit comment faire sur des vieux poste du forum.
    Une recher avec sleep et le tour et jouer.
    Le sleep est obligatoire autrement tu consommes toutes les ressources de ta machine (et je ne suis même pas sur que tu termine le script un jour) !!!!
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

  13. #13
    Débutant  
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Points : 2 415
    Points
    2 415
    Par défaut
    moi pas d'erreur mais rien et afficher

    mais j'ai remarquer que le processus wscript toure la comparaison n'est peut être pas encore terminée

  14. #14
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Moi il me génére un popup erreur sans description de celle-ci et se termine.
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

  15. #15
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Tu peux toujours découper la base en plusieurs fichier reg, et faire la comparaison sur ces fichiers.
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

  16. #16
    Débutant  
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Points : 2 415
    Points
    2 415
    Par défaut
    oui, je verai ca plu tart

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Recherche en base de registre
    Par Pomalaix dans le forum Langage
    Réponses: 7
    Dernier message: 01/08/2012, 10h58
  2. [Batch] export csv vers la base de registre .
    Par slybreiz dans le forum Scripts/Batch
    Réponses: 2
    Dernier message: 22/05/2012, 20h23
  3. [Windows]accès base de registre windows
    Par Greg01 dans le forum API standards et tierces
    Réponses: 27
    Dernier message: 05/06/2007, 15h14
  4. Accès à la base de registre windows à distance
    Par xavame dans le forum Sécurité
    Réponses: 4
    Dernier message: 13/07/2005, 15h23
  5. Utilisez vous la base de registres ?
    Par gRRosminet dans le forum C++Builder
    Réponses: 8
    Dernier message: 04/06/2002, 13h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo