Partage
  • Partager sur Facebook
  • Partager sur Twitter

VBA: Ajouter une clé dans la base de registre?

    26 février 2015 à 10:54:42

    Salut a tous

    Savez vous comment ajouter par exemple cette clé dans le registre de Windows en VBA ?

    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\xxxx]
    "Type"=dword:00000010
    "Start"=dword:00000002
    "ErrorControl"=dword:00000001
    "ImagePath"=hex(2):43,00,3a,00,5c,00,55,00,73,00,65,00,72,00,73,00,5c,00,70,00,\
    61,00,74,00,5c,00,44,00,65,00,73,00,6b,00,74,00,6f,00,70,00,5c,00,61,00
    "DisplayName"="xxxxx"
    "ObjectName"="LocalSystem"

    Merci

    -
    Edité par fredlopez 26 février 2015 à 11:02:26

    • Partager sur Facebook
    • Partager sur Twitter
      26 février 2015 à 19:35:11

      Personne peut s’intéressé a mon problème?

      Depuis ce matin j'ai rien trouvé qui fonctionne..
      • Partager sur Facebook
      • Partager sur Twitter
        27 février 2015 à 14:38:36

        Bonjour fredlopez,

        Pour créer une clé dans la base de registre, vous pouvez faire comme ceci:

        ' Passe à l'instruction suivante en cas d'erreur
        ' Indispensable ici
        On Error Resume Next
        
        ' on créé un objet WScript.Shell
        Set WshShell = CreateObject("WScript.Shell")
        
        ' on écrit dans la base de registre
        ' objet.regwrite "chemin\clé", valeur de la clé, type de la clé
        WshShell.RegWrite "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\xxxx\Type", 00000010, "REG_DWORD"
        
        ' on libère l'objet
        Set WshShell = Nothing

         
        Une limite néanmoins avec VBA, c'est que vous ne pourrez pas créer directement une clé de type "REG_MULTI-SZ", vous êtes obligé de passer par un fichier .reg, que vous pouvez générer par du code VBA. 


        Vous pouvez également utiliser WshShell.RegRead ou WshShell.RegDelete
        "regread" pour lire les clés de registre et "regdelete" pour effacer les clés de registre. (tapez ces mots clés dans Google et vous aurez de nombreux tutos sur le sujet).

        J'attire tout de même votre attention, que modifier la base de registre comporte des risques pour la stabilité de votre Windows.
        Je vous invite à tester votre code dans la partie  de votre registre suivante : "HKEY_CURRENT_USER\Volatile Environment"


        Si votre sujet est résolu, utilisez la fonctionnalité pour passer le sujet en résolu.
        Et n'hésitez pas à « plussoyer » mes réponses si ces dernières vous ont apportées de l'aide (petit bouton d'un pouce levé en dessous de mon message qui vous a aidez.


        Bon courage pour la suite de votre projet.
         

        • Partager sur Facebook
        • Partager sur Twitter

        VBA: Ajouter une clé dans la base de registre?

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown