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 |
---|---|
|
Die Methode wurde erfolgreich ausgeführt. |
|
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. |
|
Der poemuiobj-Parameter verweist auf ein ungültiges Kontextobjekt. |
|
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) |