Condividi tramite


Metodo IWiaMiniDrv::d rvDeviceCommand (wiamindr_lh.h)

Il metodo IWiaMiniDrv::d rvDeviceCommand genera un comando a un dispositivo WIA.

Sintassi

HRESULT drvDeviceCommand(
  BYTE        *__MIDL__IWiaMiniDrv0043,
  LONG        __MIDL__IWiaMiniDrv0044,
  const GUID  *__MIDL__IWiaMiniDrv0045,
  IWiaDrvItem **__MIDL__IWiaMiniDrv0046,
  LONG        *__MIDL__IWiaMiniDrv0047
);

Parametri

__MIDL__IWiaMiniDrv0043

lFlags [in]

Riservato.

__MIDL__IWiaMiniDrv0044

pWiasContext [in]

Puntatore a un contesto di elemento WIA.

__MIDL__IWiaMiniDrv0045

plCommand [in]

Punta a un GUID del comando WIA.

__MIDL__IWiaMiniDrv0046

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__IWiaMiniDrv0047

ppWiaDrvItem [out, facoltativo]

Punta a un percorso di memoria che può ricevere un puntatore a un'interfaccia IWiaDrvItem. Vedere la sezione Note riportata di seguito.

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

Il metodo IWiaMiniDrv::d rvDeviceCommand viene chiamato dal servizio WIA per emettere un servizio WIA o un'applicazione generata al dispositivo. Il servizio WIA chiama solo il metodo IWiaMiniDrv::d rvDeviceCommand per un comando che il dispositivo può supportare nel metodo IWiaMiniDrv::d rvGetCapabilities.

Il parametro ppWiaDrvItem deve essere considerato facoltativo, poiché il minidriver non imposta normalmente la posizione di memoria a cui punta. Per alcuni comandi, tuttavia, il minidriver inserisce l'indirizzo di un elemento appena creato nella posizione a cui punta questo parametro. Ad esempio, se il comando per eseguire un'immagine viene emesso (plCommand è impostato su WIA_CMD_TAKE_PICTURE), il dispositivo produce una nuova immagine, causando la creazione di un nuovo elemento nell'albero degli elementi del driver e imposta *ppWiaDrvItem sull'indirizzo del nuovo elemento. In questo modo viene informato il servizio WIA che è stato creato un nuovo elemento.

Il minidriver può includere un elenco di comandi personalizzati che il dispositivo può supportare nel metodo IWiaMiniDrv::d rvGetCapabilities.

Il servizio WIA non scrive alcuna proprietà prima di chiamare questo metodo. Se il comando si basa sulle impostazioni delle proprietà, il minidriver deve chiamare IWiaMiniDrv::d rvWriteItemProperties prima di eseguire il comando. Ad esempio, il comando per scattare un'immagine, WIA_CMD_TAKE_PICTURE, potrebbe basarsi sulle impostazioni di velocità dell'otturatore e apertura, che devono essere scritte nel dispositivo prima dell'emissione del comando.

Requisiti

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

Vedi anche

IWiaMiniDrv

IWiaMiniDrv::d rvGetCapabilities

IWiaMiniDrv::d rvWriteItemProperties