Condividi tramite


Metodo IPrintCoreHelper::GetOption (prcomoem.h)

Il metodo IPrintCoreHelper::GetOption ottiene un'opzione specificata per una determinata funzionalità.

Sintassi

HRESULT GetOption(
  [in]  const DEVMODE *pDevmode,
  [in]  DWORD         cbSize,
  [in]  PCSTR         pszFeatureRequested,
  [out] PCSTR         *ppszOption
);

Parametri

[in] pDevmode

Puntatore a una struttura DEVMODEW. Se questo puntatore viene fornito, IPrintCoreHelper::GetOption deve usare la struttura DEVMODEW a cui punta pDevmode anziché la struttura DEVMODEW predefinita o corrente. Se questo metodo viene chiamato dal provider plug-in o da IPrintOemPS::D evMode o IPrintOemUni::D evMode, questo parametro è obbligatorio. Nella maggior parte delle altre situazioni, il parametro deve essere NULL. Quando il driver principale imposta pDevmode su NULL, modifica lo stato interno anziché quello della struttura DEVMODEW passata. Questa operazione è necessaria durante operazioni come la sostituzione completa dell'interfaccia utente, in cui la struttura DEVMODEW restituita da un DDI, ad esempio DrvDocumentPropertySheets, viene eseguita dal modulo dell'interfaccia utente del driver principale.

[in] cbSize

Dimensioni, in byte, della struttura DEVMODEW a cui punta il parametro pDevmode.

[in] pszFeatureRequested

Puntatore alla stringa ANSI che contiene il nome della funzionalità visualizzata nel file GPD.

[out] ppszOption

Puntatore a una variabile che contiene l'indirizzo di una stringa ANSI. Quando IPrintCoreHelper::GetOption restituisce, la stringa deve contenere la parola chiave per l'opzione attualmente selezionata come appare nel file di configurazione. Il chiamante non deve modificare questa stringa e non deve liberare la memoria associata a questa stringa.

Valore restituito

IPrintCoreHelper::GetOption deve restituire uno dei valori seguenti.

Codice restituito Descrizione
S_OK
Il metodo legge l'opzione per la funzionalità specificata.
E_FAIL
Il chiamante ha fornito informazioni che hanno generato una richiesta non valida. Ad esempio, la funzionalità richiesta non esiste.
E_INVALIDARG
Gli argomenti non sono validi. Questo valore potrebbe significare che la funzionalità non è supportata o che sono state richieste troppe opzioni per la funzionalità.
E_OUTOFMEMORY
Il driver principale non è riuscito a gestire la richiesta perché la memoria non è sufficiente.
E_UNEXPECTED o altri codici restituiti non elencati qui
Il driver principale sembra essere in uno stato non valido. Il chiamante deve restituire un codice di errore.

Osservazioni

IPrintCoreHelper::GetOption non può essere usato per le funzionalità che consentono l'impostazione simultanea di più opzioni.

Le parole chiave delle funzionalità sono definite nei file GPD e PPD. Inoltre, i driver Unidrv e Pscript5 supportano diverse parole chiave riservate per le opzioni archiviate nelle strutture di DEVMODEW private.

Il chiamante non deve liberare la stringa a cui punta ppszOption e non deve modificare la stringa in alcun modo.

Fabbisogno

Requisito Valore
piattaforma di destinazione Desktop
intestazione prcomoem.h (include Prcomoem.h)

Vedere anche

IPrintCoreHelper

IPrintCoreHelper::EnumOptions

IPrintCoreHelper::SetOptions