Condividi tramite


Metodo IWiaMiniDrv::d rvInitializeWia (wiamindr_lh.h)

Il metodo IWiaMiniDrv::d rvInitializeWia inizializza il minidriver e compila l'albero degli elementi del driver che rappresenta il dispositivo.

Sintassi

HRESULT drvInitializeWia(
  BYTE        *__MIDL__IWiaMiniDrv0000,
  LONG        __MIDL__IWiaMiniDrv0001,
  BSTR        __MIDL__IWiaMiniDrv0002,
  BSTR        __MIDL__IWiaMiniDrv0003,
  IUnknown    *__MIDL__IWiaMiniDrv0004,
  IUnknown    *__MIDL__IWiaMiniDrv0005,
  IWiaDrvItem **__MIDL__IWiaMiniDrv0006,
  IUnknown    **__MIDL__IWiaMiniDrv0007,
  LONG        *__MIDL__IWiaMiniDrv0008
);

Parametri

__MIDL__IWiaMiniDrv0000

bstrDeviceID [in]

Specifica una stringa contenente l'identificatore univoco del dispositivo.

__MIDL__IWiaMiniDrv0001

bstrRootFullItemName [in]

Specifica una stringa contenente il nome completo dell'elemento radice.

__MIDL__IWiaMiniDrv0002

lFlags [in]

Riservato. Imposta su zero.

__MIDL__IWiaMiniDrv0003

pIUnknownOuter [in, facoltativo]

(Facoltativo) Punta a una posizione di memoria che può ricevere l'indirizzo di un'interfaccia IUnknown .

__MIDL__IWiaMiniDrv0004

pStiDevice [in, facoltativo]

Punta a un'interfaccia COM IStiDevice.

__MIDL__IWiaMiniDrv0005

pWiasContext [in]

Puntatore a un contesto di elemento WIA.

__MIDL__IWiaMiniDrv0006

plDevErrVal [out]

Punta a una posizione di memoria che riceverà un codice di stato per questo metodo. Se questo metodo restituisce S_OK, il valore archiviato sarà zero. In caso contrario, un codice di errore specifico del minidriver verrà archiviato nella posizione a cui punta questo parametro.

__MIDL__IWiaMiniDrv0007

ppIDrvItemRoot [out, facoltativo]

Punta a un percorso di memoria che riceverà l'indirizzo di un'interfaccia IWiaDrvItem, l'interfaccia dell'elemento radice.

__MIDL__IWiaMiniDrv0008

ppIUnknownInner [out, facoltativo]

(Facoltativo) Punta a una posizione di memoria che può ricevere l'indirizzo di un'interfaccia IUnknown . Se il minidriver ha funzionalità non accessibili tramite l'interfaccia IWiaMiniDrv , il fornitore può creare un'interfaccia separata nel minidriver. Questo parametro fornisce l'accesso a tale funzionalità.

Valore restituito

In caso di esito positivo, il metodo deve restituire S_OK e cancellare il valore di errore del dispositivo a cui fa riferimento plDevErrVal. Se il metodo ha esito negativo, deve restituire un codice di errore COM standard e inserire un valore di codice di errore specifico di minidriver nella memoria a cui punta plDevErrVal.

Il valore a cui fa riferimento plDevErrVal può essere convertito in una stringa chiamando IWiaMiniDrv::d rvGetDeviceErrorStr.

Commenti

Questo metodo deve inizializzare tutte le strutture private e creare l'albero degli elementi del driver. Per informazioni dettagliate sui passaggi che i minidriver eseguono in genere in questo metodo, vedere Inizializzazione del minidriver WIA e Creazione dell'albero degli elementi del driver WIA.

Il servizio WIA chiama il metodo IWiaMiniDrv::d rvInitializeWia in risposta alla chiamata di un client alla funzione CreateDevice , il che significa che questo metodo viene chiamato una volta per ogni nuova connessione client.

Ad esempio, se l'utente fa clic con il pulsante destro del mouse su un'icona dello scanner WIA in My Computer, la shell chiama CreateDevice, che genera una chiamata al metodo IWiaMiniDrv::d rvInitializeWia . Se l'utente esegue l'acquisizione guidata WIA, chiama anche CreateDevice. Ogni volta che CreateDevice viene chiamato, è presente una chiamata corrispondente al metodo IWiaMiniDrv::d rvInitializeWia nel minidriver.

Requisiti

Requisito Valore
Piattaforma di destinazione Desktop
Intestazione wiamindr_lh.h (includere Wiamindr.h)

Vedi anche

IWiaDrvItem::AddItemToFolder

IWiaMiniDrv

IWiaMiniDrv::d rvGetDeviceErrorStr

IWiaMiniDrv::d rvUnInitializeWia

wiasCreateDrvItem