Metodo IPrintCorePS2::EnumFeatures (prcomoem.h)
Il IPrintCorePS2::EnumFeatures
metodo enumera le funzionalità disponibili di una stampante.
Sintassi
HRESULT EnumFeatures(
[in] PDEVOBJ pdevobj,
[in] DWORD dwFlags,
[out] PZZSTR pmszFeatureList,
[in] DWORD cbSize,
[out] PDWORD pcbNeeded
);
Parametri
[in] pdevobj
Puntatore a una struttura DEVOBJ .
[in] dwFlags
È riservato e deve essere impostato su zero.
[out] pmszFeatureList
Puntatore a un buffer fornito dal chiamante che riceve un elenco di parole chiave delimitate da null in MULTI_SZ formato. L'elenco viene terminato con due caratteri Null.
Impostare questo parametro su NULL per eseguire semplicemente una query sulle dimensioni (*pcbNeeded) dell'elenco di funzionalità senza aver compilato l'elenco.
[in] cbSize
Specifica le dimensioni, in byte, del buffer a cui punta pmszFeatureList.
[out] pcbNeeded
Puntatore a una posizione di memoria che riceve le dimensioni effettive, in byte, dei dati richiesti.
Valore restituito
Questo metodo deve restituire uno dei valori seguenti.
Codice restituito | Descrizione |
---|---|
|
Il metodo è riuscito. |
|
Il valore in cbSize è minore del numero di byte da scrivere nel buffer di output (il buffer a cui punta pmszFeatureList).
Il metodo è stato chiamato con pmszFeatureList impostato su NULL. |
|
Il parametro pdevobj punta a un oggetto contesto driver non valido. |
|
Il metodo non è riuscito. |
Commenti
Funzionalità stampanti-sticky (vedere Sostituzione di pagine foglio proprietà Driver-Supplied), ad esempio quelle che determinano la memoria installabile e la presenza di accessori facoltativi, sono incluse nell'elenco delle parole chiave della funzionalità, che viene visualizzato nel buffer di output a cui punta da pmszFeatureList. Per Pscript5, queste funzionalità hanno l'attributo di funzionalità OpenGroupType impostato su "InstallableOptions".
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.
Questo metodo è supportato per qualsiasi plug-in di rendering Pscript5.
Per altre informazioni, vedere Uso di EnumFeatures.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Desktop |
Intestazione | prcomoem.h (include Prcomoem.h) |