IPrintTicketProvider::GetSupportedVersions-Methode (prdrvcom.h)

Die IPrintTicketProvider::GetSupportedVersions-Methode ruft Hauptversionsnummern der Druckschemas ab, die vom Plug-In-Anbieter unterstützt werden.

Syntax

HRESULT GetSupportedVersions(
  [in]  IN HANDLE    hPrinter,
  [out] OUT INT * [] ppVersions,
  [out] OUT INT      *cVersions
);

Parameter

[in] hPrinter

Ein Handle für das Druckgerät.

[out] ppVersions

Ein Zeiger auf eine Variable, die die Adresse des ersten Elements eines Arrays von Versionsnummern empfängt. Versionsnummern im Array können in beliebiger Reihenfolge angezeigt werden. Weitere Informationen zu diesem Parameter finden Sie im abschnitt Hinweise.

[out] cVersions

Ein Zeiger auf eine Variable, die die Anzahl von Elementen im Array empfängt, auf die von ppVersions verwiesen wird.

Rückgabewert

IPrintTicketProvider::GetSupportedVersions sollte S_OK zurückgeben, wenn der Vorgang erfolgreich ist. Wenn diese Methode aufgrund fehlenden Arbeitsspeichers oder anderer Ressourcen fehlschlägt, sollte sie einen standardmäßigen COM-Fehlercode zurückgeben.

Hinweise

IPrintTicketProvider::GetSupportedVersions gibt die Hauptversionsnummern der Druckschemas zurück, die von der Anbieterschnittstelle unterstützt werden. Die einzige aktuell definierte Versionsnummer ist 1. Anbieter können Zwischenversionen weglassen.

Das Plug-In ist für die Zuordnung des Arrayspeichers verantwortlich, auf den der ppVersions-Parameter verweist. Das Plug-In sollte diesen Arbeitsspeicher mithilfe der CoTaskMemAlloc-Funktion zuordnen, die in der Microsoft Windows SDK-Dokumentation beschrieben ist, aber das Plug-In ist nicht für die Freigabe dieses Arbeitsspeichers verantwortlich.

Da IPrintTicketProvider::GetSupportedVersions aufgerufen werden kann, bevor die IPrintTicketProvider::BindPrinter-Methode aufgerufen wird, muss der OEM-Plug-In-Anbieter die Versionsunterstützung basierend auf dem Handle überprüfen, das im hPrinter-Parameter übergeben wird. Daher sollte der OEM-Plug-In-Anbieter den Druckerhandle, der hPrinter zugeordnet ist, nicht schließen.

Anforderungen

Anforderung Wert
Header prdrvcom.h (einschließlich Prdrvcom.h)

Weitere Informationen

IPrintTicketProvider

IPrintTicketProvider::BindPrinter