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 :

Suppression Script imprimante


Sujet :

VBScript

  1. #1
    Futur Membre du Club
    Inscrit en
    Août 2009
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 4
    Par défaut Suppression Script imprimante
    Bonjour à tous et à toutes.

    Je souhaiterais supprimer toutes les imprimantes réseaux sur les postes clients à l'aide d'un script.

    Il faudrait que le script supprime sur les pc clients seulement les imprimantes de l'ancien serveur nommé 'ancien_serveur_imp'. (\\ancien_serveur_imp\PRINTERXX)
    Car nous avons installé sur les machines,les nouvelles imprimantes qui sont sur le nouveau serveur 'nouveau_serveur_imp'.

    J'ai trouvé ce script qui supprime toutes les imprimantes du réseau (mais malheureusement il me supprime les imprimantes sur les pc clients du nouveau serveur):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Set oNet = CreateObject ("Wscript.Network")
    Set oPrt = oNet.EnumPrinterConnections
    For i = 0 to oPrt.Count - 1 Step 2
    If Left (oPrt.Item(i+1),1) = "\" Then
    oNet.RemovePrinterConnection oPrt.Item(i+1)
    End If
    Next
    Est il possible de dire à cet endroit : "If Left (oPrt.Item(i+1),1) = "\" Then" à la place de "\" de chercher toutes les imprimantes qui proviennent de l'ancien serveur "\\ancien_serveur_imp\*" , le * ou le % pour dire tous ce qui commence par le nom de l'ancien serveur.

    Merci de votre aide, je n'y connait rien du tout en dev.

    Cordialement

  2. #2
    Membre confirmé
    Inscrit en
    Juillet 2009
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 93
    Par défaut
    Salut
    Perso je ferrais un truc du genre, (a tester):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Set oNet = CreateObject ("Wscript.Network")
    Set oPrt = oNet.EnumPrinterConnections
    For i = 0 to oPrt.Count - 1 Step 2
       If StrComp(Left (oPrt.Item(i+1),21),"\\ancien_serveur_imp\") = 0 Then
          oNet.RemovePrinterConnection oPrt.Item(i+1)
       End If
    Next

  3. #3
    Futur Membre du Club
    Inscrit en
    Août 2009
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 4
    Par défaut
    Bonjour _xme_,

    Merci beaucoup de ton aide ca fonctionne impeccable !!! :-)
    dernière tite question après je ne t'embête plus
    si je veux rajouter au script quelque chose qui permettrait de supprimer toutes les imprimantes de l'ancien serveur sauf deux en question par exemple : \\ancien_serveur_imp\imp1 et \\ancien_serveur_imp\imp2
    aurais tu une idée du script qui permettrait de faire ceci?

    Merci mille fois !!!

  4. #4
    Membre confirmé
    Inscrit en
    Juillet 2009
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 93
    Par défaut
    Euh si j'ai bien compris ta question c'est juste quelques conditions en plus non?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    If StrComp(Left (oPrt.Item(i+1),21),"\\ancien_serveur_imp\") = 0 and not(StrComp(Left (oPrt.Item(i+1),21),"\\ancien_serveur_imp\imp1") = 0 or StrComp(Left (oPrt.Item(i+1),21),"\\ancien_serveur_imp\imp2") = 0) Then
          oNet.RemovePrinterConnection oPrt.Item(i+1)
    End If
    par contre si c'est une condition qui doit pouvoir être commander depuis un bouton alors je ferrais un truc du genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    For i = 0 to oPrt.Count - 1 Step 2
       bool=true
       If boolbutton then
           If (StrComp(Left (oPrt.Item(i+1),21),"\\ancien_serveur_imp\imp1") = 0 or StrComp(Left (oPrt.Item(i+1),21),"\\ancien_serveur_imp\imp2") = 0) then
               bool = false
           End If
       End if
       If StrComp(Left (oPrt.Item(i+1),21),"\\ancien_serveur_imp\") = 0 and bool Then
          oNet.RemovePrinterConnection oPrt.Item(i+1)
       End If
    Next
    boolbutton est le boolean d'état de ton bouton
    ai-je bien compris?

  5. #5
    Futur Membre du Club
    Inscrit en
    Août 2009
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 4
    Par défaut
    Je te remercie pour la rapidité de tes réponses !!!!! merci aux gens comme toi... je n'y connait rien en développement mais quand je vois ce que l'on peut faire ca donne envie de s'y mettre :-)

    oui c'est une ou deux conditions à mettre, pour dire de supprimer toutes les imprimantes de l'ancien serveur sauf une ou deux par exemple.

    Du coup ca donnerai ca ??? : je ne sais pas si j'ai bien intégré le code avec les conditions au bon endroit ^^

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Set oNet = CreateObject ("Wscript.Network")
    Set oPrt = oNet.EnumPrinterConnections
    For i = 0 to oPrt.Count - 1 Step 2
       If StrComp(Left (oPrt.Item(i+1),21),"\\ancien_serveur_imp\") = 0 and not(StrComp(Left (oPrt.Item(i+1),21),"\\ancien_serveur_imp\imp1") = 0 or StrComp(Left (oPrt.Item(i+1),21),"\\ancien_serveur_imp\imp2") = 0) Then
          oNet.RemovePrinterConnection oPrt.Item(i+1)
       End If
    Next


    Merci encore !!!!! et bonne soirée à toi

  6. #6
    Membre confirmé
    Inscrit en
    Juillet 2009
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 93
    Par défaut
    euh merde je viens de voir que j'ai du faire une erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    
      not(StrComp(Left (oPrt.Item(i+1),21),"\\ancien_serveur_imp\imp1") = 0 or StrComp(Left (oPrt.Item(i+1),21),"\\ancien_serveur_imp\imp2") = 0)
    la bonne réponse est plutôt
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Set oNet = CreateObject ("Wscript.Network")
    Set oPrt = oNet.EnumPrinterConnections
    For i = 0 to oPrt.Count - 1 Step 2
       If StrComp(Left (oPrt.Item(i+1),21),"\\ancien_serveur_imp\") = 0 and not(StrComp(Left (oPrt.Item(i+1),25),"\\ancien_serveur_imp\imp1") = 0 or StrComp(Left (oPrt.Item(i+1),25),"\\ancien_serveur_imp\imp2") = 0) Then
          oNet.RemovePrinterConnection oPrt.Item(i+1)
       End If
    Next
    Si ceci ne marche pas commence par vérifier les chaines de charactères
    Pour cela tu fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Msgbox Left (oPrt.Item(i+1),21)
    Msgbox Left (oPrt.Item(i+1),25)
    En effet je ne sais pas si le deuxième chiffre est le nombre de charactère ou l'index de coupure (ca peut varier de 1 si le 1er caractere de la chaîne à un index=0).

    bonne journée

  7. #7
    Futur Membre du Club
    Inscrit en
    Août 2009
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 4
    Par défaut
    Je viens de rentrer de vacances désolé de ne pas t'avoir répondu plus tôt.
    Je tiens à te remercier de tout tes conseils et ta patience car ca fonctionne super bien.

    Mille merci et bonne continuation.

    Merci à ce forum et aux personnes comme toi !!!

    A bientôt peut être

Discussions similaires

  1. Réponses: 2
    Dernier message: 16/07/2014, 18h11
  2. Script imprimante en fonction d'un groupe de securite
    Par jujurochedu42 dans le forum Scripts/Batch
    Réponses: 0
    Dernier message: 21/06/2012, 14h23
  3. Recherche script imprimante
    Par sy.mangue dans le forum VBScript
    Réponses: 2
    Dernier message: 01/09/2011, 12h16
  4. [XP] Suppression impossible imprimante réseau
    Par Myogtha dans le forum Windows XP
    Réponses: 4
    Dernier message: 14/11/2006, 13h26
  5. Script de suppression d'archives sous WINDOWS
    Par alxkid dans le forum Administration
    Réponses: 3
    Dernier message: 18/08/2004, 11h11

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