1 votes

Script PowerShell pour réinstaller l'imprimante, la définir par défaut si elle était par défaut

Nous avons une imprimante au travail qui nous pose problème. Nous avons essayé quelques solutions différentes mais lorsque qu'un utilisateur tente d'imprimer sur cette imprimante, Windows 7 affiche parfois quelque chose comme :

Windows doit télécharger et installer un pilote logiciel depuis l'ordinateur...

Cependant, l'ordinateur a déjà le bon pilote. J'ai essayé de changer quelques paramètres dans notre stratégie de groupe selon les solutions qui sont apparues lorsque j'ai recherché ce problème, mais jusqu'à présent rien n'a fonctionné. Pour l'instant, je pense qu'il serait préférable de simplement laisser Windows réinstaller l'imprimante à chaque fois que l'utilisateur se connecte.

Je veux que l'imprimante soit définie comme imprimante par défaut uniquement si l'utilisateur l'avait déjà définie comme imprimante par défaut. Comment puis-je scripter cela en PowerShell ?

0voto

surfbert Points 1

Cela peut être réalisé en utilisant WMI en utilisant la classe Win32_Printer. Voici un exemple en utilisant powershell, vous pouvez également le faire en vbscript.

Vous pouvez adapter le script ci-dessous à vos besoins. L'exemple suppose que le pilote est appelé "TOSHIBA e-STUDIO3510cSeriesPCL6"

$driver_name = 'TOSHIBA e-STUDIO3510cSeriesPCL6'

$printers = Get-WmiObject -Class win32_printer -Filter "DriverName='$driver_name'"

foreach ($printer in $printers) { 

    $printer.Delete()

    $return_status = (Invoke-WmiMethod -Class win32_printer -Name AddPrinterConnection -ArgumentList $printer.Name).ReturnStatus

    If ($return_status -eq 0 -and $printer.Default) { 

        (Get-WmiObject -Class win32_printer -Filter "Name='$($printer.Name)'").SetDefault() 
    }
}

Ce que fait le script est de rechercher quelles imprimantes utilisent un pilote particulier et de les réinstaller tout en maintenant le statut d'imprimante par défaut si nécessaire.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X