Como posso recuperar e exibir programaticamente valores de propriedade das configurações de uma impressora Printing Defaults
?
Posso recuperar com êxito os valores de propriedade de uma impressora Preferences
usando o PowerShell, mas estou encontrando dificuldades ao tentar acessar as configurações especificamente no Printing Defaults
.
Mais contexto
Assim, você pode definir uma impressora preferences
e definir uma impressora printing defaults
:
- Preferências de impressão:
Printer Properties
|General
guia |Preferences
- Padrões de impressão:
Printer Properties
|Advanced
guia |Printing Defaults
Ao executar esta consulta do PowerShell para uma impressora específica, ele recupera apenas as configurações de Preferences
e não de Printing Defaults
, que são as informações de que preciso.
Obtenha padrões de impressão
$p = "Printer XYZ";
$printerConfigs = Get-WmiObject -Class Win32_PrinterConfiguration | Where {$_.Name -like "*$p*"};
foreach ($config in $printerConfigs) {
$printerName = $config.Caption;
$collate = $config.Collate;
$color = $config.Color;
$duplex = $config.Duplex;
$paperSize = $config.PaperSize;
## -- Display output
Write-Host "Printer: $printerName" -ForegroundColor Yellow;
Write-Host "Collate: $collate" -ForegroundColor Yellow;
Write-Host "Color: $color" -ForegroundColor Yellow;
Write-Host "Duplex: $duplex" -ForegroundColor Yellow;
Write-Host "Paper Size: $paperSize" -ForegroundColor Yellow;
Write-Host "-----------------------";
};
Configurações da impressora
Usando driver: RICOH PCL6 Universal V4.37
Está incluída uma captura de tela do que vejo nas opções de preferências desta impressora, e a saída da consulta do PowerShell mostra isso conforme esperado. No entanto, nos padrões de impressão , ela é definida como colorida e frente e verso, definida de forma diferente das preferências .
Se eu alterar as preferências e, em seguida, executar a consulta do PowerShell, poderei ver os valores de saída mudarem conforme esperado – não consigo ver os padrões de impressão e esses valores quando eles mudam (ou são diferentes) ao executar novamente esta consulta. É interessante ver os valores de configuração padrão de impressão .
Isto é o que eu vejo emPreferences
Isto é o que eu vejo emPrinting Defaults
Saída
Printer: Printer XYZ
Collate: False
Color: 1
Duplex: False
Paper Size: Letter 8 1/2 x 11 in
-----------------------
Também tentei usar Get-WmiObject -Class Win32_Printer
uma série de outras coisas, mas não recuperei as configurações Printing Defaults
definidas na impressora.
Concluindo, espero receber orientações, conselhos, exemplos de código ou qualquer experiência que você tenha tido na recuperação bem-sucedida dessas propriedades da impressora. Além disso, se você tiver soluções que não sejam do PowerShell que possam me ajudar a atingir esse objetivo, também estou aberto para explorar essas opções. Meu foco principal é obter os valores de propriedade necessários das gráficas.
Para recuperar as configurações de padrões de impressão
Get-PrintConfiguration
de uma impressora com o PowerShell, você pode utilizar o cmdlet. Esta abordagem é compatível com Windows 10 e Windows Server 2019 , conforme confirmado.Nota: Todas as impressoras confirmadas para funcionar estavam usando drivers classificados como " Universal " do fabricante.
PowerShell
Saída
Recursos de apoio
Get-PrintConfiguração
Alterar as configurações padrão da impressora com Powershell
Set-PrintConfiguração
Gratuito
A Estrutura DEVMODEW