Freigeben über


IPrintCoreUI2::GetOptions-Methode (prcomoem.h)

Die IPrintCoreUI2::GetOptions Methode ruft die aktuellen Featureeinstellungen des Treibers im Format einer Liste von Feature-/Options-Schlüsselwortpaaren ab.

Syntax

HRESULT GetOptions(
  [in]  POEMUIOBJ poemuiobj,
  [in]  DWORD     dwFlags,
  [in]  PCZZSTR   pmszFeaturesRequested,
  [in]  DWORD     cbIn,
  [out] PZZSTR    pmszFeatureOptionBuf,
  [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] pmszFeaturesRequested

Zeiger auf vom Aufrufer bereitgestellten Puffer mit einer Liste von Featurestichwörtern (im MULTI_SZ Format), deren Einstellungen angefordert werden. Legen Sie diesen Parameter auf NULL- fest, um Einstellungen für alle Features abzurufen.

[in] cbIn

Gibt die Größe des Puffers in Byte an, auf den pmszFeaturesRequestedverweist. Die Größe enthält das letzte MULTI_SZ NULL-Zeichen.

[out] pmszFeatureOptionBuf

Zeigen Sie auf einen vom Aufrufer bereitgestellten Puffer, der eine Liste von Feature-/Options-Schlüsselwortpaaren (im MULTI_SZ Format) empfängt, die aus den Treibereinstellungen abgerufen werden. Jedes Feature-/Options-Schlüsselwortpaar enthält den Schlüsselwortnamen des Features, ein NULL-Zeichen, den Schlüsselwortnamen der Option und ein weiteres Nullzeichen. Die Liste wird mit zwei Nullzeichen beendet.

[in] cbSize

Gibt die Größe des Puffers in Byte an, auf den pmszFeatureOptionBufverweist.

[out] pcbNeeded

Zeigen Sie auf einen Speicherspeicherort, der die tatsächliche Größe der Schlüsselwortpaare "Feature/Option" in Byte empfängt.

Rückgabewert

Die Methode muss einen der folgenden Werte zurückgeben.

Rückgabecode Beschreibung
S_OK
Die Methode war erfolgreich.
E_OUTOFMEMORY
Der Wert in cbSize war kleiner als die Anzahl der Bytes, die in den Ausgabepuffer geschrieben werden sollen (der Puffer, auf den pmszFeatureOptionBufverweist).

Die Methode wurde mit pmszFeatureOptionBuf aufgerufen, auf NULL-festgelegt wurde.

E_INVALIDARG
Der Eingabepuffer (der Puffer, auf den pmszFeaturesRequestedverweist) wurde bereitgestellt, der Inhalt war jedoch nicht im MULTI_SZ Format.

Der poemuiobj Parameter, der auf ein ungültiges Kontextobjekt verweist.

E_NOTIMPL
Die Methode wird nicht unterstützt.
E_FAIL
Fehler bei der Methode.

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.

Wenn ein angefordertes Feature-Schlüsselwort nicht erkannt oder im aktuellen Haftmodus nicht unterstützt wird (Dokument-Sticky- oder Druckersticky- - siehe Ersetzen von Driver-Supplied Eigenschaftenblattseiten), oder das Featureschlüsselwort wird erkannt, aber es gibt derzeit keine Optionsauswahl dafür, das Feature wird einfach ignoriert, und das Feature-/Options-Schlüsselwortpaar wird nicht im Ausgabepuffer platziert.

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.

Weitere Informationen finden Sie unter Using GetOptions and SetOptions.

Anforderungen

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

Siehe auch

IPrintCoreUI2-

IPrintCoreUI2::SetOptions

IPrintOemUI::D evicePropertySheets

IPrintOemUI::D ocumentPropertySheets

OEMUIOBJ-