PrintSystemDesiredAccess Enumeration

Definition

Gibt die unterschiedlichen Zugriffsrechte (bzw. Zugriffsebenen) für Druckobjekte an.

public enum class PrintSystemDesiredAccess
public enum PrintSystemDesiredAccess
type PrintSystemDesiredAccess = 
Public Enum PrintSystemDesiredAccess
Vererbung
PrintSystemDesiredAccess

Felder

AdministratePrinter 983052

Das Recht, alle administrativen Aufgaben für die Druckwarteschlange durchzuführen, einschließlich des Rechts, Druckaufträge anzuhalten und fortzusetzen, sowie das Recht alle Aufträge aus der Warteschlange zu löschen. Diese Zugriffsebene umfasst auch alle Rechte unter UsePrinter.

AdministrateServer 983041

Das Recht, alle administrativen Aufgaben für den Druckerserver durchzuführen. Diese Zugriffsebene umfasst keineAdministratePrinter-Rechte für die vom Server gehosteten Druckwarteschlangen.

EnumerateServer 131074

Das Recht, die Warteschlangen auf dem Druckerserver aufzuführen.

None 0

Kein Zugriff.

UsePrinter 131080

Das Recht, Druckaufträge zur Warteschlange hinzuzufügen und eigene Aufträge einer Person zu löschen und aufzuführen.

Beispiele

Im folgenden Beispiel wird gezeigt, wie Sie diese Enumeration verwenden, um einen zweiten Drucker zu installieren, der sich in seinen Eigenschaften von einem vorhandenen Drucker nur in Bezug auf Standort, Port und freigegebene status unterscheidet.

LocalPrintServer myLocalPrintServer = new LocalPrintServer(PrintSystemDesiredAccess.AdministrateServer);
PrintQueue sourcePrintQueue = myLocalPrintServer.DefaultPrintQueue;
PrintPropertyDictionary myPrintProperties = sourcePrintQueue.PropertiesCollection;

// Share the new printer using Remove/Add methods
PrintBooleanProperty shared = new PrintBooleanProperty("IsShared", true);
myPrintProperties.Remove("IsShared");
myPrintProperties.Add("IsShared", shared);

// Give the new printer its share name using SetProperty method
PrintStringProperty theShareName = new PrintStringProperty("ShareName", "\"Son of " + sourcePrintQueue.Name +"\"");
myPrintProperties.SetProperty("ShareName", theShareName);

// Specify the physical location of the new printer using Remove/Add methods
PrintStringProperty theLocation = new PrintStringProperty("Location", "the supply room");
myPrintProperties.Remove("Location");
myPrintProperties.Add("Location", theLocation);

// Specify the port for the new printer
String[] port = new String[] { "COM1:" };

// Install the new printer on the local print server
PrintQueue clonedPrinter = myLocalPrintServer.InstallPrintQueue("My clone of " + sourcePrintQueue.Name, "Xerox WCP 35 PS", port, "WinPrint", myPrintProperties);
myLocalPrintServer.Commit();

// Report outcome
Console.WriteLine("{0} in {1} has been installed and shared as {2}", clonedPrinter.Name, clonedPrinter.Location, clonedPrinter.ShareName);
Console.WriteLine("Press Return to continue ...");
Console.ReadLine();
Dim myLocalPrintServer As New LocalPrintServer(PrintSystemDesiredAccess.AdministrateServer)
Dim sourcePrintQueue As PrintQueue = myLocalPrintServer.DefaultPrintQueue
Dim myPrintProperties As PrintPropertyDictionary = sourcePrintQueue.PropertiesCollection

' Share the new printer using Remove/Add methods
Dim [shared] As New PrintBooleanProperty("IsShared", True)
myPrintProperties.Remove("IsShared")
myPrintProperties.Add("IsShared", [shared])

' Give the new printer its share name using SetProperty method
Dim theShareName As New PrintStringProperty("ShareName", """Son of " & sourcePrintQueue.Name & """")
myPrintProperties.SetProperty("ShareName", theShareName)

' Specify the physical location of the new printer using Remove/Add methods
Dim theLocation As New PrintStringProperty("Location", "the supply room")
myPrintProperties.Remove("Location")
myPrintProperties.Add("Location", theLocation)

' Specify the port for the new printer
Dim port() As String = { "COM1:" }


' Install the new printer on the local print server
Dim clonedPrinter As PrintQueue = myLocalPrintServer.InstallPrintQueue("My clone of " & sourcePrintQueue.Name, "Xerox WCP 35 PS", port, "WinPrint", myPrintProperties)
myLocalPrintServer.Commit()

' Report outcome
Console.WriteLine("{0} in {1} has been installed and shared as {2}", clonedPrinter.Name, clonedPrinter.Location, clonedPrinter.ShareName)
Console.WriteLine("Press Return to continue ...")
Console.ReadLine()

Hinweise

Die Zugriffsrechte, die auf jeder Zugriffsebene verfügbar sind, variieren wie folgt:

  • Gibt an, ob es sich bei dem Druckserver um einen Computer oder einen Druckserver Anwendung.

  • Das verwendete Betriebssystem.

  • Die installierten Sicherheitsupdates.

  • Die unterstützten Sicherheitsrichtlinien.

Aus diesem Grund sind Zugriffsberechtigungsbeschreibungen im Abschnitt "Mitglieder" typisch für die Rechte, die den einzelnen Zugriffsebenen entsprechen, aber die aufgeführten Zugriffsebenen bieten möglicherweise mehr oder weniger Rechte für bestimmte Systeme.

Diese Werte werden in erster Linie als Parameter für PrintServer und PrintQueue Konstruktoren verwendet. Die Konstruktoren lösen Ausnahmen aus, wenn Sie einen Wert verwenden, der nur auf eine andere Art von Objekt angewendet werden kann. Übergeben Sie beispielsweise AdministratePrinter nicht an einen PrintServer Konstruktor.

Gilt für: