Как узнать, какая программа отправляет задание печати в диспетчер очереди?
Привет,
Я создал мониторинг Спулера Windows для заданий печати на C# и C++ и ищу способ получить имя программы, которая отправила задание в Спулер принтера. Printjob имеет printProcessor (я получаю JOB_INFO_2, эта информация находится в WMI Win32_PrintJob PrintProcessor), но не такие программы, как Winword, Excel, Notepad, Explorer, что угодно...
Имя работы не является надежным способом, поэтому:
Есть ли какой-нибудь способ получить программу, которую пользователь использует для печати документа программно?
Я использую Windows 10, .NET Framework 4.5, C#, C++, но любое предложение на другом языке будет оценено по достоинству.
С уважением.
Что я уже пробовал:
Мне удалось получить структуру JOB_INFO_2, но программы, которую пользователь использует для печати документа, там нет.
Richard MacCutchan
Если имя исходного приложения не сохраняется в очереди заданий, то найти его невозможно.