Freigeben über


IPrintCoreUI2::EnumFeatures-Methode (prcomoem.h)

Die IPrintCoreUI2::EnumFeatures -Methode listet die verfügbaren Funktionen eines Druckers auf.

Syntax

HRESULT EnumFeatures(
  [in]  POEMUIOBJ poemuiobj,
  [in]  DWORD     dwFlags,
  [out] PZZSTR    pmszFeatureList,
  [in]  DWORD     cbSize,
  [out] PDWORD    pcbNeeded
);

Parameter

[in] poemuiobj

Zeiger auf den aktuellen Kontext, eine OEMUIOBJ-Struktur .

[in] dwFlags

Ist reserviert und muss auf 0 (null) festgelegt werden.

[out] pmszFeatureList

Zeiger auf einen vom Aufrufer bereitgestellten Puffer, der eine durch NULL getrennte Liste von Featureschlüsselwörtern in MULTI_SZ Format empfängt. Die Liste wird mit zwei NULL-Zeichen beendet.

Legen Sie diesen Parameter auf NULL fest, um einfach die Größe (*pcbNeeded) der Featureliste abzufragen, ohne dass die Liste ausgefüllt wird.

[in] cbSize

Gibt die Größe des Puffers in Bytes an, auf den pmszFeatureList verweist.

[out] pcbNeeded

Zeiger auf einen Speicherort im Arbeitsspeicher, der die tatsächliche Größe der Featureliste in Byte empfängt.

Rückgabewert

Diese Methode muss einen der folgenden Werte zurückgeben.

Rückgabecode BESCHREIBUNG
S_OK
Die Methode wurde erfolgreich ausgeführt.
E_OUTOFMEMORY
Der Wert in cbSize war kleiner als die Anzahl der Bytes, die in den Ausgabepuffer geschrieben werden sollen (der Puffer, auf den von pmszFeatureList verwiesen wird).

Die -Methode wurde aufgerufen, wobei pmszFeatureList auf NULL festgelegt ist.

E_INVALIDARG
Der poemuiobj-Parameter verweist auf ein ungültiges Kontextobjekt.
E_FAIL
Fehler bei der Methode

Hinweise

Diese Methode wird nur für Windows XP Pscript5-Plug-Ins und nicht für Unidrv-Plug-Ins unterstützt.

Drucker-Sticky-Features (siehe Ersetzen Driver-Supplied Eigenschaftenblattseiten), z. B. solche, die den installierbaren Arbeitsspeicher und das Vorhandensein von optionalem Zubehör bestimmen, sind in der Feature-Schlüsselwort (keyword) Liste enthalten, die im Ausgabepuffer angezeigt wird, auf den von pmszFeatureList verwiesen wird, wenn die Methode zurückgibt. Für Pscript5 ist für solche Features das OpenGroupType-Feature-Attribut auf "InstallableOptions" festgelegt.

Um die Notwendigkeit von zwei Aufrufen pro Datenzugriff zu reduzieren, übergeben Sie der Methode einen Ausgabepuffer einer festen Größe (z. B. 1 KB), und überprüfen Sie dann den Funktionsrückgabewert. Wenn die Methode S_OK zurückgibt, enthält der Puffer bereits die relevanten Daten. Wenn die Methode E_OUTOFMEMORY zurückgibt, ist der Wert in *pcbNeeded die Puffergröße, die zum Speichern der relevanten Daten erforderlich ist. Der Aufrufer sollte dann einen Puffer dieser größeren Größe zuordnen und mit einem zweiten Aufruf der -Methode fortfahren.

Weitere Informationen finden Sie unter Verwenden von EnumFeatures.

Anforderungen

Anforderung Wert
Zielplattform Desktop
Kopfzeile prcomoem.h (include Prcomoem.h)

Weitere Informationen

IPrintCoreUI2

IPrintCoreUI2::EnumOptions

OEMUIOBJ