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
Zeigen Sie auf den aktuellen Kontext, eine OEMUIOBJ--Struktur.
[in] dwFlags
Ist reserviert und muss auf Null festgelegt werden.
[in] pszFeatureKeyword
Zeigen Sie auf einen vom Aufrufer bereitgestellten Puffer, der das schlüsselwort des einzelnen Features enthält, das für den Aufrufer von Interesse ist.
[out] pmszConstrainedOptionList
Zeigen Sie auf einen vom Aufrufer bereitgestellten Puffer, der die Liste der Optionsstichwörter im MULTI_SZ Format für dieses Feature empfängt. Jedes Schlüsselwort stellt eine Option dar, die in der aktuellen Konfiguration eingeschränkt ist.
Legen Sie diesen Parameter auf NULL- fest, um einfach die Größe (*pcbNeed) der eingeschränkten Optionsliste abzufragen, ohne die Liste ausgefüllt zu haben.
[in] cbSize
Gibt die Größe des Puffers in Bytes an, auf den pmszConstrainedOptionListverweist.
[out] pcbNeeded
Zeigen Sie auf einen Speicherspeicherort, der die tatsächliche Größe in Byte der eingeschränkten Optionsliste empfängt.
Rückgabewert
Diese Methode muss einen der folgenden Werte zurückgeben.
Rückgabecode | Beschreibung |
---|---|
|
Die Methode war erfolgreich. 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 setzen, auf den pmszConstrainedOptionListverweist, 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 pmszConstrainedOptionListverweist).
Die Methode wurde mit pmszConstrainedOptionList aufgerufen, auf NULL-festgelegt wurde. |
|
Die Zeichenfolge, auf die pszFeatureKeyword verweist, war kein erkanntes Feature.
Der poemuiobj Parameter, der auf ein ungültiges Kontextobjekt verweist. Die Klebigkeit des Features stimmte nicht mit der des Kontextobjekts überein, auf das von peomuiobjverwiesen wurde. (Siehe Ersetzen Driver-Supplied Eigenschaftenblattseiten.) |
|
Fehler bei der Methode. |
|
Die Methode wird nicht unterstützt. |
Bemerkungen
Diese Methode wird nur für Windows XP Pscript5 UI-Plug-Ins unterstützt, die die Standard-UI-Seiten des Haupttreibers vollständig ersetzen und nur während der IPrintOemUI::D ocumentPropertySheets und IPrintOemUI::D evicePropertySheets Funktionen und deren Eigenschaftenblattrückrufroutinen unterstützt. Weitere Informationen finden Sie unter Ersetzen Driver-Supplied Eigenschaftenblattseiten.
Um die Notwendigkeit zu verringern, zwei Aufrufe pro Datenzugriff vorzunehmen, übergeben Sie die Methode an einen Ausgabepuffer mit fester Größe (z. B. 1 KB), und überprüfen Sie dann den Funktionsrücklaufwert. Wenn die Methode S_OK zurückgibt, enthält der Puffer bereits die daten von Interesse. Wenn die Methode E_OUTOFMEMORY zurückgibt, ist der Wert in *pcbNeededed die Puffergröße, die für die Daten von Interesse erforderlich ist. Der Aufrufer sollte dann einen Puffer dieser größeren Größe zuweisen und mit einem zweiten Aufruf der Methode fortfahren.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform- | Desktop |
Header- | prcomoem.h (einschließlich Prcomoem.h) |
Siehe auch
IPrintOemUI::D evicePropertySheets