Testseite drucken mit PowerShell

Windows 10 und Windows Server 2016 sind standardgemäß mit dem PrintManagement Modul ausgestattet. Das bedeutet, dass mit PowerShell Drucker angesteuert und verwaltet werden können. Unter anderem ist es möglich eine Drucker Testseite drucken zu lassen. Diese Funktion ist eigentlich nur im Kontext-Menü der Drucker verfügbar.

Warum ist es relevant eine Testseite auszudrucken? Hat man beispielsweise einen Drucker inklusive Treiber mit PowerShell installiert, so möchte man danach die Funktionalität testen. Hier ist die klassische Testseite die beste Variante um zu überprüfen, ob die Installation erfolgreich war.

Testseite drucken mit PowerShell

Nachdem man den Drucker und die dazugehörigen Treiber per PowerShell installiert hat, möchte man die Funktionalität des Druckers testen. Die beste Möglichkeit ist hierzu das Drucken einer Testseite. Das ist auch mit PowerShell möglich.

Hierzu nutzt man das PowerShell Cmdlet Invoke-CimMethod -MethodName printtestpage zum Drucken der Testseite. Hier wird eine Liste an Druckern ausgegeben. Für jeden gewählten Drucker wird eine Testseite gedruckt.

Get-Printer | 
    Out-GridView -Title 'Testseite auf gewaehlten Druckern drucken' -OutputMode Multiple |
    ForEach-Object {
        $printerName = $_.Name
        $result = Get-CimInstance Win32_Printer -Filter "name LIKE '$printerName'" |
            Invoke-CimMethod -MethodName printtestpage 
        if ($result.ReturnValue -eq 0)
        {
            "Testseite auf $printerName ausgedruckt."
        }
        else
        {
            "Testseite kann auf $printerName nicht ausgedruckt werden."
            "Fehler-Code $($result.ReturnValue)"
        }
    }

Nach erfolgreichem Drucken erhält man eine Meldung, dass die Seite erfolgreich gedruckt wurde. Genauso erhält man aber eine Ausgabe inklusive Fehler-Code, wenn die Testseite NICHT ausgedruckt werden konnte. Natürlich kann der PS-Code erweitert werden, um beispielsweise die Installation nochmal zu versuchen.

Johannes
 

Click Here to Leave a Comment Below 0 comments