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 :

Supprimer les connexions en trop


Sujet :

VBScript

  1. #1
    Membre éprouvé
    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
    Par défaut Supprimer les connexions en trop
    Bonjour, j'ai un pc portable, j'ai deux connection réseau, mais quand je liste mes connection réseau avec un script il me marque plusieurs fois les même connection, comment supprimer les doublon ?

  2. #2
    Expert confirmé
    Avatar de shawn12
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Avril 2006
    Messages
    3 368
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2006
    Messages : 3 368
    Par défaut
    Quelle commande utilises-tu pour afficher les connexions réseau ?

  3. #3
    Membre éprouvé
    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
    Par défaut coloration balise code
    Salut

    Voici mon script, je ne sais plus quel parti du code liste les connection enfin c'est en haut quoi:
    Code VB : 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
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    strComputer = "."
    Set objWMIService = GetObject _
        ("winmgmts:\\" & strComputer & "\root\microsoft\homenet")
    Set colItems = objWMIService.ExecQuery("Select * from HNet_Connection")
     
    Const ForReading = 1, ForWriting = 2 
      Set FichierTXT = WScript.CreateObject("WScript.Shell") 
       Dim fso, f 
       Set fso = CreateObject("Scripting.FileSystemObject") 
       Set f = fso.OpenTextFile("actvDsctvCnnct.vbs", ForWriting,true) 
    f.writeline("Dim vrNomConnection")
    f.writeline("")
    f.writeline("Function AskQuestion () ' Pose la question et renvoi la reponse: ")
    f.writeline("         AskQuestion = InputBox(""Activer ou désactiver une connection réseau"" & vbCrLf _")
    f.writeline("                              & """" & vbCrLf _")
       vrCompt = 0
       For Each objItem in colItems
           vrCompt = vrCompt + 1
            f.writeline("                              & """ & vrCompt & " = " & objItem.Name & """" & " & vbCrLf _")
       Next
    f.writeline("                              & """" & vbCrLf _")
    f.writeline("                              & ""Quelles connection voulez vous activer ou désactiver ?"", ""Ici le titre"")")
    f.writeline("End Function ")
    f.writeline("Dim szRet ")
    f.writeline("Do ")
    f.writeline("        szRet = AskQuestion")
    f.writeline("        Select Case szRet")
    f.writeline("                Case vbNullString 'Cette etiquette se déclanche si on clique sur annuler ou quiter.")
    f.writeline("                        WScript.Quit ")
       vrCompt2 = 0
       For Each objItem in colItems
           vrCompt2 = vrCompt2 + 1
            f.writeline("                Case """ & vrCompt2 & """")
            f.writeline("                        Etiquette" & vrCompt2)
       Next
    f.writeline("                Case Else")
    f.writeline("                        SaisiNul ")
    f.writeline("        End Select ")
    f.writeline("Loop ")
    f.writeline("")
       vrCompt3 = 0
       For Each objItem in colItems
           vrCompt3 = vrCompt3 + 1
            f.writeline("Sub Etiquette" & vrCompt3)
            f.writeline("        vrNomConnection = " & """" & objItem.Name & """")
            f.writeline("Etiquettec")
            f.writeline("End Sub")
       Next
    f.writeline("Sub SaisiNul ")
    f.writeline("        MsgBox ""Vous avez entrer une mauvaise saisie."" ")
    f.writeline("End Sub")
    f.writeline("Sub Etiquettec")               
    f.writeline("set WshShell = WScript.CreateObject(""WScript.Shell"")")
    f.writeline("valueOS = WshShell.RegRead (""HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\"" & ""ProductName"")")
    f.writeline("Const ssfCONTROLS = 3")
    f.writeline("")
    f.writeline("'""Connexion au réseau local"" pour une connexion réseau classique RJ45 ou ""Connexion réseau sans fil"" pour la connexion Wifi")
    f.writeline("sConnectionName = vrNomConnection")
    f.writeline("if InStr(1,valueOS,""xp"",1) > 0 Then  sConnectionDir = ""Connexions réseau""                        'Pour Windows XP")
    f.writeline("if InStr(1,valueOS,""2000"",1) > 0 Then  sConnectionDir = ""Connexions réseau et accès à distance""  'Pour Windows 2000")
    f.writeline("")
    f.writeline("sEnableVerb = ""&Activer""")
    f.writeline("sDisableVerb = ""&Désactiver""")
    f.writeline("")
    f.writeline("set shellApp = createobject(""shell.application"")")
    f.writeline("set oControlPanel = shellApp.Namespace(ssfCONTROLS)")
    f.writeline("")
    f.writeline("set oNetConnections = nothing")
    f.writeline("for each folderitem in oControlPanel.items")
    f.writeline("  if folderitem.name  = sConnectionDir then")
    f.writeline("    set oNetConnections = folderitem.getfolder: exit for")
    f.writeline("  end if")
    f.writeline("next")
    f.writeline("")
    f.writeline("if oNetConnections is nothing then")
    f.writeline("  msgbox ""Ne peut trouver le dossier '""+sConnectionDir+""'""")
    f.writeline("  wscript.quit")
    f.writeline("end if")
    f.writeline("")
    f.writeline("set oLanConnection = nothing")
    f.writeline("for each folderitem in oNetConnections.items")
    f.writeline("  if lcase(folderitem.name)  = lcase(sConnectionName) then")
    f.writeline("    set oLanConnection = folderitem: exit for")
    f.writeline("  end if")
    f.writeline("next")
    f.writeline("")
    f.writeline("if oLanConnection is nothing then")
    f.writeline("  msgbox ""Impossible de trouver la connection :  '"" & sConnectionName & ""'""")
    f.writeline("  wscript.quit")
    f.writeline("end if")
    f.writeline("")
    f.writeline("bEnabled = true")
    f.writeline("set oEnableVerb = nothing")
    f.writeline("set oDisableVerb = nothing")
    f.writeline("s = ""Verbs: "" & vbcrlf")
    f.writeline("for each verb in oLanConnection.verbs")
    f.writeline("  s = s & vbcrlf & verb.name")
    f.writeline("  if verb.name = sEnableVerb then")
    f.writeline("    set oEnableVerb = verb ")
    f.writeline("    bEnabled = false")
    f.writeline("  end if")
    f.writeline("  if verb.name = sDisableVerb then")
    f.writeline("    set oDisableVerb = verb ")
    f.writeline("  end if")
    f.writeline("next")
    f.writeline("")
    f.writeline("'debugging displays left just in case...")
    f.writeline("'")
    f.writeline("'MsgBox s ': wscript.quit")
    f.writeline("'MsgBox ""Enabled: "" & bEnabled ': wscript.quit")
    f.writeline("")
    f.writeline("'not sure why, but invokeverb always seemed to work")
    f.writeline("'for enable but not disable. ")
    f.writeline("'")
    f.writeline("'saving a reference to the appropriate verb object")
    f.writeline("'and calling the DoIt method always seems to work.")
    f.writeline("'")
    f.writeline("if bEnabled then")
    f.writeline("'  oLanConnection.invokeverb sDisableVerb")
    f.writeline("  oDisableVerb.DoIt")
    f.writeline("else")
    f.writeline("'  oLanConnection.invokeverb sEnableVerb")
    f.writeline("  oEnableVerb.DoIt")
    f.writeline("end if")
    f.writeline("")
    f.writeline("'adjust the sleep duration below as needed...")
    f.writeline("'")
    f.writeline("'if you let the oLanConnection go out of scope")
    f.writeline("'and be destroyed too soon, the action of the verb")
    f.writeline("'may not take...")
    f.writeline("'")
    f.writeline("wscript.sleep 1000")
    f.writeline("End Sub")
    f.close
     
    set WshShell = WScript.CreateObject("WScript.Shell")               
     WshShell.Run "wscript actvDsctvCnnct.vbs"
     
    'Set fsoFile = fso.getFile("actvDsctvCnnct.vbs")
    ' fsoFile.delete

  4. #4
    Membre chevronné
    Inscrit en
    Août 2007
    Messages
    302
    Détails du profil
    Informations personnelles :
    Âge : 58

    Informations forums :
    Inscription : Août 2007
    Messages : 302
    Par défaut
    Citation Envoyé par koKoTis Voir le message
    Voici mon script, je ne sais plus quel parti du code liste les connection enfin c'est en haut quoi
    bien vu !

    lance ce script qui est une adaptation du tien qui affiche en plus l'identifiant unique :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    strComputer = "."
    Set objWMIService = GetObject _
        ("winmgmts:\\" & strComputer & "\root\microsoft\homenet")
    Set colItems = objWMIService.ExecQuery _
        ("Select * from HNet_Connection")
    For Each objItem in colItems
        Wscript.Echo "Connection: " & objItem.name
        Wscript.Echo "GUID: " & objItem.GUID
       Wscript.Echo "************************************"
    Next
    tu constateras que pour un même nom de connection, tu as plusieurs GUID, c'est pour cela que tu te retrouves avec des doublons sur le nom.

    A++

  5. #5
    Membre éprouvé
    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
    Par défaut
    La aussi ca m'en affiche en double

  6. #6
    Membre chevronné
    Inscrit en
    Août 2007
    Messages
    302
    Détails du profil
    Informations personnelles :
    Âge : 58

    Informations forums :
    Inscription : Août 2007
    Messages : 302
    Par défaut
    Tu retrouves des GUID en double ?

  7. #7
    Membre éprouvé
    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
    Par défaut
    non

Discussions similaires

  1. supprimer les précédentes connexions au serveur
    Par laure07 dans le forum Windows
    Réponses: 2
    Dernier message: 13/09/2012, 08h36
  2. Comparer deux colonnes puis supprimer les lignes en trop
    Par Theka dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 12/07/2011, 13h38
  3. [RegEx] Supprimer les espaces en trop et retour a la ligne
    Par Guillomme dans le forum Langage
    Réponses: 4
    Dernier message: 19/08/2009, 16h45
  4. [RegEx] Supprimer les retours chariots de trop
    Par Alexandrebox dans le forum Langage
    Réponses: 18
    Dernier message: 20/01/2009, 16h24
  5. Réponses: 1
    Dernier message: 09/07/2007, 14h45

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