IPrintCoreUI2::GetOptions-Methode (prcomoem.h)

Die IPrintCoreUI2::GetOptions -Methode ruft die aktuellen Featureeinstellungen des Treibers im Format einer Liste von Feature-/Optionspaaren Schlüsselwort (keyword) 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

Zeiger auf den aktuellen Kontext, eine OEMUIOBJ-Struktur .

[in] dwFlags

Ist reserviert und muss auf 0 (null) festgelegt werden.

[in] pmszFeaturesRequested

Zeiger auf den vom Aufrufer bereitgestellten Puffer, der eine Liste von Featureschlüsselwörtern (im MULTI_SZ Format) enthält, 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 Bytes an, auf den pmszFeaturesRequested verweist. Die Größe enthält das letzte MULTI_SZ NULL-Zeichen.

[out] pmszFeatureOptionBuf

Zeiger auf einen vom Aufrufer bereitgestellten Puffer, der eine Liste von Feature-/Optionspaaren Schlüsselwort (keyword) (im MULTI_SZ Format) empfängt, die aus den Treibereinstellungen abgerufen wurden. Jedes Feature-/Optionspaar Schlüsselwort (keyword) enthält das Feature Schlüsselwort (keyword) Namen, ein NULL-Zeichen, die Option Schlüsselwort (keyword) Namen und ein weiteres NULL-Zeichen. Die Liste wird durch zwei NULL-Zeichen beendet.

[in] cbSize

Gibt die Größe des Puffers in Bytes an, auf den pmszFeatureOptionBuf verweist.

[out] pcbNeeded

Zeiger auf einen Speicherort im Arbeitsspeicher, der die tatsächliche Größe der Feature-/Option-Schlüsselwort (keyword) Paaren in Byte empfängt.

Rückgabewert

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

Rückgabecode BESCHREIBUNG
S_OK
Die Methode wurde erfolgreich ausgeführt.
E_OUTOFMEMORY
Der Wert in cbSize war kleiner als die Anzahl der Bytes, die in den Ausgabepuffer geschrieben werden sollen (der Puffer, auf den pmszFeatureOptionBuf verweist).

Die -Methode wurde aufgerufen, wobei pmszFeatureOptionBuf auf NULL festgelegt ist.

E_INVALIDARG
Der Eingabepuffer (der Puffer, auf den von pmszFeaturesRequested verwiesen wird) wurde bereitgestellt, der Inhalt hatte jedoch nicht MULTI_SZ Format.

Der poemuiobj-Parameter verweist auf ein ungültiges Kontextobjekt.

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

Hinweise

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 wird nur während der Funktionen IPrintOemUI::D ocumentPropertySheets und IPrintOemUI::D evicePropertySheets des UI-Plug-Ins und deren Eigenschaftenblatt-Rückrufroutinen unterstützt. Weitere Informationen finden Sie unter Ersetzen Driver-Supplied Eigenschaftenblattseiten .

Wenn ein angefordertes Feature Schlüsselwort (keyword) im aktuellen Haftmodus nicht erkannt oder erkannt, aber nicht unterstützt wird (Dokument-Sticky oder Drucker-Sticky -- siehe Ersetzen Driver-Supplied Eigenschaftenblattseiten), oder das Feature Schlüsselwort (keyword) erkannt wird, aber derzeit keine Optionsauswahl dafür vorhanden ist, wird das Feature einfach ignoriert, und das Feature/die Option wird ignoriert. Schlüsselwort (keyword) Paar wird nicht im Ausgabepuffer platziert.

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 GetOptions und SetOptions.

Anforderungen

Anforderung Wert
Zielplattform Desktop
Kopfzeile prcomoem.h (include Prcomoem.h)

Weitere Informationen

IPrintCoreUI2

IPrintCoreUI2::SetOptions

IPrintOemUI::D evicePropertySheets

IPrintOemUI::D ocumentPropertySheets

OEMUIOBJ