IPrintCoreUI2::EnumConstrainedOptions-Methode (prcomoem.h)
Die IPrintCoreUI2::EnumConstrainedOptions
-Methode bestimmt, welche Optionen eines Features eingeschränkt sind.
Syntax
HRESULT EnumConstrainedOptions(
[in] POEMUIOBJ poemuiobj,
[in] DWORD dwFlags,
[in] PCSTR pszFeatureKeyword,
[out] PZZSTR pmszConstrainedOptionList,
[in] DWORD cbSize,
[out] PDWORD pcbNeeded
);
Parameter
[in] poemuiobj
Zeiger auf den aktuellen Kontext, eine OEMUIOBJ-Struktur .
[in] dwFlags
Ist reserviert und muss auf null festgelegt werden.
[in] pszFeatureKeyword
Zeiger auf einen vom Aufrufer bereitgestellten Puffer mit dem einzelnen Feature Schlüsselwort (keyword) für den Aufrufer von Interesse.
[out] pmszConstrainedOptionList
Zeiger auf einen vom Aufrufer bereitgestellten Puffer, der die Liste der Optionsschlüsselwörter in MULTI_SZ Format für dieses Feature empfängt. Jede Schlüsselwort (keyword) stellt eine Option dar, die in der aktuellen Konfiguration eingeschränkt ist.
Legen Sie diesen Parameter auf NULL fest, um einfach die Größe (*pcbNeeded) der eingeschränkten Optionsliste abzufragen, ohne dass die Liste ausgefüllt wird.
[in] cbSize
Gibt die Größe des Puffers in Bytes an, auf den von pmszConstrainedOptionList verwiesen wird.
[out] pcbNeeded
Zeiger auf einen Speicherspeicherort, der die tatsächliche Größe der eingeschränkten Optionsliste in Bytes empfängt.
Rückgabewert
Diese Methode muss einen der folgenden Werte zurückgeben.
Rückgabecode | BESCHREIBUNG |
---|---|
|
Die Methode wurde erfolgreich ausgeführt. Die -Methode sollte diesen Wert auch zurückgeben, wenn keine der Optionen des Features eingeschränkt ist. In diesem Fall sollte die Methode ein NULL-Zeichen in den Puffer platzieren, auf den von pmszConstrainedOptionList verwiesen wird, und **pcbNeeded* auf 1 festlegen. |
|
Der Wert in cbSize war kleiner als die Anzahl der Bytes, die in den Ausgabepuffer geschrieben werden sollen (der Puffer, auf den von pmszConstrainedOptionList verwiesen wird).
Die Methode wurde aufgerufen, wobei pmszConstrainedOptionList auf NULL festgelegt ist. |
|
Die Zeichenfolge, auf die von pszFeatureKeyword verwiesen wird, war kein erkanntes Feature.
Der parameter poemuiobj verweist auf ein ungültiges Kontextobjekt. Die Klebigkeit des Features entsprach nicht der des Kontextobjekts, auf das peomuiobj verweist. (Siehe Ersetzen Driver-Supplied Eigenschaftenblattseiten.) |
|
Fehler bei der Methode. |
|
Die Methode wird nicht unterstützt. |
Hinweise
Diese Methode wird nur für Windows XP Pscript5-Benutzeroberflächen-Plug-Ins unterstützt, die die Standardbenutzeroberflächenseiten des Kerntreibers vollständig ersetzen, und wird nur während der Funktionen IPrintOemUI::D ocumentPropertySheets und IPrintOemUI::D evicePropertySheets und deren Eigenschaftenblatt-Rückrufroutinen unterstützt. Weitere Informationen finden Sie unter Ersetzen Driver-Supplied Eigenschaftenblattseiten .
Um die Notwendigkeit von zwei Aufrufen pro Datenzugriff zu verringern, ü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.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Desktop |
Kopfzeile | prcomoem.h (einschließlich Prcomoem.h) |
Weitere Informationen
IPrintOemUI::D evicePropertySheets