peter-h
Goto Top

Powershell Drucker konfigurieren

Hallo zusammen,

Ausgangsituation

bin dabei ein php-Script zu erstellen wobei eine pdf Datei ausgedruckt wird.
PHP-Script funktioniert soweit:

$pdfname="test.pdf";  
$output = shell_exec('powershell -EP Bypass -C "Start-Process –FilePath \"' . $pdfname . '\" –Verb Print"');  
echo $output;

Mein Anliegen

Jetzt hätte ich noch gerne den Drucker konfiguriert
mit Papierfach und Hoch- oder Querformat
Powershell-Script
$Printername=(Get-WmiObject -Class Win32_Printer -Filter “Default = $true”).Name 
Set-PrintConfiguration -printername “$Printername” -PaperSize A4 

Danke schon mal im Voraus für Eure Unterstützung

Content-ID: 91158450606

Url: https://administrator.de/forum/powershell-drucker-konfigurieren-91158450606.html

Ausgedruckt am: 22.12.2024 um 06:12 Uhr

12168552861
Lösung 12168552861 18.04.2024 aktualisiert um 11:33:00 Uhr
Goto Top
Add-Type -AssemblyName System.Printing
$printerName = (Get-CimInstance Win32_Printer -Filter "Default = true").Name   
$server = new-object System.Printing.LocalPrintServer ([System.Printing.PrintSystemDesiredAccess]::EnumerateServer)
$queues = $server.GetPrintQueues() | ?{$_.Name -eq $printerName }
foreach($q in $queues){
    $objPrinter = new-object System.Printing.PrintQueue -argumentList $server,$q.Name,([System.Printing.PrintSystemDesiredAccess]::UsePrinter)
    $objPrinter.DefaultPrintTicket.PageOrientation = 'Landscape'  
    $objPrinter.DefaultPrintTicket.InputBin = [System.Printing.InputBin]::Manual
    $objPrinter.DefaultPrintTicket
}
# ab hier dann den Druckbefehl einleiten sonst wirken die Einstellungen für den PrintQueue nicht
# das die Settings immer nur für die aktuelle PS Session gelten ...
start-process -Filepath "<DEINDOK>" -verb print  
Gruß
Peter-H
Peter-H 26.04.2024 um 08:13:14 Uhr
Goto Top
Danke für die Hilfe,
sorry dass ich mich erst jetzt melde, war eine Woche flach gelegen......
probiere dass Script gleich aus

Danke noch mals