Freigeben über


AddPrintDeviceObject-Funktion (winsplp.h)

Warnung

Ab Windows 10 sind die APIs, die Druckanbieter von Drittanbietern unterstützen, veraltet. Microsoft empfiehlt keine Investition in Druckanbieter von Drittanbietern. Darüber hinaus können Drittanbieter unter Windows 8 und neueren Produkten, bei 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 zu einem geöffneten Drucker. Dies sollte ein HANDLE sein, das vom AddPrinter- oder OpenPrinter- Spoolerfunktionen 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.

Bemerkungen

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

Ein 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, angenommen wird.

Der Druckanbieter sollte diese Funktion für jeden zuvor installierten Drucker aufrufen, der sich im Besitz des Anbieters befindet. Während dieser Zeit muss AddPrintDeviceObject- den Benutzerkontext nicht imitieren, wenn er aufgerufen wird.

Jedes Geräteobjekt, das mit AddPrintDeviceObject hinzugefügt wird, wird beibehalten, bis Sie es mithilfe 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
Header- winsplp.h (include Winspool.h)
Library WinSpool.lib
DLL- WinSpool.drv

Siehe auch

RemovePrintDeviceObject-