:

    IP-Drucker installieren

    In diesem Video zeigen wir dir, wie du IP-Drucker und deren Treiber mittels Intune installieren kannst - ohne den Einsatz von Universal Print oder anderen Cloud-Print-Lösungen.



    Für den Installations- und Deinstallationsprozess wird jeweils ein Script bereitgestellt. Diese sind so konzipiert, dass sie universell einsetzbar sind und nicht für jeden Drucker individuell angepasst werden müssen. Die notwendigen Parameter wie die IP-Adresse oder der Treibername werden in Intune spezifiziert.

    Benötigst du Unterstützung?

    Melde dich bei uns!



    Hier findest du die im Video genutzten Scripte.

    Install-IPPrinter.ps1

    Dieses Script steuert die gesamte Installation. Es beginnt mit der Treiberinstallation und überprüft, ob ein Druckerport mit der angegebenen IP bereits existiert. Danach stellt es sicher, dass der Treiber erfolgreich installiert wurde, bevor der Drucker verbunden wird.

    Kopiere das Script und speichere es als “Install-IPPrinter.ps1” ab.

    <#
    .SYNOPSIS
       Installation von IP-Druckern
     
    .DESCRIPTION
       Dieses Script dient der Installation von IP-Druckern und zugehöriger Treiber.
       Das Script ist zur Paketierung mittels IntuneWinAppUtil gedacht.
       Innerhalb des Pakets muss ein Unterordner namens "Drivers" existieren, welcher die
       benötigten Treiber enthält (.inf, .cat und .cab).
       ---
       Installationsbefehl in Intune (Parameter entsprechend befüllen):
       %SystemRoot%\sysnative\WindowsPowerShell\v1.0\powershell.exe -ExecutionPolicy Bypass -WindowStyle Hidden -File Install-IPPrinter.ps1 -PortIPAddress "" -PrinterName "" -DriverName "" -DriverInfFileName ".inf"
       ---
       Registry-Pfad für Detection Rule:
       HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Printers\DRUCKERNAME
    
     
    .EXAMPLE
       Install-IPPrinter.ps1 -PortIPAddress "192.168.1.10" -PrinterName "Drucker 1. OG" -DriverName "HP Universal Printing PCL 6" -DriverInfFileName "hpcu255u.inf"
     
    .PARAMETER PortIPAddress
       Die IP-Adresse des Druckers.
    
    .PARAMETER PrinterName
       Der Name, unter welchem der Drucker eingebunden werden soll.
    
    .PARAMETER DriverName
       Der exakte Name des Treibers. Dieser ist aus der .inf-Datei ersichtlich (im Texteditor öffnen).
    
    .PARAMETER DriverInfFileName
       Der Name der .inf-Datei inklusive Dateiendung, z.B. "hpcu255u.inf".
    
    .NOTES
      Version:        1.0
      Author:         Raphael Baud
      Creation Date:  2023-02-22
      Purpose/Change: Creation
    #>
    
    #################
    #---Parameter---#
    #################
    Param(
        [Parameter(Mandatory=$True)]
        [string]$PortIPAddress,
    
        [Parameter(Mandatory=$True)]
        [string]$PrinterName,
    
        [Parameter(Mandatory=$True)]
        [string]$DriverName,
    
        [Parameter(Mandatory=$True)]
        [string]$DriverInfFileName
    )
    
    #################
    #---Execution---#
    #################
    
    #Pfad definieren
    $PSScriptRoot = Split-Path -Parent -Path $MyInvocation.MyCommand.Definition
    
    #PortName definieren
    $PortName = "IP_$PortIPAddress"
    
    #Treiber stagen
    pnputil /add-driver "$PSScriptRoot\Drivers\$DriverInfFileName" /install
    
    #Treiber installieren
    Add-PrinterDriver -Name $DriverName
    
    #Druckerport installieren, wenn noch nicht vorhanden
    if(-not (Get-PrinterPort -Name $PortName -ErrorAction SilentlyContinue)) {
    
        Add-PrinterPort -Name $PortName -PrinterHostAddress $PortIPAddress
    
    }
    
    #Drucker verbinden, wenn Treiber erfolgreich installiert wurde
    if((Get-PrinterDriver -Name $DriverName -ErrorAction SilentlyContinue)) {
    
        Add-Printer -Name $PrinterName -PortName $PortName -DriverName $DriverName
    
    } else {
    
        Write-Warning "Treiber nicht installiert"
        exit 1
    
    }
    
    #nach der Installation etwas abwarten, um das Detection Script zu verzögern
    Start-Sleep -Seconds 180
    

    Remove-IPPrinter.ps1

    Dieses Script ist deutlich simpler. Es entfernt bei Ausführung den Drucker und den zugehörigen Port auf Basis des Druckernamens und der IP-Adresse.

    Kopiere das Script und speichere es als “Remove-IPPrinter.ps1” ab.

    <#
    .SYNOPSIS
       Deinstallation von IP-Druckern
     
    .DESCRIPTION
       Dieses Script dient der Entfernung von IP-Druckern, die über das Script
       "Install-IPPrinter.ps1" installiert wurden.
       ---
       Installationsbefehl in Intune (Parameter entsprechend befüllen):
       %SystemRoot%\sysnative\WindowsPowerShell\v1.0\powershell.exe -ExecutionPolicy Bypass -WindowStyle Hidden -File Remove-IPPrinter.ps1 -PortIPAddress "" -PrinterName ""
     
    .EXAMPLE
       Remove-IPPrinter.ps1 -PortIPAddress "192.168.1.10" -PrinterName "Drucker 1. OG"
     
    .PARAMETER PortIPAddress
       Die IP-Adresse des Druckers.
    
    .PARAMETER PrinterName
       Der Name des zu entfernenden Druckers.
    
    .NOTES
      Version:        1.0
      Author:         Raphael Baud
      Creation Date:  2023-02-22
      Purpose/Change: Creation
    #>
    
    #################
    #---Parameter---#
    #################
    Param(
        [Parameter(Mandatory=$True)]
        [string]$PortIPAddress,
    
        [Parameter(Mandatory=$True)]
        [string]$PrinterName
    )
    
    #################
    #---Execution---#
    #################
    
    #Drucker entfernen
    Remove-Printer $PrinterName
    
    #abwarten, bevor der Port entfernt wird
    Start-Sleep -Seconds 180
    
    #Port entfernen
    Remove-PrinterPort -Name "IP_$PortIPAddress"