PrintSystemDesiredAccess Énumération

Définition

Spécifie les différents droits d'accès (ou niveaux d'accès) pour l'impression d'objets.

public enum class PrintSystemDesiredAccess
public enum PrintSystemDesiredAccess
type PrintSystemDesiredAccess = 
Public Enum PrintSystemDesiredAccess
Héritage
PrintSystemDesiredAccess

Champs

AdministratePrinter 983052

Droit d'effectuer toutes les tâches d'administration concernant la file d'attente à l'impression, y compris le droit suspendre et de poursuivre un travail d'impression, et droit de supprimer tous les travaux de la file d'attente. Ce niveau d'accès inclut également tous les droits sous UsePrinter.

AdministrateServer 983041

Droit d'effectuer toutes les tâches d'administration concernant le serveur d'impression. Ce niveau d’accès n’inclut pas les droits AdministratePrinter pour les files d’attente à l’impression hébergées par le serveur.

EnumerateServer 131074

Droit de répertorier les files d'attente sur le serveur d'impression.

None 0

Pas d'accès.

UsePrinter 131080

Droit d'ajouter des travaux d'impression à la file d'attente, ainsi que de supprimer et d'énumérer ses propres travaux.

Exemples

L’exemple suivant montre comment utiliser cette énumération pour installer une deuxième imprimante qui diffère par ses propriétés d’une imprimante existante uniquement par l’emplacement, le port et l’état partagé.

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()

Remarques

Les droits d’accès disponibles à chaque niveau d’accès varient en fonction des éléments suivants :

  • Indique si le serveur d’impression est un ordinateur ou une appliance serveur d’impression.

  • Système d’exploitation utilisé.

  • Mises à jour de sécurité installées.

  • Stratégies de sécurité prises en charge.

Pour cette raison, les descriptions des droits d’accès dans la section « Membres » sont typiques des droits qui correspondront à chaque niveau d’accès, mais les niveaux d’accès répertoriés peuvent fournir plus ou moins de droits sur des systèmes particuliers.

Ces valeurs sont principalement utilisées comme paramètres pour PrintServer et PrintQueue constructeurs. Les constructeurs lèveront des exceptions si vous utilisez une valeur qui ne peut s’appliquer qu’à un autre type d’objet. Par exemple, ne passez pas AdministratePrinter à un PrintServer constructeur.

S’applique à