PowerShell-Modul und CSV-Import

Das Modul WePrintEasy.psm1 nutzen Druckerverwaltung und Agent – und Sie können es in eigenen Skripten verwenden, z. B. um viele Zuweisungen auf einmal zu importieren.

Auf dieser Seite

Modul laden

Der Installer kopiert das Modul in den Installationsordner. Importieren Sie es in einer PowerShell-Sitzung auf dem Terminalserver:

Import-Module 'C:\Program Files\WePrintEasy\WePrintEasy.psm1'

Alle Befehle verwenden den bei der Installation hinterlegten Konfigurationspfad (Registry-Wert ConfigPath unter HKLM\SOFTWARE\WePrintEasy) – die lokale config.json oder die zentrale Datei auf einer Freigabe. Mit -ConfigPath arbeiten Sie mit einer anderen Datei. Zum Ändern brauchen Sie wie in der Druckerverwaltung Schreibrechte auf die Konfiguration.

Befehle für Zuweisungen

Befehl Zweck
Get-WpeAssignment [-Type User|Group] [-Name <Muster>] Zuweisungen anzeigen; -Name erlaubt Platzhalter und durchsucht auch den Anzeigenamen
Set-WpeAssignment -Type User|Group -Name <Konto> -Printer <Drucker> [-Priority <n>] [-Comment <Text>] Zuweisung anlegen oder ändern; die SID wird im Active Directory ermittelt
Remove-WpeAssignment -Type User|Group -Name <Konto> Zuweisung entfernen
Invoke-WpeRemoteForce -ComputerName <Server> -UserName <Konto> [-Credential <Anmeldedaten>] „Erzwingen (live)“ von der Konsole – siehe Fehlersuche
Get-WpeSystemStatus Die Systemprüfung des Reiters „Einrichtung“ als Objekte

Set-WpeAssignment und Remove-WpeAssignment unterstützen -WhatIf und -Confirm. Kontonamen können mit oder ohne Domäne angegeben werden (FIRMA\mmuster, mmuster@firma.local oder mmuster).

Beispiele

Import-Module 'C:\Program Files\WePrintEasy\WePrintEasy.psm1'

# Anzeigen
Get-WpeAssignment | Format-Table Type, Name, DisplayName, Printer, Priority

# Einzeln setzen / entfernen
Set-WpeAssignment -Type User  -Name mmuster -Printer '\\printsrv01\HP-Buero'
Set-WpeAssignment -Type Group -Name GG_Lager -Printer '\\printsrv01\Zebra-Lager' -Priority 20
Remove-WpeAssignment -Type User -Name mmuster

# Umgeleiteter Client-Drucker (Platzhalter)
Set-WpeAssignment -Type User -Name mmuster -Printer 'Brother HL-L2350DW*(umgeleitet*' -Comment 'Homeoffice'

Die Konfiguration wird atomar geschrieben, die vorherige Version bleibt als config.json.bak erhalten. Laufende Sitzungen übernehmen die Änderungen automatisch, spätestens nach einem Prüfintervall.

CSV-Massenimport

Viele Zuweisungen lassen sich in einem Rutsch aus einer CSV-Datei importieren. Spalten: Type;Name;Printer;Priority;Comment, getrennt durch Semikolon. Priority und Comment sind optional.

Type;Name;Printer;Priority;Comment
User;mmuster;\\printsrv01\HP-Buero-Mustermann;;Raum 2.14
User;eschmidt;\\printsrv01\Kyocera-Empfang;;
Group;GG_Buchhaltung;\\printsrv01\Kyocera-Buchhaltung;10;Abteilungsdrucker
Group;GG_Lager;\\printsrv01\Zebra-Lager;20;

Beispiel-CSV herunterladenconfig.example.json herunterladen

Import:

Import-Module 'C:\Program Files\WePrintEasy\WePrintEasy.psm1'

# Vorschau ohne zu speichern
Import-Csv .\zuweisungen.csv -Delimiter ';' | Set-WpeAssignment -WhatIf

# Importieren
Import-Csv .\zuweisungen.csv -Delimiter ';' | Set-WpeAssignment
  • Eine vorhandene Zuweisung desselben Benutzers bzw. derselben Gruppe wird aktualisiert, sonst wird eine neue angelegt.
  • Eine leere Spalte Priority behält die bisherige Priorität (neue Zuweisungen erhalten 100). Bei Gruppen gewinnt die kleinste Zahl.
  • Konten, die im Active Directory nicht gefunden werden, werden mit einer Fehlermeldung übersprungen; alle anderen werden importiert.
  • Die Datei wird am Ende des Imports einmal gespeichert.
  • Windows PowerShell 5.1 liest CSV-Dateien standardmäßig in der Codepage des Systems. Enthält die Datei Umlaute oder andere Sonderzeichen, speichern Sie sie als UTF-8 und ergänzen Sie bei Import-Csv den Parameter -Encoding UTF8.

Zuweisungen exportieren

Zur Sicherung oder zur Bearbeitung in Excel lassen sich die Zuweisungen als CSV exportieren:

Get-WpeAssignment | Select-Object Type, Name, Printer, Priority, Comment |
    Export-Csv .\zuweisungen-export.csv -Delimiter ';' -NoTypeInformation -Encoding UTF8

Die exportierte Datei hat dieselben Spalten und lässt sich mit Import-Csv … | Set-WpeAssignment wieder importieren.

Erzwingen (live) per PowerShell

Invoke-WpeRemoteForce -ComputerName TS01 -UserName mmuster

# Mit anderen Anmeldedaten (z. B. wenn die Konsole unter einem lokalen Konto läuft)
Invoke-WpeRemoteForce -ComputerName TS01 -UserName mmuster -Credential (Get-Credential)

Jeder Schritt wird farbig ausgegeben; das Ergebnisobjekt hat die Eigenschaften Success und Message. Voraussetzung sind Administratorrechte auf dem Terminalserver. Details unter Fehlersuche.

WePrintEasy herunterladen ZIP mit Setup-Assistent, Update- und Deinstallationsskript. Kostenlos · MIT-Lizenz

WePrintEasy 1.0.3 herunterladen