LocalPrintServer.GetDefaultPrintQueue Method

Definition

Returns a reference to the default print queue of the LocalPrintServer.

public:
 static System::Printing::PrintQueue ^ GetDefaultPrintQueue();
public static System.Printing.PrintQueue GetDefaultPrintQueue ();
static member GetDefaultPrintQueue : unit -> System.Printing.PrintQueue
Public Shared Function GetDefaultPrintQueue () As PrintQueue

Returns

The default PrintQueue.

Examples

The following example shows how to use this method to discover at run time the properties, and the types of those properties, of a print queue, without using reflection.


// Enumerate the properties, and their types, of a queue without using Reflection
LocalPrintServer localPrintServer = new LocalPrintServer();
PrintQueue defaultPrintQueue = LocalPrintServer.GetDefaultPrintQueue();

PrintPropertyDictionary printQueueProperties = defaultPrintQueue.PropertiesCollection;

Console.WriteLine("These are the properties, and their types, of {0}, a {1}", defaultPrintQueue.Name, defaultPrintQueue.GetType().ToString() +"\n");

foreach (DictionaryEntry entry in printQueueProperties)
{
    PrintProperty property = (PrintProperty)entry.Value;

    if (property.Value != null)
    {
        Console.WriteLine(property.Name + "\t(Type: {0})", property.Value.GetType().ToString());
    }
}
Console.WriteLine("\n\nPress Return to continue...");
Console.ReadLine();

' Enumerate the properties, and their types, of a queue without using Reflection
Dim localPrintServer As New LocalPrintServer()
Dim defaultPrintQueue As PrintQueue = LocalPrintServer.GetDefaultPrintQueue()

Dim printQueueProperties As PrintPropertyDictionary = defaultPrintQueue.PropertiesCollection

Console.WriteLine("These are the properties, and their types, of {0}, a {1}", defaultPrintQueue.Name, defaultPrintQueue.GetType().ToString() + vbLf)

For Each entry As DictionaryEntry In printQueueProperties
    Dim [property] As PrintProperty = CType(entry.Value, PrintProperty)

    If [property].Value IsNot Nothing Then
        Console.WriteLine([property].Name & vbTab & "(Type: {0})", [property].Value.GetType().ToString())
    End If
Next entry
Console.WriteLine(vbLf & vbLf & "Press Return to continue...")
Console.ReadLine()

Remarks

Your application will have only UsePrinter access to the default queue, even if you have AdministrateServer rights to the print server. To open the queue with greater access, use one of the PrintQueue constructors that enables you to specify the desired access level.

Applies to