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) |