Pour que d'autres puissent trouver cette information, voici l'adresse exact (de cmd.exe
) que j'exécute pour ajouter de manière programmée une imprimante réseau sous Windows 7 (cela semble être assez rare, même après beaucoup de recherches sur Google) :
cscript c:\Windows\System32\Printing_Admin_Scripts\en-US\prnport.vbs ^
-a -r IP_10.0.0.100 -h 10.0.0.100
rundll32 printui.dll,PrintUIEntry /if /b "printer" /f %windir%\inf\prnhp002.inf^
/r "IP_10.0.0.100" /m "HP LaserJet 4200/4300 PCL6" /Z
(si vous ne le saviez pas, comme moi je ne le savais pas, ^
est le caractère de continuation de ligne dans cmd.exe). Vous devrez probablement utiliser un autre inf que celui indiqué ci-dessus. J'ai parcouru tous les fichiers dans C:\Windows\inf
à la recherche du exact le texte de mon pilote d'imprimante (HP LaserJet 4200/4300 PCL6") pour découvrir celui dont j'ai besoin.
Une autre astuce utile consiste à exécuter une ligne unique PowerShell pour supprimer toutes les anciennes imprimantes existantes (si ce n'est pas évident, cela supprimera toutes les imprimantes que vous avez actuellement installées) :
powershell -command "foreach ($p in Get-WmiObject Win32_Printer) {$p.Delete()}"