Отслеживать все задания очереди печати - PullRequest
0 голосов
/ 05 июня 2019

Как я могу отслеживать все задания очереди печати из фонового приложения, такого как PowerShell, командную строку или форму C # win, и сохранять все журналы в таблице SQL Server?

Обязательные данные журнала:

  1. Владелец
  2. Название документа
  3. Страницы
  4. размер

Я пытался https://blogs.technet.microsoft.com/parallel_universe_-_ms_tech_blog/2012/09/27/simple-print-queue-monitor-powershell/

1 Ответ

2 голосов
/ 05 июня 2019

Используйте классы в пространстве имен System.Printing, например:

Локальные:

Add-Type -AssemblyName "System.Printing"
[System.Printing.LocalPrintServer]::GetDefaultPrintQueue()

Или удаленные:

Add-Type -AssemblyName "System.Printing"
[System.Printing.PrintServer]::new("\\$computerName", [System.Printing.PrintSystemDesiredAccess]::AdministrateServer)

Вы также можете использоватьPrintManagement Модуль PowerShell:

Import-Module "PrintManagement"
$printers = Get-Printer -ComputerName $computerName
Get-PrintJob -ComputerName $computerName -PrinterName $printers[0].Name
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...