Skip to content
Printers Setup
Menu

Ordinateurs

Ajouter une imprimante avec PowerShell : port et pilote

Rédigé par Printers Setup Editorial Team · Mis à jour

Une personne travaillant sur un ordinateur à un bureau à domicile
Photo: Shixart1985, CC BY 2.0, via Wikimedia Commons

L’application Paramètres suffit pour une imprimante sur un PC. Mais pour préparer plusieurs ordinateurs, garder un script réutilisable ou quand Paramètres ne trouve tout simplement pas l’imprimante, il est plus rapide d’ajouter une imprimante avec PowerShell. Windows 11 inclut le module PrintManagement : rien à installer. Ce guide présente les trois briques, pilote, port et imprimante, avec des commandes à copier et adapter.

Ce qu’il faut avant de commencer

  • L’adresse IP de l’imprimante. Imprimez la page de configuration réseau de l’imprimante ou regardez dans la box. Notre guide pour trouver l’adresse IP de l’imprimante réunit toutes les méthodes. Réservez cette adresse dans la box pour qu’elle ne change pas.
  • Un pilote. Soit un pilote que Windows possède déjà, soit le package du fabricant décompressé dans un dossier contenant un fichier .inf. Notre guide des pilotes sous Windows 11 explique le choix.
  • Un PowerShell administrateur. Faites un clic droit sur Démarrer et choisissez Terminal (administrateur).

Étape 1 : voir ce qui existe déjà

Commencez par regarder, pour ne pas créer de doublons :

Get-Printer | Select-Object Name, DriverName, PortName
Get-PrinterDriver | Select-Object Name
Get-PrinterPort | Select-Object Name, PrinterHostAddress

Get-Printer liste les imprimantes de l’ordinateur. Si le pilote voulu figure déjà dans Get-PrinterDriver, passez à l’étape 3.

Étape 2 : préparer et installer le pilote

Add-PrinterDriver installe un pilote déjà présent dans le magasin de pilotes de Windows ; il ne télécharge rien. L’exemple de Microsoft est simplement Add-PrinterDriver -Name "Nom du pilote", et la cmdlet exige des identifiants d’administrateur.

Si le pilote vient du fabricant, ajoutez d’abord son fichier .inf au magasin avec l’outil pnputil de Microsoft :

pnputil -i -a "C:\Drivers\ImprimanteExemple\exemple.inf"
Add-PrinterDriver -Name "Example Printer Driver"

La valeur de -Name doit correspondre exactement au nom de modèle du .inf, espaces et majuscules compris. En cas de doute, ouvrez le .inf dans le Bloc-notes et cherchez les lignes de modèles, ou lancez printui /s, ouvrez l’onglet Pilotes et choisissez Ajouter pour parcourir les noms. La documentation de printui mentionne aussi /ia pour installer un pilote depuis un .inf, si vous préférez cet outil.

Étape 3 : créer un port TCP/IP

Une imprimante réseau a besoin d’un port qui pointe vers son adresse. L’exemple de Microsoft en crée un avec -PrinterHostAddress :

Add-PrinterPort -Name "IP_192.168.1.20" -PrinterHostAddress "192.168.1.20"

Le nom du port n’est qu’une étiquette ; y mettre l’adresse aide à le reconnaître plus tard. D’après la documentation Microsoft, Add-PrinterPort n’exige pas de droits d’administrateur et peut aussi créer des ports LPR si votre imprimante en a besoin.

Étape 4 : ajouter l’imprimante

Assemblez maintenant les trois éléments :

Add-Printer -Name "Imprimante bureau" -DriverName "Example Printer Driver" -PortName "IP_192.168.1.20"

-Name est ce que les utilisateurs verront dans les boîtes de dialogue d’impression : choisissez un nom clair, comme « Laser étage ». Relancez Get-Printer pour vérifier qu’elle apparaît.

Se connecter à une imprimante partagée

Si l’imprimante est partagée par un autre ordinateur ou un serveur d’impression, ni port ni pilote local ne sont nécessaires. Le second exemple d’Add-Printer chez Microsoft se connecte en une ligne :

Add-Printer -ConnectionName "\\ServeurImpression\Imprimante bureau"

Le partage doit déjà exister sur l’autre machine ; notre guide pour partager une imprimante sur le réseau (en anglais) l’explique, et un serveur d’impression Raspberry Pi peut aussi jouer ce rôle.

Étape 5 : mettre par défaut et tester

