Freigeben über


IPrintCoreUI2::SetOptions-Methode (prcomoem.h)

Die IPrintCoreUI2::SetOptions -Methode legt die Featureeinstellungen des Treibers fest.

Syntax

HRESULT SetOptions(
  [in]  POEMUIOBJ poemuiobj,
  [in]  DWORD     dwFlags,
  [in]  PCZZSTR   pmszFeatureOptionBuf,
  [in]  DWORD     cbIn,
  [out] PDWORD    pdwResult
);

Parameter

[in] poemuiobj

Zeiger auf den aktuellen Kontext, eine OEMUIOBJ-Struktur .

[in] dwFlags

Gibt an, ob der Kerntreiber Konflikte lösen soll. Dieser Parameter muss auf einen der folgenden Werte festgelegt werden:

Wert Bedeutung
SETOPTIONS_FLAG_KEEP_CONFLICT Bitten Sie den Kerntreiber, keinen auftretenden Konflikt zu beheben.
SETOPTIONS_FLAG_RESOLVE_CONFLICT Bitten Sie den Kerntreiber, alle auftretenden Konflikte zu beheben.

[in] pmszFeatureOptionBuf

Zeiger auf einen vom Aufrufer bereitgestellten Puffer, der eine Liste von Feature/Option-Schlüsselwort (keyword) Paaren in MULTI_SZ Format enthält. Jedes Element in dieser Liste wird durch ein NULL-Zeichen vom nächsten getrennt, und die Liste wird mit zwei NULL-Zeichen beendet.

[in] cbIn

Gibt die Größe des Puffers in Bytes an, auf den von pmszFeatureOptionBuf verwiesen wird. Diese Größe enthält das letzte MULTI_SZ NULL-Zeichen.

[out] pdwResult

Zeiger auf einen Speicherspeicherort, der einen der folgenden Werte empfängt. Diese Konstanten werden in printoem.h definiert.

Wert Bedeutung
SETOPTIONS_RESULT_CONFLICT_REMAINED Der Kerntreiber hat Konflikte gefunden, diese aber nicht gelöst.
SETOPTIONS_RESULT_CONFLICT_RESOLVED Der Kerntreiber hat alle Konflikte gefunden und behoben.
SETOPTIONS_RESULT_NO_CONFLICT Der Kerntreiber hat keinen Konflikt gefunden.

Rückgabewert

Die -Methode muss einen der folgenden Werte zurückgeben.

Rückgabecode BESCHREIBUNG
S_OK
Die Methode wurde erfolgreich ausgeführt.
E_NOTIMPL
Die Methode wird nicht unterstützt.

Eine Struktur des von dwLevel angegebenen Typs wird nicht unterstützt.

E_INVALIDARG
Der Wert in dwFlags war falsch.

Der Eingabepuffer (auf den von pmszFeatureOptionBuf verwiesen wird) hatte kein MULTI_SZ Format.

Der parameter poemuiobj 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.

Diese Methode wird aufgerufen, um die Featureeinstellungen des Treibers mithilfe einer Liste von Feature/Option-Schlüsselwort (keyword)-Paaren festzulegen. Der Aufrufer kann mithilfe der IPrintCoreUI2::GetOptions-Methode auf die resultierenden Featureeinstellungen zugreifen.

Wenn diese Methode einen anderen Wert als S_OK zurückgibt, hat sie keine Änderungen an den Featureeinstellungen des Treibers vorgenommen.

Der pmszFeatureOptionBuf-Eingabepuffer muss auf die gleiche Weise wie der Ausgabepuffer der IPrintCoreUI2::GetOptions-Methode erstellt werden. Das heißt, die Feature/Option Schlüsselwort (keyword) Paare müssen in MULTI_SZ Format vorliegen, und jedes Element in der Liste ist vom nächsten durch ein NULL-Zeichen getrennt. Ein Nullzeichenpaar beendet die Liste.

Wenn der Eingabepuffer ein Feature Schlüsselwort (keyword) oder dessen Option Schlüsselwort (keyword) enthält, das nicht erkannt wird, oder wenn das Feature im aktuellen Haftmodus erkannt, aber nicht unterstützt wird (siehe Ersetzen Driver-Supplied Eigenschaftenblattseiten), wird das Feature/Optionspaar ignoriert, und die aktuelle Option für dieses Feature bleibt weiterhin in Kraft.

Diese Methode wird nur für Benutzeroberflächen-Plug-Ins unterstützt, die die Standard-UI-Seiten des Kerntreibers vollständig ersetzen, und wird nur während der Funktionen IPrintOemUI::D ocumentPropertySheets und IPrintOemUI::D evicePropertySheets und deren Rückrufroutinen des Eigenschaftenblatts unterstützt.

Weitere Informationen finden Sie unter Verwenden von GetOptions und SetOptions.

Anforderungen

Anforderung Wert
Zielplattform Desktop
Kopfzeile prcomoem.h (einschließlich Prcomoem.h)

Weitere Informationen

IPrintCoreUI2

IPrintCoreUI2::GetOptions

IPrintOemUI::D evicePropertySheets

IPrintOemUI::D ocumentPropertySheets

OEMUIOBJ