Как отключить расширенные функции печати (RawOnly) с C#

Я пытаюсь отключить расширенные функции печати (RawOnly) с C#. Я могу перечислить все принтеры:

foreach (string printer in PrinterSettings.InstalledPrinters)
{
    Console.WriteLine(printer);
}

Я могу читать функцию RawOnly:

PrintQueueAttributes[] queueAttributes = { PrintQueueAttributes.RawOnly };
EnumeratedPrintQueueTypes[] enumerationFlags = { EnumeratedPrintQueueTypes.RawOnly };
LocalPrintServer printServer = new LocalPrintServer();
PrinterSettings settings = new PrinterSettings();
PrintQueueCollection printQueuesOnLocalServer = printServer.GetPrintQueues();
foreach (PrintQueue printer in printQueuesOnLocalServer)
{
     Console.WriteLine("\tThe printer " + printer.Name + "is Advanced Printing Features enabled" + printer.IsRawOnlyEnabled + "\n");
}
Console.WriteLine("Press enter to continue.");
Console.ReadLine();

Но я не знаю, как установить функцию RawOnly. Не могли бы вы помочь мне с этим. Спасибо.

Дополнительная информация о EnumeratedPrintQueueTypes https://msdn.microsoft.com/en-us/library/system.printing.enumeratedprintqueuetypes(v=vs.110).aspx

Дополнительная информация о PrintQueueAttributes https://msdn.microsoft.com/en-us/library/system.printing.printqueueattributes(v=vs.110).aspx?cs-save-lang=1&cs-lang=csharp

PS Я не хочу использовать Win32_Printer Class, потому что есть некоторые проблемы с этим.

0 ответов

Другие вопросы по тегам