Metodo IPrintCoreUI2::EnumConstrainedOptions (prcomoem.h)
Il metodo IPrintCoreUI2::EnumConstrainedOptions
determina le opzioni di una funzionalità vincolate.
Sintassi
HRESULT EnumConstrainedOptions(
[in] POEMUIOBJ poemuiobj,
[in] DWORD dwFlags,
[in] PCSTR pszFeatureKeyword,
[out] PZZSTR pmszConstrainedOptionList,
[in] DWORD cbSize,
[out] PDWORD pcbNeeded
);
Parametri
[in] poemuiobj
Puntatore al contesto corrente, una struttura OEMUIOBJ.
[in] dwFlags
È riservato e deve essere impostato su zero.
[in] pszFeatureKeyword
Puntatore a un buffer fornito dal chiamante contenente la singola parola chiave della funzionalità di interesse per il chiamante.
[out] pmszConstrainedOptionList
Puntatore a un buffer fornito dal chiamante che riceve l'elenco di parole chiave di opzione, in formato MULTI_SZ, per questa funzionalità. Ogni parola chiave rappresenta un'opzione vincolata nella configurazione corrente.
Impostare questo parametro su NULL per eseguire semplicemente una query per le dimensioni (*pcbNeeded) dell'elenco di opzioni vincolate senza che l'elenco sia compilato.
[in] cbSize
Specifica le dimensioni, in byte, del buffer a cui punta pmszConstrainedOptionList.
[out] pcbNeeded
Puntatore a una posizione di memoria che riceve le dimensioni effettive, in byte, dell'elenco di opzioni vincolate.
Valore restituito
Questo metodo deve restituire uno dei valori seguenti.
Codice restituito | Descrizione |
---|---|
|
Il metodo è riuscito. Il metodo deve restituire anche questo valore se nessuna delle opzioni della funzionalità è vincolata. In questo caso, il metodo deve inserire un carattere Null nel buffer a cui punta pmszConstrainedOptionListe deve impostare **pcbNeeded* su 1. |
|
Il valore in cbSize è minore del numero di byte da scrivere nel buffer di output (il buffer a cui punta pmszConstrainedOptionList).
Il metodo è stato chiamato con pmszConstrainedOptionList impostato su NULL. |
|
La stringa a cui punta pszFeatureKeyword non è stata riconosciuta.
Il parametro poemuiobj punta a un oggetto contesto non valido. La persistenza della funzionalità non corrisponde a quella dell'oggetto contesto a cui punta peomuiobj. Vedere sostituzione Driver-Supplied pagine della finestra delle proprietà. |
|
Il metodo non è riuscito. |
|
Il metodo non è supportato. |
Osservazioni
Questo metodo è supportato solo per i plug-in dell'interfaccia utente di Windows XP Pscript5 che sostituiscono completamente le pagine dell'interfaccia utente standard del driver principale ed è supportato solo durante il plug-in dell'interfaccia utente IPrintOemUI::D ocumentPropertySheets e IPrintOemUI::D evicevicePropertySheets funzioni e le relative routine di callback del foglio delle proprietà. Per altre informazioni, vedere Sostituzione delle pagine della finestra delle proprietà Driver-Supplied.
Per ridurre la necessità di effettuare due chiamate per accesso ai dati, passare il metodo un buffer di output di una dimensione fissa (ad esempio 1 KB) e quindi controllare il valore restituito dalla funzione. Se il metodo restituisce S_OK, il buffer contiene già i dati di interesse. Se il metodo restituisce E_OUTOFMEMORY, il valore in * pcbNeeded è la dimensione del buffer necessaria per contenere i dati di interesse. Il chiamante deve quindi allocare un buffer di dimensioni maggiori e procedere con una seconda chiamata al metodo .
Fabbisogno
Requisito | Valore |
---|---|
piattaforma di destinazione | Desktop |
intestazione | prcomoem.h (include Prcomoem.h) |
Vedere anche
IPrintOemUI::D evicePropertySheets