EnumeratedPrintQueueTypes Enumeration


The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Specifies attributes of print queues.

This enumeration has a FlagsAttribute attribute that allows a bitwise combination of its member values.

Namespace:   System.Printing
Assembly:  System.Printing (in System.Printing.dll)

public enum EnumeratedPrintQueueTypes

Member nameDescription

A print queue that is connected to the specified print server.


A print queue that sends a print job directly to printing instead of spooling the job first.


A print queue for a printer that has bidirectional communication enabled.


A print queue that holds its print jobs when the document and printer configurations do not match.


A print queue that services a fax machine.


A print queue that keeps jobs in the queue after printing them.


A print queue that is installed as a local print queue on the specified print server.


A print queue that is visible in the directory of printers.


A print queue that was installed by using the Push Printer Connections computer policy. See Remarks.


A print queue that was installed by using the Push Printer Connections user policy. See Remarks.


A print queue that allows multiple print jobs in the queue.


A print queue that spools only raw data.


A print queue that is shared.


A print queue that is installed by the redirection feature in Terminal Services.


A print queue that can work offline.

Use these values with the GetPrintQueues method to list subsets of available print queues.

PushedMachineConnection and PushedUserConnection refer to policies that enable automated connection of machines and users to printers. See the section "Deploying Printers to Users or Computers by Using Group Policy" in the Step-by-Step Guide for Print Management.

The following example shows how to use the EnumeratedPrintQueueTypes enumeration to get a subset of available print queues.

// Specify that the list will contain only the print queues that are installed as local and are shared
EnumeratedPrintQueueTypes[] enumerationFlags = {EnumeratedPrintQueueTypes.Local,

LocalPrintServer printServer = new LocalPrintServer();

//Use the enumerationFlags to filter out unwanted print queues
PrintQueueCollection printQueuesOnLocalServer = printServer.GetPrintQueues(enumerationFlags);

Console.WriteLine("These are your shared, local print queues:\n\n");

foreach (PrintQueue printer in printQueuesOnLocalServer)
    Console.WriteLine("\tThe shared printer " + printer.Name + " is located at " + printer.Location + "\n");
Console.WriteLine("Press enter to continue.");

.NET Framework
Available since 3.0
Return to top