Quelques années plus tard, mais bon :)
Avec une arborescence comme suit:
+ _Ports (contient les fichiers .reg permettant de creer des ports imprimantes pour IP)
+ nom_impr1 (contient les fichiers drivers de l'imprimante impr1)
+ nom_impr2 (contient les fichiers drivers de l'imprimante impr2)
impr1.cmd (script d'ajout de l'imprimante impr1 local sur port IP)
impr2.cmd (script d'ajout de l'imprimante impr1 local sur port IP)
Je prends pour exemple une HP2420.
Voilà à quoi ressemble un fichier .reg de creation de port (ce fichier peut eventuellement différer pour des configurations particulieres de ports en fonction des imprimantes, pour trouver les valeurs modifiees dans un registre, je conseille l'utilitaire regshot qui permet de comparer deux photos d'une base de registre - avant et apres une install manuelle par exemple :)):
-------------
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Monitors\Standard TCP/IP Port\Ports\IP_001.002.003.004]
"Protocol"=dword:00000002
"Version"=dword:00000001
"HostName"=""
"IPAddress"="001.002.003.004"
"HWAddress"=""
"PortNumber"=dword:00000203
"SNMP Community"="public"
"SNMP Enabled"=dword:00000001
"SNMP Index"=dword:00000001
"Queue"="PASSTHRU"
"Double Spool"=dword:00000000
-------------
IP_001.002.003.004 est le nom du port.
Et voilà le fichier .cmd permettant d'installer automatiquement une imprimante:
-------------
::
::Script de déploiement d'une Imprimante HP2420 sur le port 001.002.003.004
::
@echo off
::creation du port d'impression
echo Creation du port d'impression 001.002.003.004...
regedit /S .\_Ports\001.002.003.004.reg
::redemarrage du service spouleur d'impression
net stop "Spouleur d'impression"
net start "Spouleur d'impression"
::creation de l'imprimante
echo Installation de l'imprimante 'HP2420' sur le port '001.002.003.004' en cours...
rundll32 printui.dll,PrintUIEntry /if /f .\HP2420\hpc24x0d.inf /b "auto-HP2420" /r "IP_001.002.003.004" /m "HP LaserJet 2420 PS"
::declaration d'imprimante par defaut
echo Declaration de l'imprimante par defaut...
rundll32 printui.dll,PrintUIEntry /y /n "auto-HP2420"
-------------
pour plus d'infos:
rundll32 printui.dll,PrintUIEntry /?
et le tour est joué! copier coller pour plusieurs imprimantes, la dernière installée avec ces scripts sera l'imprimante par défaut.
emertyl