AddPrintDeviceObject-Funktion (winsplp.h)

Warnung

Ab Windows 10 sind die APIs, die Druckanbieter von Drittanbietern unterstützen, veraltet. Microsoft empfiehlt keine Investitionen in Druckanbieter von Drittanbietern. Darüber hinaus können Druckanbieter von Drittanbietern in Windows 8 und neueren Produkten, in denen das v4-Drucktreibermodell verfügbar ist, keine Warteschlangen erstellen oder verwalten, die v4-Drucktreiber verwenden.

Die AddPrintDeviceObject-Druckanbieterfunktion erstellt ein Geräteobjekt für eine Druckanbieterwarteschlange.

Syntax

HRESULT AddPrintDeviceObject(
  [in]  HANDLE hPrinter,
  [out] HANDLE *phDeviceObject
);

Parameter

[in] hPrinter

Ein HANDLE für einen geöffneten Drucker. Hierbei sollte es sich um einen HANDLE handeln, der von der AddPrinter- oder OpenPrinter-Spooler-Funktion zurückgegeben wird.

[out] phDeviceObject

Ein HANDLE für das Geräteobjekt, wenn es erfolgreich erstellt wurde.

Rückgabewert

Die AddPrintDeviceObject-Funktion gibt S_OK zurück, wenn das Geräteobjekt erfolgreich erstellt wurde. Andernfalls wird ein Fehler zurückgegeben.

Hinweise

Die AddPrintDeviceObject-Funktion sollte in den folgenden Situationen aufgerufen werden:

Benutzer installiert einen Drucker

  • Der Druckanbieter sollte diese Funktion nach der Installation des Druckers aufrufen.

  • Die Funktion muss aufgerufen werden, indem der Benutzer, der den Drucker installiert, die Identität annehmen.

Der Druckanbieter sollte diese Funktion für jeden zuvor installierten Drucker aufrufen, der dem Anbieter gehört. Während dieser Zeit muss AddPrintDeviceObject beim Aufruf nicht die Identität des Benutzerkontexts annehmen.

Jedes Geräteobjekt, das mithilfe von AddPrintDeviceObject hinzugefügt wird, wird beibehalten, bis Sie es mithilfe von RemovePrintDeviceObject entfernen oder bis der Spoolerdienst neu gestartet wird. Und wenn die Spoolerdienste beendet werden, werden alle Geräteobjekte automatisch gelöscht.

Anforderungen

Anforderung Wert
Zielplattform Desktop
Kopfzeile winsplp.h (einschließlich Winspool.h)
Bibliothek WinSpool.lib
DLL WinSpool.drv

Weitere Informationen

RemovePrintDeviceObject