Скрипт принтера Powershell - PullRequest
       7

Скрипт принтера Powershell

0 голосов
/ 28 октября 2018

Я переведу свой вопрос на английский, чтобы каждый мог его прочитать!

Я не очень хорош в powershell, я работаю над ним 3 дня.

Мне нужно создать скрипт powershellчтобы показать, какой принтер по умолчанию выбран на компьютере (пример: PrinterA ) перед выполнением строки, чтобы выбрать другой принтер в качестве принтера по умолчанию ( PrinterB ).

После этого мне нужно сбросить старый принтер по умолчанию ( PrinterA ).

Я выполняю строку:

Get-WmiObject -query " SELECT * FROM Win32_Printer WHERE Default=$true"

, чтобы показать принтер по умолчанию, ноЯ не знаю, как запомнить это.

Чтобы выбрать ( printeB ), я делаю:

RUNDLL32 PRINTUI.DLL,PrintUIEntry /y /n "PrinteB"

Можете ли вы мне помочь, пожалуйста?

Ответы [ 2 ]

0 голосов
/ 28 октября 2018

вы не упомянули конкретную версию Powershell, которую вы используете.[ ухмылка ] предполагая, что вы запускаете ps5.1 на win10, вы можете использовать командлеты управления печатью, чтобы делать то, что вам нужно.взгляните на это ...

PrintManagement
- https://docs.microsoft.com/en-us/powershell/module/printmanagement/?view=win10-ps

командлет Get-Printer получит информацию о доступных принтерах.командлет Set-Printer позволит вам установить принтер по умолчанию.

0 голосов
/ 28 октября 2018

Я бы использовал

$OldDefaultPrinter = (Get-WmiObject win32_printer | Where-Object Default -eq $True).Name

Для сохранения текущего принтера по умолчанию в переменной.

Для восстановления по вашему методу

RUNDLL32 PRINTUI.DLL,PrintUIEntry /y /n "$OldDefaultPrinter"
...