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 :

VBS - Installation d'une imprimante réseau en fonction de l'O.U AD


Sujet :

VBScript

  1. #1
    Membre à l'essai
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Janvier 2012
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2012
    Messages : 76
    Points : 15
    Points
    15
    Par défaut VBS - Installation d'une imprimante réseau en fonction de l'O.U AD
    Bonjour,

    Je souhaiterais créer un script VBS qui m'installe automatiquement une imprimante réseau sur un poste client en fonction de la SOUS O.U ordinateur.

    Actuellement j'ai des script DOS pour l'installation des imprimante en fonction des sous o.u ordinateur.

    Dans un premier temps je lance 1er script vbs qui va lancer un .cmd en fonction du nom de l'OU de l'ordinateur concerné.

    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
    '********** Identification du poste, recherche de sa sous-OU dans l'AD et exécution du fichier
    'd'imprimantes correspondant **********
     
    On Error Resume Next
     
    ' Récupération du nom du poste
    Set WshNetwork = WScript.CreateObject("WScript.Network")
    NomPoste = WshNetwork.ComputerName
     
    Const ADS_SCOPE_SUBTREE = 2
    Set objConnection = CreateObject("ADODB.Connection")
    Set objCommand = CreateObject("ADODB.Command")
    objConnection.Provider = "ADsDSOObject"
    objConnection.Open "Active Directory Provider"
    Set objCommand.ActiveConnection = objConnection
    objCommand.Properties("Page Size") = 1000
    objCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREE
     
    'Localisation du poste dans l'AD
    objCommand.CommandText = "SELECT ADsPath FROM 'LDAP://OU=XXX,dc=domXXX,dc=XXXX,dc=ad' WHERE objectCategory='computer' AND name='" & NomPoste & "'"
    Set objRecordSet = objCommand.Execute
     
    'Récupération de la sous-OU du poste
    Enreg_AD=objRecordSet.Fields("ADsPath").Value
    Dcoupe=split("" & Enreg_AD & "",",")
    NomSou=mid(Dcoupe(1),4)
     
    'Exécution du fichier d'imprimantes correspondant au poste en fonction de sa sous-OU
    Set wshell=CreateObject("WScript.Shell")
    wshell.Run"%logonserver%\NETLOGON\Imprimantes\" & NomSou & ".cmd"
    J'ai essayé de lancer le .cmd à la fin de mon nouveau VBS mais ça n'a pas marché. C'est pour cela que je veux migrer tout mes fichiers DOS en VBS.

    Merci d'avance pour votre aide.

  2. #2
    Membre à l'essai
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Janvier 2012
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2012
    Messages : 76
    Points : 15
    Points
    15
    Par défaut
    C'est bon j'ai trouvé pour lancer mon .cmd.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    set WshShell = CreateObject("WScript.Shell")
    WSHShell.run ("cmd /c %logonserver%\NETLOGON\UR210\Imprimantes\" & NomSou & ".cmd"), ,true
    Je souhaiterais tout de même connaître le script VBS qui gère les sous O.U ordinateurs. Cela pourrait intéresser d'autres personnes!!

  3. #3
    Membre à l'essai
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Janvier 2012
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2012
    Messages : 76
    Points : 15
    Points
    15
    Par défaut
    Voici ce que j'ai dans un de mes CMD :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    cscript %windir%\system32\prnmngr.vbs -x
    cscript %windir%\system32\prnmngr.vbs -ac -p "\\monserveur\IMP-123-DELL2330DN"
    cscript %windir%\system32\prnmngr.vbs -t -p "\\monserveur\IMP-123-DELL2330DN"
    cscript %windir%\system32\prnmngr.vbs -ac -p "\\monserveur\PDFCREATOR"
    Je voudrais faire la même chose mais en VBS!!
    Merci par avance

  4. #4
    Membre averti
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Novembre 2011
    Messages
    163
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Novembre 2011
    Messages : 163
    Points : 304
    Points
    304
    Par défaut
    Salut !

    Pour l'ajout d'imprimante réseau, l'objet à créer est "WScript.Network" et la commande à utiliser est "AddWindowsPrinterConnection" :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Set objNetwork = CreateObject ("WScript.Network")
    objNetwork.AddWindowsPrinterConnection "\\Serveur\Printer"

  5. #5
    Membre à l'essai
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Janvier 2012
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2012
    Messages : 76
    Points : 15
    Points
    15
    Par défaut
    Citation Envoyé par Cachlab Voir le message
    Salut !

    Pour l'ajout d'imprimante réseau, l'objet à créer est "WScript.Network" et la commande à utiliser est "AddWindowsPrinterConnection" :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Set objNetwork = CreateObject ("WScript.Network")
    objNetwork.AddWindowsPrinterConnection "\\Serveur\Printer"
    Salut,

    Merci de ta réponse. Comment dois-je lui préciser de me mettre l'imprimante par défaut?

  6. #6
    Membre averti
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Novembre 2011
    Messages
    163
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Novembre 2011
    Messages : 163
    Points : 304
    Points
    304
    Par défaut
    La commande est "SetDefaultPrinter" :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Set objNetwork = CreateObject ("WScript.Network")
    objNetwork.AddWindowsPrinterConnection "\\Serveur\Printer"
    objNetwork.SetDefaultPrinter "\\Serveur\Printer"
    Attention, l'imprimante par défaut n'est pas liée au système (HKLM), mais au profil utilisateur (HKCU).

  7. #7
    Membre à l'essai
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Janvier 2012
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2012
    Messages : 76
    Points : 15
    Points
    15
    Par défaut
    Citation Envoyé par Cachlab Voir le message
    La commande est "SetDefaultPrinter" :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Set objNetwork = CreateObject ("WScript.Network")
    objNetwork.AddWindowsPrinterConnection "\\Serveur\Printer"
    objNetwork.SetDefaultPrinter "\\Serveur\Printer"
    Attention, l'imprimante par défaut n'est pas liée au système (HKLM), mais au profil utilisateur (HKCU).
    Tout marche sauf la détection du "nomsou"

    Au début de mon script je déclare la fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    'Récupération de la sous-OU du poste
    Enreg_AD=objRecordSet.Fields("ADsPath").Value
    Dcoupe=split("" & Enreg_AD & "",",")
    NomSou=mid(Dcoupe(1),4)
    Ensuite je veux l'utiliser pour l'installation de mes imprimantes en fonction des groupes d'ordinateurs mais ça ne marche pas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    '===============================================================================
    'DEPARTEMENT INFORMATIQUE
    '===============================================================================
    if NomSou("INFO_713") then
    objNetwork.AddWindowsPrinterConnection "\\Serveur\Printer1"
    objNetwork.AddWindowsPrinterConnection "\\Serveur\Printer2"
    objNetwork.AddWindowsPrinterConnection "\\Serveur\Printer3"
    objNetwork.SetDefaultPrinter "\\Serveur\Printer2"
    end if
    J'ai une erreur "type mismatch: 'NomSou'"

  8. #8
    Membre à l'essai
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Janvier 2012
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2012
    Messages : 76
    Points : 15
    Points
    15
    Par défaut
    Personne peut venir mon secours?!

  9. #9
    Membre averti
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Novembre 2011
    Messages
    163
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Novembre 2011
    Messages : 163
    Points : 304
    Points
    304
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if NomSou = "INFO_713" then

  10. #10
    Membre à l'essai
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Janvier 2012
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2012
    Messages : 76
    Points : 15
    Points
    15
    Par défaut
    Citation Envoyé par Cachlab Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if NomSou = "INFO_713" then
    ça marche!! merci beaucoup

  11. #11
    Membre à l'essai
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Janvier 2012
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2012
    Messages : 76
    Points : 15
    Points
    15
    Par défaut
    Bonjour,
    J'aimerais effectuer les intsallations d'imprimantes non plus par rapport un nom de poste mais par rapport un nom d'utilisateur placer dans les sous-OU de département.
    Pourriez-vous m'aider svp?
    Merci par avance

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

Discussions similaires

  1. [AC-2010] Installer en local une imprimante réseau
    Par docjo dans le forum VBA Access
    Réponses: 2
    Dernier message: 12/06/2012, 11h50
  2. Envoyer une impression vers une imprimante réseau sous DOS
    Par atasekpo dans le forum Administration
    Réponses: 3
    Dernier message: 28/06/2010, 15h58
  3. Accéder à une imprimante réseau sans identification
    Par bart64 dans le forum Windows Serveur
    Réponses: 3
    Dernier message: 01/08/2006, 13h14
  4. Installation d'une imprimante
    Par arnaud_verlaine dans le forum Matériel
    Réponses: 1
    Dernier message: 10/04/2006, 18h11
  5. Installation d'une imprimante s300
    Par ben_iap dans le forum Matériel
    Réponses: 5
    Dernier message: 27/08/2004, 14h04

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