共用方式為


IWiaMiniDrv::d rvDeviceCommand 方法 (wiamindr_lh.h)

IWiaMiniDrv::d rvDeviceCommand 方法會發出 WIA 裝置的命令。

語法

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

參數

__MIDL__IWiaMiniDrv0043

lFlags [in]

保留的。

__MIDL__IWiaMiniDrv0044

pWiasContext [in]

WIA 專案內容的指標。

__MIDL__IWiaMiniDrv0045

plCommand [in]

指向 WIA 命令 GUID。

__MIDL__IWiaMiniDrv0046

plDevErrVal [out]

指向將接收此方法狀態代碼的記憶體位置。 如果此方法傳回 S_OK,則儲存的值會是零。 否則,迷你驅動程式特定的錯誤碼會儲存在此參數所指向的位置。

__MIDL__IWiaMiniDrv0047

ppWiaDrvItem [out, optional]

指向可接收 IWiaDrvItem 介面指標的記憶體位置。 請參閱下面的<備註>。

傳回值

成功時,方法應該會 傳回S_OK ,並清除 plDevErrVal 所指向的裝置錯誤值。 如果方法失敗,它應該會傳回標準 COM 錯誤碼,並將minidriver特定錯誤碼值放在 plDevErrVal 指向的記憶體中。

plDevErrVal 所指向的值可以藉由呼叫 IWiaMiniDrv::d rvGetDeviceErrorStr 來轉換成字符串。

備註

WIA 服務會呼叫 IWiaMiniDrv::d rvDeviceCommand 方法,以對裝置發出 WIA 服務或應用程式產生的命令。 WIA 服務只會針對裝置可在 IWiaMiniDrv::d rvGetCapabilities 方法中支援的命令呼叫 IWiaMiniDrv::d rvDeviceCommand 方法。

ppWiaDrvItem 參數應該視為選擇性,因為迷你驅動程式通常不會設定它所指向的記憶體位置。 不過,對於某些命令,迷你驅動程式會將新建立項目的位址放在此參數所指向的位置。 例如,如果在 plCommand 設定為WIA_CMD_TAKE_PICTURE) (發出圖片的命令,裝置會產生新的影像,導致迷你驅動程式在驅動程式專案樹狀結構中建立新專案,並將 *ppWiaDrvItem 設定為新項目的位址。 這會通知 WIA 服務已建立新專案。

迷你驅動程式可能包含裝置可在 IWiaMiniDrv::d rvGetCapabilities 方法中支援的自定義命令清單。

WIA 服務不會在呼叫此方法之前寫入任何屬性。 如果命令依賴屬性設定,minidriver 應該先呼叫 IWiaMiniDrv::d rvWriteItemProperties ,再發出命令。 例如,要拍攝圖片 的命令WIA_CMD_TAKE_PICTURE,可能會依賴快門速度和光圈設定,這需要在發出命令之前寫入裝置。

規格需求

需求
目標平台 桌面
標頭 wiamindr_lh.h (包含 Wiamindr.h)

另請參閱

IWiaMiniDrv

IWiaMiniDrv::d rvGetCapabilities

IWiaMiniDrv::d rvWriteItemProperties