Voici un script permettant d’automatiser l’installation d’une imprimante sur un poste client via un fichier Batch (Fonctionnel sur plateforme Windows XP SP3 x32).
@echo off
:: Définition des variables :: Important : Le nom de l’imprimante doit être le même que dans le fichier INF :: La variable Port désigne le port RAW par défaut du port TCP/IP (ex : Lexmark 9100) :: Pour le connaitre installer l’imprimante manuellement et regarder le port RAW utilisé dans les paramètres du port TCP/IP set AdresseIP=192.168.1.1 set Imprimante=Lexmark c500 set Pilote=\\serveur\partage\driver\c500\x32_xp\LMABN.inf set Port=9100 :: Création du port TCP/IP cscript %windir%\system32\prnport.vbs -a -r IP_%AdresseIP% -h %AdresseIP% -o raw -n %port% :: Installation de l’imprimanterundll32 printui.dll, PrintUIEntry /if /b "%Imprimante%" /f "%Pilote%" /r "IP_%AdresseIP%" /m "%Imprimante%"
Le tutoriel est à présent terminé, n’hésitez pas à me laisser des commentaires.
Bonjour,
Votre script fonctionne parfaitement avec un compte administrateur, mais pas avec un simple compte d’utilisateur.
De ce fait, j’ai voulu essayé de pousser ce fichier batch en tant que script de démarrage de la machine. (vu que c’est avec le compte SYSTEM)
Il crée le port TCP/IP mais ne l’installe pas, car permission denied.
J’ai essayé aussi avec l’option -u et -w avec le compte admin local, mais même résultat.
Svp pouvez-vous m’aider?
Dans l’attente de votre réponse,
Merci d’avance,
Bonjour,
Je pense que votre problème viens de la GPO du domaine.
J’ai trouvé une option qui peux correspondre à votre problème, dans le cas d’une imprimante réseau et non local.
Ici
Cordialement.
Bonjour,
Apparemment, ce n’est pas ça le souci car ces options étaient désactivés par défaut.
Merci de votre aide,
Je continue à chercher …
Avez-vous trouvé la solution à votre problème ? Si oui, je peux le rajouter dans l’article afin de partager cette information.
Bonjour, je suis également très intéressé par une éventuelle solution à l’installation via script d’une imprimante réseau PAR UN UTILISATEUR DU DOMAINE et non un admin, le tout sous XP (à partir de Seven, et 2008R2 il y a une gestion centralisé des imprimantes)
Avez vous eu des infos à ce sujet ?
MErci
Bonjour,
Je suis désolé mais je peux vous aider d’avantage, n’ayant plus de windows 2003 ni de XP… Désolé.
Bonjour à tous
J’essaie d’adapter le script pour mon installation. J’installe des imprimantes en local avec un pilote global le Global Print Driver de chez Xerox.
Cependant le script ne fonctionne pas
:: InstImprimante.cmd
:: Script d’installation d’une imprimante reseau
:: (L) 2010 Badministrateur.com
@echo off
:: Remplacer les 3 champs suivants par vos valeurs
:: ATTENTION: Le nom de l’imprimante doit correspondre au nom de vortre imprimante dans le fichier INF (cf section [DriverName.xxxxx])
:: Le nom de la file d’attente LPR peut etre trouvé en installant l’imprimante manuellement et en verifiant les propriétes du port TCP/IP d’une installation « témoin »
:: Mettre un chemin absolu pour le pilote d’impression
set AdresseIP=192.168.1.6
set Imprimante=Xerox GPD PCL6 V3.6.433.6.0.0
set Pilote=C:\Xerox\X-GPD_5.433.6.0_PCL6_x64_Driver.inf
set port=9100
:: — Ne pas toucher ? la suite du fichier —
echo Creation d’un port d’impression TCP/IP a l’adresse %AdresseIP%
set CLEPORT= »HKLM\System\CurrentControlSet\Control\Print\Monitors\Standard TCP/IP Port\Ports »
REG ADD %CLEPORT%\TCP_%AdresseIP% /f > NUL
REG ADD %CLEPORT%\TCP_%AdresseIP% /v Protocol /t REG_DWORD /d 0x00000002 /f > NUL
REG ADD %CLEPORT%\TCP_%AdresseIP% /v Version /t REG_DWORD /d 0x00000001 /f > NUL
REG ADD %CLEPORT%\TCP_%AdresseIP% /v HostName /t REG_SZ /d « » /f > NUL
REG ADD %CLEPORT%\TCP_%AdresseIP% /v IPAddress /t REG_SZ /d %AdresseIP% /f > NUL
REG ADD %CLEPORT%\TCP_%AdresseIP% /v PortMonMibPortIndex /t REG_DWORD /d 0x00000001 /f > NUL
REG ADD %CLEPORT%\TCP_%AdresseIP% /v HWAddress /t REG_SZ /d « » /f > NUL
REG ADD %CLEPORT%\TCP_%AdresseIP% /v PortNumber /t REG_DWORD /d 0x00000203 /f > NUL
REG ADD %CLEPORT%\TCP_%AdresseIP% /v « SNMP Community » /t REG_SZ /d Public /f > NUL
REG ADD %CLEPORT%\TCP_%AdresseIP% /v « SNMP Enabled » /t REG_DWORD /d 0x00000000 /f > NUL
REG ADD %CLEPORT%\TCP_%AdresseIP% /v « SNMP Index » /t REG_DWORD /d 0x00000001 /f > NUL
REG ADD %CLEPORT%\TCP_%AdresseIP% /v Queue /t REG_SZ /d %fileLPR% /f > NUL
REG ADD %CLEPORT%\TCP_%AdresseIP% /v « Double Spool » /t REG_DWORD /d 0x00000000 /f > NUL
:: Redemarrage du spooler d’impression
net stop spooler
net start spooler
:: Installation de l’imprimante
echo Installation de l’imprimante %Imprimante% sur le port TCP_%AdresseIP%. Veuillez patienter…
rundll32 printui.dll,PrintUIEntry /if /f « %Pilote% » /b « %Imprimante% » /r TCP_%AdresseIP% /m « %Imprimante% »
:: Mettre l’imprimante par defaut
rundll32 printui.dll,PrintUIEntry /y /n « %Imprimante% »
J’ai une erreur « impossible de terminer cette opération (erreur 0x800f0214)
Je ne suis également pas sur du nom de l’imprimante car je ne le trouve pas dans le fichier .inf
Quelqu’un peut m’aider svp?