Windows 11 peut gérer lui-même l’imprimante par défaut. Si vous voulez que celle-ci le reste, désactivez d’abord Autoriser Windows à gérer mon imprimante par défaut, comme expliqué dans imprimante par défaut sous Windows 11. L’outil printui de Microsoft peut ensuite la définir par défaut et imprimer une page de test :

rundll32 printui.dll,PrintUIEntry /y /n "Imprimante bureau"
rundll32 printui.dll,PrintUIEntry /k /n "Imprimante bureau"

Dans la documentation de printui, /y définit l’imprimante par défaut et /k imprime une page de test. Notre guide de la page de test indique quoi vérifier dessus.

Préférences d’impression par défaut

La cmdlet Set-PrintConfiguration modifie des valeurs par défaut comme le recto verso ou la couleur, par exemple Set-PrintConfiguration -PrinterName "Imprimante bureau" -DuplexingMode TwoSidedLongEdge. Tous les pilotes ne prennent pas en charge toutes les options. Pour le faire à la souris, voyez comment modifier les préférences d’impression sous Windows 11.

Un script réutilisable pour plusieurs PC

Une fois les commandes validées sur un ordinateur, enregistrez-les dans un fichier .ps1 et exécutez-le sur les autres. Un modèle simple vérifie avant de créer, si bien qu’une double exécution ne fait aucun dégât :

$ip = "192.168.1.20"
$port = "IP_$ip"
$driver = "Example Printer Driver"
$name = "Imprimante bureau"
if (-not (Get-PrinterDriver -Name $driver -ErrorAction SilentlyContinue)) { Add-PrinterDriver -Name $driver }
if (-not (Get-PrinterPort -Name $port -ErrorAction SilentlyContinue)) { Add-PrinterPort -Name $port -PrinterHostAddress $ip }
if (-not (Get-Printer -Name $name -ErrorAction SilentlyContinue)) { Add-Printer -Name $name -DriverName $driver -PortName $port }

Le pilote doit se trouver dans le magasin de chaque PC : copiez le dossier du pilote et lancez d’abord la ligne pnputil sur les machines qui ne l’ont pas. La documentation Microsoft indique que ces cmdlets acceptent -ComputerName et fonctionnent dans une session PowerShell à distance, ce qui permet de configurer un PC sans se déplacer. La stratégie d’exécution des scripts de votre organisation peut bloquer les scripts non signés ; sur un PC professionnel, demandez au service informatique avant de la modifier.

Erreurs fréquentes

  • « Le pilote spécifié n’existe pas dans le magasin de pilotes » : le .inf n’a pas été ajouté ou le nom ne correspond pas. Refaites l’étape 2.
  • Accès refusé : PowerShell ne tourne pas en administrateur.
  • Imprimante ajoutée mais impressions en échec : vérifiez l’adresse IP du port avec Get-PrinterPort et que l’ordinateur joint bien cette adresse.

Pour tout annuler, voyez comment supprimer une imprimante sous Windows 11, avec Remove-Printer et Remove-PrinterDriver. La méthode à la souris se trouve dans ajouter une imprimante sous Windows 11.

Questions fréquentes

Faut-il des droits d'administrateur pour ajouter une imprimante avec PowerShell ?

Pour les pilotes, oui : la documentation Microsoft indique qu'Add-PrinterDriver exige des identifiants d'administrateur. Add-PrinterPort non, et Add-Printer peut en avoir besoin selon l'imprimante et le pilote. Ouvrir Terminal en administrateur évite les surprises.

Où trouver le nom du pilote pour Add-PrinterDriver ?

C'est le nom de modèle inscrit dans le fichier .inf du pilote. Après l'ajout du .inf avec pnputil, il apparaît en général dans la liste de l'assistant d'ajout de pilote, ou ouvrez le .inf dans le Bloc-notes et cherchez les lignes de modèles. Il doit correspondre exactement.

Peut-on ajouter une imprimante sur un autre ordinateur ?

Oui. Les cmdlets de gestion d'impression acceptent le paramètre -ComputerName, et Microsoft précise qu'elles fonctionnent dans une session PowerShell à distance. L'ordinateur distant doit tout de même avoir le pilote dans son magasin.

Comment revenir en arrière ?

Utilisez Remove-Printer avec le nom de l'imprimante, puis Remove-PrinterDriver et, si vous le souhaitez, Remove-PrinterPort. Notre guide pour supprimer une imprimante sous Windows 11 détaille l'ordre.

Sources

PS

Printers Setup Editorial Team

Editorial team

The Printers Setup team writes and reviews step-by-step printer setup guides and checks them against the current menus of Windows, macOS, ChromeOS, iOS and Android.

Guides associés