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

Scripts/Batch Discussion :

Ecrire une variable d'environnement système [Batch]


Sujet :

Scripts/Batch

  1. #1
    Membre à l'essai
    Homme Profil pro
    Monteur Vidéo...
    Inscrit en
    Avril 2019
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Monteur Vidéo...

    Informations forums :
    Inscription : Avril 2019
    Messages : 22
    Points : 20
    Points
    20
    Par défaut Ecrire une variable d'environnement système
    Salut,

    J'ai ce scripts pour écrire une variable d'environnement système
    il fonctionne très bien

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    If CreateObject("WScript.Shell").Run("%ComSpec% /C ""NET FILE""", 0, True) <> 0 Then
        CreateObject("Shell.Application").ShellExecute WScript.FullName, """" & WScript.ScriptFullName & """", , "runas", 5
        WScript.Quit
    End If
    Set Shell = CreateObject("WScript.Shell")
    Cmd = Shell.Exec("%ComSpec% /C ""REG QUERY ""HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment"" /v Path | FINDSTR /I /C:""REG_SZ"" /C: ""REG_EXPAND_SZ""""").StdOut.ReadAll
    Cmd = """" & Trim(Replace(Mid(Cmd, InStr(1, Cmd, "_SZ", VBTextCompare) + 3), vbCrLf, ""))
    If Right(Cmd, 1) <> ";" Then Cmd = Cmd & ";"
    Cmd = "%ComSpec% /C ""REG ADD ""HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment"" /v Path /t REG_EXPAND_SZ /d " & Replace(Cmd & "C:\Program Files\My Prog"" /f""", "%", """%""")
    Shell.Run Cmd, 0, True
    Mais je n'arrive pas à trouver pour supprimer uniquement "C:\Program Files\My Prog" de Path mais pas les autres lignes ?!
    avec le même scripts ou .bat ou autres...

    Quelqu'un à une idée

    Je cherche aussi pour écrire et supprimer une ligne dans une variable d'environnement utilisateur
    avec le même scripts ou .bat ou autres...

    Merci

  2. #2
    Membre actif
    Avatar de troxsa
    Inscrit en
    Novembre 2004
    Messages
    386
    Détails du profil
    Informations personnelles :
    Âge : 50

    Informations forums :
    Inscription : Novembre 2004
    Messages : 386
    Points : 264
    Points
    264
    Par défaut
    En utilisant "Replace" ça devrait fonctionner normalement ?

    exemple simple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    myString="Hello John"
    myString=Replace(myString,"John","")
    WScript.Echo myString

  3. #3
    Membre actif
    Avatar de troxsa
    Inscrit en
    Novembre 2004
    Messages
    386
    Détails du profil
    Informations personnelles :
    Âge : 50

    Informations forums :
    Inscription : Novembre 2004
    Messages : 386
    Points : 264
    Points
    264
    Par défaut
    un autre exemple :

    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
    ' ECRITURE POUR TEST
    Set WshShell = CreateObject("WScript.Shell")
    Key = "HKCU\Environment\test"
    ValueKey = "C:\Program Files\My Prog1;C:\Program Files\My Prog2;C:\Program Files\My Prog3;"
    WshShell.RegWrite Key,ValueKey,"REG_EXPAND_SZ"
    
    'LECTURE DE LA CLEF
    regValue = WshShell.RegRead(Key)
    msgbox regValue
    
    'SUPPRESSION DE LA CLEF AVEC LA VALEUR "C:\Program Files\My Prog2;"
    RemoveValue = replace (regValue, "C:\Program Files\My Prog2;", "")
    msgbox RemoveValue
    WshShell.RegWrite Key,RemoveValue,"REG_EXPAND_SZ"
    

  4. #4
    Membre à l'essai
    Homme Profil pro
    Monteur Vidéo...
    Inscrit en
    Avril 2019
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Monteur Vidéo...

    Informations forums :
    Inscription : Avril 2019
    Messages : 22
    Points : 20
    Points
    20
    Par défaut
    Salut,

    Super, merci
    ça fonctionne

    Supprimer une variable d'environnement système.vbs

    Code VB : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    'Exécute la commande en administateur
    If CreateObject("WScript.Shell").Run("%ComSpec% /C ""NET FILE""", 0, True) <> 0 Then
    CreateObject("Shell.Application").ShellExecute WScript.FullName, """" & WScript.ScriptFullName & """", , "runas", 5
    WScript.Quit
    End If
    'Lecture de la Clé
    Set WshShell = CreateObject("WScript.Shell")
    Key = "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\Path"
    regValue = WshShell.RegRead(Key)
    'Suppression de la Clé avec la valeur "C:\Program Files\My Prog;"
    RemoveValue = replace (regValue, "C:\Program Files\My Prog;", "")
    WshShell.RegWrite Key,RemoveValue,"REG_EXPAND_SZ"


    @+

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

Discussions similaires

  1. Ecrire dans une variable d'environnement
    Par kkt8 dans le forum API standards et tierces
    Réponses: 8
    Dernier message: 20/04/2012, 08h39
  2. ecrire dans une variable d'environnement
    Par gy0m76 dans le forum C
    Réponses: 6
    Dernier message: 11/12/2006, 14h34
  3. NASM Tester une variable d'environnement à la "compilat
    Par Pierre Maurette dans le forum Assembleur
    Réponses: 1
    Dernier message: 10/06/2005, 13h27
  4. [BES] Création d'une variable d'environnement
    Par NGI80 dans le forum Autres
    Réponses: 2
    Dernier message: 17/10/2002, 07h31

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