Condividi tramite


Metodo IPrintCoreUI2::EnumOptions (prcomoem.h)

Il IPrintCoreUI2::EnumOptions metodo enumera le opzioni disponibili di una funzionalità specifica.

Sintassi

HRESULT EnumOptions(
  [in]  POEMUIOBJ poemuiobj,
  [in]  DWORD     dwFlags,
  [in]  PCSTR     pszFeatureKeyword,
  [out] PZZSTR    pmszOptionList,
  [in]  DWORD     cbSize,
  [out] PDWORD    pcbNeeded
);

Parametri

[in] poemuiobj

Puntatore al contesto corrente, struttura OEMUIOBJ .

[in] dwFlags

È riservato e deve essere impostato su zero.

[in] pszFeatureKeyword

Puntatore a un buffer fornito dal chiamante contenente una stringa ASCII che specifica una parola chiave di funzionalità le cui opzioni sono richieste.

[out] pmszOptionList

Puntatore a un buffer fornito dal chiamante che riceve un elenco delimitato da NULL, in MULTI_SZ formato, contenente le parole chiave di opzione per la parola chiave della funzionalità a cui punta pszFeatureKeyword. Questo elenco viene terminato con due caratteri Null.

Impostare questo parametro su NULL per eseguire semplicemente una query sulle dimensioni (*pcbNeeded) dell'elenco di opzioni senza aver compilato l'elenco.

[in] cbSize

Specifica le dimensioni, in byte, del buffer a cui punta pmszOptionList.

[out] pcbNeeded

Puntatore a una posizione di memoria che riceve le dimensioni effettive, in byte, dell'elenco di opzioni.

Valore restituito

Questo metodo deve restituire uno dei valori seguenti.

Codice restituito Descrizione
S_OK
Il metodo è riuscito.
E_OUTOFMEMORY
Il valore in cbSize è minore del numero di byte da scrivere nel buffer di output (il buffer a cui punta pmszOptionList).

Il metodo è stato chiamato con pmszOptionList impostato su NULL.

E_INVALIDARG
La stringa puntata da pszFeatureKeyword non è una funzionalità riconosciuta.

Il parametro poemuiobj punta a un oggetto contesto non valido.

E_NOTIMPL
(solo Pscript)

La funzionalità driver Pscript5 non è supportata nella configurazione corrente.

La funzionalità driver Pscript5 è supportata nella configurazione corrente, ma le opzioni del driver Pscript5 non sono enumerabili.

E_FAIL
Il metodo non è riuscito

Commenti

Questo metodo è supportato solo per i plug-in Pscript5 di Windows XP, non per i plug-in Unidrv.

Per ridurre la necessità di effettuare due chiamate per accesso ai dati, passare il metodo un buffer di output di dimensioni fisse (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.

Per altre informazioni, vedere Uso di EnumOptions.

Requisiti

Requisito Valore
Piattaforma di destinazione Desktop
Intestazione prcomoem.h (include Prcomoem.h)

Vedi anche

IPrintCoreUI2

IPrintCoreUI2::EnumFeatures

OEMUIOBJ