Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   Изменить владельца задания печати (http://forum.oszone.net/showthread.php?t=214047)

Surround 25-08-2011 19:08 1739277

Изменить владельца задания печати
 
Здравствуйте!
Есть консольное приложение на c#, исполняемое на сервере, которое отправляет на печать графические изображения. В сети используется AD. Возможно ли как-то изменить владельца задания печати, то есть печатать не из под системного пользователя сервера, а из-под какого-нибудь доменного юзера?
Печать документа делается через класс PrintDocument.

Delirium 26-08-2011 07:19 1739539

Цитата:

Цитата Surround
Возможно ли как-то изменить владельца задания печати »

Создать задачу в планировщике и указать владельцем задания любого нужного пользователя, тогда задача будет запускаться от того имени, какое укажешь.

Либо, если задача запускается руками - правой кнопкой с зажатым Shift - запуск от имени другого пользователя.

Surround 26-08-2011 09:03 1739569

печать осуществляется из программы следующим образом:
PHP код:

PrintDocument printDocument = new PrintDocument();
printDocument.PrinterSettings.PrinterName "имя принтера";
printDocument.PrintPage += new PrintPageEventHandler(printDocument_PrintPage);
printDocument.Print(); 

событие printDocument_PrintPage подгружает в объект картинку, которая затем печатается. В очереди принтера задание выполняется от имени текущего пользователя, которое хотелось бы изменить.

Покопался, нашел способ обратится к свойствам очереди через объект ManagementObjectSearcher :
PHP код:

string query "SELECT * FROM Win32_PrintJob";
using (ManagementObjectSearcher jobQuery = new ManagementObjectSearcher(query))
{
         
using (ManagementObjectCollection jobs jobQuery.Get())
         {

              foreach (
ManagementObject job in jobs)
              {
                   
Console.WriteLine(job["Document"]);
              }
         }


но опять-таки, это только чтение...


Время: 23:38.

Время: 23:38.
© OSzone.net 2001-