Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

3549 lines
106 KiB

  1. #pragma warning( disable: 4049 ) /* more than 64k source lines */
  2. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  3. /* File created by MIDL compiler version 6.00.0347 */
  4. /* Compiler settings for wia.idl, wia.acf:
  5. Oicf, W1, Zp8, env=Win32 (32b run)
  6. protocol : dce , ms_ext, c_ext, robust
  7. error checks: allocation ref bounds_check enum stub_data
  8. VC __declspec() decoration level:
  9. __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  10. DECLSPEC_UUID(), MIDL_INTERFACE()
  11. */
  12. //@@MIDL_FILE_HEADING( )
  13. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  14. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  15. #define __REQUIRED_RPCNDR_H_VERSION__ 475
  16. #endif
  17. #include "rpc.h"
  18. #include "rpcndr.h"
  19. #ifndef __RPCNDR_H_VERSION__
  20. #error this stub requires an updated version of <rpcndr.h>
  21. #endif // __RPCNDR_H_VERSION__
  22. #ifndef COM_NO_WINDOWS_H
  23. #include "windows.h"
  24. #include "ole2.h"
  25. #endif /*COM_NO_WINDOWS_H*/
  26. #ifndef __wia_h__
  27. #define __wia_h__
  28. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  29. #pragma once
  30. #endif
  31. /* Forward Declarations */
  32. #ifndef __IWiaDevMgr_FWD_DEFINED__
  33. #define __IWiaDevMgr_FWD_DEFINED__
  34. typedef interface IWiaDevMgr IWiaDevMgr;
  35. #endif /* __IWiaDevMgr_FWD_DEFINED__ */
  36. #ifndef __IEnumWIA_DEV_INFO_FWD_DEFINED__
  37. #define __IEnumWIA_DEV_INFO_FWD_DEFINED__
  38. typedef interface IEnumWIA_DEV_INFO IEnumWIA_DEV_INFO;
  39. #endif /* __IEnumWIA_DEV_INFO_FWD_DEFINED__ */
  40. #ifndef __IWiaEventCallback_FWD_DEFINED__
  41. #define __IWiaEventCallback_FWD_DEFINED__
  42. typedef interface IWiaEventCallback IWiaEventCallback;
  43. #endif /* __IWiaEventCallback_FWD_DEFINED__ */
  44. #ifndef __IWiaDataCallback_FWD_DEFINED__
  45. #define __IWiaDataCallback_FWD_DEFINED__
  46. typedef interface IWiaDataCallback IWiaDataCallback;
  47. #endif /* __IWiaDataCallback_FWD_DEFINED__ */
  48. #ifndef __IWiaDataTransfer_FWD_DEFINED__
  49. #define __IWiaDataTransfer_FWD_DEFINED__
  50. typedef interface IWiaDataTransfer IWiaDataTransfer;
  51. #endif /* __IWiaDataTransfer_FWD_DEFINED__ */
  52. #ifndef __IWiaItem_FWD_DEFINED__
  53. #define __IWiaItem_FWD_DEFINED__
  54. typedef interface IWiaItem IWiaItem;
  55. #endif /* __IWiaItem_FWD_DEFINED__ */
  56. #ifndef __IWiaPropertyStorage_FWD_DEFINED__
  57. #define __IWiaPropertyStorage_FWD_DEFINED__
  58. typedef interface IWiaPropertyStorage IWiaPropertyStorage;
  59. #endif /* __IWiaPropertyStorage_FWD_DEFINED__ */
  60. #ifndef __IEnumWiaItem_FWD_DEFINED__
  61. #define __IEnumWiaItem_FWD_DEFINED__
  62. typedef interface IEnumWiaItem IEnumWiaItem;
  63. #endif /* __IEnumWiaItem_FWD_DEFINED__ */
  64. #ifndef __IEnumWIA_DEV_CAPS_FWD_DEFINED__
  65. #define __IEnumWIA_DEV_CAPS_FWD_DEFINED__
  66. typedef interface IEnumWIA_DEV_CAPS IEnumWIA_DEV_CAPS;
  67. #endif /* __IEnumWIA_DEV_CAPS_FWD_DEFINED__ */
  68. #ifndef __IEnumWIA_FORMAT_INFO_FWD_DEFINED__
  69. #define __IEnumWIA_FORMAT_INFO_FWD_DEFINED__
  70. typedef interface IEnumWIA_FORMAT_INFO IEnumWIA_FORMAT_INFO;
  71. #endif /* __IEnumWIA_FORMAT_INFO_FWD_DEFINED__ */
  72. #ifndef __IWiaLog_FWD_DEFINED__
  73. #define __IWiaLog_FWD_DEFINED__
  74. typedef interface IWiaLog IWiaLog;
  75. #endif /* __IWiaLog_FWD_DEFINED__ */
  76. #ifndef __IWiaLogEx_FWD_DEFINED__
  77. #define __IWiaLogEx_FWD_DEFINED__
  78. typedef interface IWiaLogEx IWiaLogEx;
  79. #endif /* __IWiaLogEx_FWD_DEFINED__ */
  80. #ifndef __IWiaNotifyDevMgr_FWD_DEFINED__
  81. #define __IWiaNotifyDevMgr_FWD_DEFINED__
  82. typedef interface IWiaNotifyDevMgr IWiaNotifyDevMgr;
  83. #endif /* __IWiaNotifyDevMgr_FWD_DEFINED__ */
  84. #ifndef __IWiaItemExtras_FWD_DEFINED__
  85. #define __IWiaItemExtras_FWD_DEFINED__
  86. typedef interface IWiaItemExtras IWiaItemExtras;
  87. #endif /* __IWiaItemExtras_FWD_DEFINED__ */
  88. #ifndef __WiaDevMgr_FWD_DEFINED__
  89. #define __WiaDevMgr_FWD_DEFINED__
  90. #ifdef __cplusplus
  91. typedef class WiaDevMgr WiaDevMgr;
  92. #else
  93. typedef struct WiaDevMgr WiaDevMgr;
  94. #endif /* __cplusplus */
  95. #endif /* __WiaDevMgr_FWD_DEFINED__ */
  96. #ifndef __WiaLog_FWD_DEFINED__
  97. #define __WiaLog_FWD_DEFINED__
  98. #ifdef __cplusplus
  99. typedef class WiaLog WiaLog;
  100. #else
  101. typedef struct WiaLog WiaLog;
  102. #endif /* __cplusplus */
  103. #endif /* __WiaLog_FWD_DEFINED__ */
  104. /* header files for imported files */
  105. #include "unknwn.h"
  106. #include "oaidl.h"
  107. #include "propidl.h"
  108. #ifdef __cplusplus
  109. extern "C"{
  110. #endif
  111. void * __RPC_USER MIDL_user_allocate(size_t);
  112. void __RPC_USER MIDL_user_free( void * );
  113. /* interface __MIDL_itf_wia_0000 */
  114. /* [local] */
  115. typedef struct _WIA_DITHER_PATTERN_DATA
  116. {
  117. LONG lSize;
  118. BSTR bstrPatternName;
  119. LONG lPatternWidth;
  120. LONG lPatternLength;
  121. LONG cbPattern;
  122. /* [size_is] */ BYTE *pbPattern;
  123. } WIA_DITHER_PATTERN_DATA;
  124. typedef struct _WIA_DITHER_PATTERN_DATA *PWIA_DITHER_PATTERN_DATA;
  125. typedef struct _WIA_PROPID_TO_NAME
  126. {
  127. PROPID propid;
  128. LPOLESTR pszName;
  129. } WIA_PROPID_TO_NAME;
  130. typedef struct _WIA_PROPID_TO_NAME *PWIA_PROPID_TO_NAME;
  131. typedef struct _WIA_FORMAT_INFO
  132. {
  133. GUID guidFormatID;
  134. LONG lTymed;
  135. } WIA_FORMAT_INFO;
  136. typedef struct _WIA_FORMAT_INFO *PWIA_FORMAT_INFO;
  137. #include "wiadef.h"
  138. extern RPC_IF_HANDLE __MIDL_itf_wia_0000_v0_0_c_ifspec;
  139. extern RPC_IF_HANDLE __MIDL_itf_wia_0000_v0_0_s_ifspec;
  140. #ifndef __IWiaDevMgr_INTERFACE_DEFINED__
  141. #define __IWiaDevMgr_INTERFACE_DEFINED__
  142. /* interface IWiaDevMgr */
  143. /* [unique][helpstring][uuid][object] */
  144. EXTERN_C const IID IID_IWiaDevMgr;
  145. #if defined(__cplusplus) && !defined(CINTERFACE)
  146. MIDL_INTERFACE("5eb2502a-8cf1-11d1-bf92-0060081ed811")
  147. IWiaDevMgr : public IUnknown
  148. {
  149. public:
  150. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE EnumDeviceInfo(
  151. /* [in] */ LONG lFlag,
  152. /* [retval][out] */ IEnumWIA_DEV_INFO **ppIEnum) = 0;
  153. virtual /* [local] */ HRESULT STDMETHODCALLTYPE CreateDevice(
  154. /* [in] */ BSTR bstrDeviceID,
  155. /* [out] */ IWiaItem **ppWiaItemRoot) = 0;
  156. virtual /* [local] */ HRESULT STDMETHODCALLTYPE SelectDeviceDlg(
  157. /* [in] */ HWND hwndParent,
  158. /* [in] */ LONG lDeviceType,
  159. /* [in] */ LONG lFlags,
  160. /* [out][in] */ BSTR *pbstrDeviceID,
  161. /* [retval][out] */ IWiaItem **ppItemRoot) = 0;
  162. virtual /* [local] */ HRESULT STDMETHODCALLTYPE SelectDeviceDlgID(
  163. /* [in] */ HWND hwndParent,
  164. /* [in] */ LONG lDeviceType,
  165. /* [in] */ LONG lFlags,
  166. /* [retval][out] */ BSTR *pbstrDeviceID) = 0;
  167. virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetImageDlg(
  168. /* [in] */ HWND hwndParent,
  169. /* [in] */ LONG lDeviceType,
  170. /* [in] */ LONG lFlags,
  171. /* [in] */ LONG lIntent,
  172. /* [in] */ IWiaItem *pItemRoot,
  173. /* [in] */ BSTR bstrFilename,
  174. /* [out][in] */ GUID *pguidFormat) = 0;
  175. virtual /* [local] */ HRESULT STDMETHODCALLTYPE RegisterEventCallbackProgram(
  176. /* [in] */ LONG lFlags,
  177. /* [in] */ BSTR bstrDeviceID,
  178. /* [in] */ const GUID *pEventGUID,
  179. /* [in] */ BSTR bstrCommandline,
  180. /* [in] */ BSTR bstrName,
  181. /* [in] */ BSTR bstrDescription,
  182. /* [in] */ BSTR bstrIcon) = 0;
  183. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE RegisterEventCallbackInterface(
  184. /* [in] */ LONG lFlags,
  185. /* [in] */ BSTR bstrDeviceID,
  186. /* [in] */ const GUID *pEventGUID,
  187. /* [unique][in] */ IWiaEventCallback *pIWiaEventCallback,
  188. /* [out] */ IUnknown **pEventObject) = 0;
  189. virtual /* [local] */ HRESULT STDMETHODCALLTYPE RegisterEventCallbackCLSID(
  190. /* [in] */ LONG lFlags,
  191. /* [in] */ BSTR bstrDeviceID,
  192. /* [in] */ const GUID *pEventGUID,
  193. /* [unique][in] */ const GUID *pClsID,
  194. /* [in] */ BSTR bstrName,
  195. /* [in] */ BSTR bstrDescription,
  196. /* [in] */ BSTR bstrIcon) = 0;
  197. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE AddDeviceDlg(
  198. /* [in] */ HWND hwndParent,
  199. /* [in] */ LONG lFlags) = 0;
  200. };
  201. #else /* C style interface */
  202. typedef struct IWiaDevMgrVtbl
  203. {
  204. BEGIN_INTERFACE
  205. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  206. IWiaDevMgr * This,
  207. /* [in] */ REFIID riid,
  208. /* [iid_is][out] */ void **ppvObject);
  209. ULONG ( STDMETHODCALLTYPE *AddRef )(
  210. IWiaDevMgr * This);
  211. ULONG ( STDMETHODCALLTYPE *Release )(
  212. IWiaDevMgr * This);
  213. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *EnumDeviceInfo )(
  214. IWiaDevMgr * This,
  215. /* [in] */ LONG lFlag,
  216. /* [retval][out] */ IEnumWIA_DEV_INFO **ppIEnum);
  217. /* [local] */ HRESULT ( STDMETHODCALLTYPE *CreateDevice )(
  218. IWiaDevMgr * This,
  219. /* [in] */ BSTR bstrDeviceID,
  220. /* [out] */ IWiaItem **ppWiaItemRoot);
  221. /* [local] */ HRESULT ( STDMETHODCALLTYPE *SelectDeviceDlg )(
  222. IWiaDevMgr * This,
  223. /* [in] */ HWND hwndParent,
  224. /* [in] */ LONG lDeviceType,
  225. /* [in] */ LONG lFlags,
  226. /* [out][in] */ BSTR *pbstrDeviceID,
  227. /* [retval][out] */ IWiaItem **ppItemRoot);
  228. /* [local] */ HRESULT ( STDMETHODCALLTYPE *SelectDeviceDlgID )(
  229. IWiaDevMgr * This,
  230. /* [in] */ HWND hwndParent,
  231. /* [in] */ LONG lDeviceType,
  232. /* [in] */ LONG lFlags,
  233. /* [retval][out] */ BSTR *pbstrDeviceID);
  234. /* [local] */ HRESULT ( STDMETHODCALLTYPE *GetImageDlg )(
  235. IWiaDevMgr * This,
  236. /* [in] */ HWND hwndParent,
  237. /* [in] */ LONG lDeviceType,
  238. /* [in] */ LONG lFlags,
  239. /* [in] */ LONG lIntent,
  240. /* [in] */ IWiaItem *pItemRoot,
  241. /* [in] */ BSTR bstrFilename,
  242. /* [out][in] */ GUID *pguidFormat);
  243. /* [local] */ HRESULT ( STDMETHODCALLTYPE *RegisterEventCallbackProgram )(
  244. IWiaDevMgr * This,
  245. /* [in] */ LONG lFlags,
  246. /* [in] */ BSTR bstrDeviceID,
  247. /* [in] */ const GUID *pEventGUID,
  248. /* [in] */ BSTR bstrCommandline,
  249. /* [in] */ BSTR bstrName,
  250. /* [in] */ BSTR bstrDescription,
  251. /* [in] */ BSTR bstrIcon);
  252. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *RegisterEventCallbackInterface )(
  253. IWiaDevMgr * This,
  254. /* [in] */ LONG lFlags,
  255. /* [in] */ BSTR bstrDeviceID,
  256. /* [in] */ const GUID *pEventGUID,
  257. /* [unique][in] */ IWiaEventCallback *pIWiaEventCallback,
  258. /* [out] */ IUnknown **pEventObject);
  259. /* [local] */ HRESULT ( STDMETHODCALLTYPE *RegisterEventCallbackCLSID )(
  260. IWiaDevMgr * This,
  261. /* [in] */ LONG lFlags,
  262. /* [in] */ BSTR bstrDeviceID,
  263. /* [in] */ const GUID *pEventGUID,
  264. /* [unique][in] */ const GUID *pClsID,
  265. /* [in] */ BSTR bstrName,
  266. /* [in] */ BSTR bstrDescription,
  267. /* [in] */ BSTR bstrIcon);
  268. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *AddDeviceDlg )(
  269. IWiaDevMgr * This,
  270. /* [in] */ HWND hwndParent,
  271. /* [in] */ LONG lFlags);
  272. END_INTERFACE
  273. } IWiaDevMgrVtbl;
  274. interface IWiaDevMgr
  275. {
  276. CONST_VTBL struct IWiaDevMgrVtbl *lpVtbl;
  277. };
  278. #ifdef COBJMACROS
  279. #define IWiaDevMgr_QueryInterface(This,riid,ppvObject) \
  280. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  281. #define IWiaDevMgr_AddRef(This) \
  282. (This)->lpVtbl -> AddRef(This)
  283. #define IWiaDevMgr_Release(This) \
  284. (This)->lpVtbl -> Release(This)
  285. #define IWiaDevMgr_EnumDeviceInfo(This,lFlag,ppIEnum) \
  286. (This)->lpVtbl -> EnumDeviceInfo(This,lFlag,ppIEnum)
  287. #define IWiaDevMgr_CreateDevice(This,bstrDeviceID,ppWiaItemRoot) \
  288. (This)->lpVtbl -> CreateDevice(This,bstrDeviceID,ppWiaItemRoot)
  289. #define IWiaDevMgr_SelectDeviceDlg(This,hwndParent,lDeviceType,lFlags,pbstrDeviceID,ppItemRoot) \
  290. (This)->lpVtbl -> SelectDeviceDlg(This,hwndParent,lDeviceType,lFlags,pbstrDeviceID,ppItemRoot)
  291. #define IWiaDevMgr_SelectDeviceDlgID(This,hwndParent,lDeviceType,lFlags,pbstrDeviceID) \
  292. (This)->lpVtbl -> SelectDeviceDlgID(This,hwndParent,lDeviceType,lFlags,pbstrDeviceID)
  293. #define IWiaDevMgr_GetImageDlg(This,hwndParent,lDeviceType,lFlags,lIntent,pItemRoot,bstrFilename,pguidFormat) \
  294. (This)->lpVtbl -> GetImageDlg(This,hwndParent,lDeviceType,lFlags,lIntent,pItemRoot,bstrFilename,pguidFormat)
  295. #define IWiaDevMgr_RegisterEventCallbackProgram(This,lFlags,bstrDeviceID,pEventGUID,bstrCommandline,bstrName,bstrDescription,bstrIcon) \
  296. (This)->lpVtbl -> RegisterEventCallbackProgram(This,lFlags,bstrDeviceID,pEventGUID,bstrCommandline,bstrName,bstrDescription,bstrIcon)
  297. #define IWiaDevMgr_RegisterEventCallbackInterface(This,lFlags,bstrDeviceID,pEventGUID,pIWiaEventCallback,pEventObject) \
  298. (This)->lpVtbl -> RegisterEventCallbackInterface(This,lFlags,bstrDeviceID,pEventGUID,pIWiaEventCallback,pEventObject)
  299. #define IWiaDevMgr_RegisterEventCallbackCLSID(This,lFlags,bstrDeviceID,pEventGUID,pClsID,bstrName,bstrDescription,bstrIcon) \
  300. (This)->lpVtbl -> RegisterEventCallbackCLSID(This,lFlags,bstrDeviceID,pEventGUID,pClsID,bstrName,bstrDescription,bstrIcon)
  301. #define IWiaDevMgr_AddDeviceDlg(This,hwndParent,lFlags) \
  302. (This)->lpVtbl -> AddDeviceDlg(This,hwndParent,lFlags)
  303. #endif /* COBJMACROS */
  304. #endif /* C style interface */
  305. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaDevMgr_EnumDeviceInfo_Proxy(
  306. IWiaDevMgr * This,
  307. /* [in] */ LONG lFlag,
  308. /* [retval][out] */ IEnumWIA_DEV_INFO **ppIEnum);
  309. void __RPC_STUB IWiaDevMgr_EnumDeviceInfo_Stub(
  310. IRpcStubBuffer *This,
  311. IRpcChannelBuffer *_pRpcChannelBuffer,
  312. PRPC_MESSAGE _pRpcMessage,
  313. DWORD *_pdwStubPhase);
  314. /* [helpstring][call_as] */ HRESULT STDMETHODCALLTYPE IWiaDevMgr_LocalCreateDevice_Proxy(
  315. IWiaDevMgr * This,
  316. /* [in] */ BSTR bstrDeviceID,
  317. /* [out] */ IWiaItem **ppWiaItemRoot);
  318. void __RPC_STUB IWiaDevMgr_LocalCreateDevice_Stub(
  319. IRpcStubBuffer *This,
  320. IRpcChannelBuffer *_pRpcChannelBuffer,
  321. PRPC_MESSAGE _pRpcMessage,
  322. DWORD *_pdwStubPhase);
  323. /* [nocode][helpstring][call_as] */ HRESULT STDMETHODCALLTYPE IWiaDevMgr_LocalSelectDeviceDlg_Proxy(
  324. IWiaDevMgr * This,
  325. /* [in] */ HWND hwndParent,
  326. /* [in] */ LONG lDeviceType,
  327. /* [in] */ LONG lFlags,
  328. /* [out][in] */ BSTR *pbstrDeviceID,
  329. /* [retval][out] */ IWiaItem **ppItemRoot);
  330. void __RPC_STUB IWiaDevMgr_LocalSelectDeviceDlg_Stub(
  331. IRpcStubBuffer *This,
  332. IRpcChannelBuffer *_pRpcChannelBuffer,
  333. PRPC_MESSAGE _pRpcMessage,
  334. DWORD *_pdwStubPhase);
  335. /* [nocode][helpstring][call_as] */ HRESULT STDMETHODCALLTYPE IWiaDevMgr_LocalSelectDeviceDlgID_Proxy(
  336. IWiaDevMgr * This,
  337. /* [in] */ HWND hwndParent,
  338. /* [in] */ LONG lDeviceType,
  339. /* [in] */ LONG lFlags,
  340. /* [retval][out] */ BSTR *pbstrDeviceID);
  341. void __RPC_STUB IWiaDevMgr_LocalSelectDeviceDlgID_Stub(
  342. IRpcStubBuffer *This,
  343. IRpcChannelBuffer *_pRpcChannelBuffer,
  344. PRPC_MESSAGE _pRpcMessage,
  345. DWORD *_pdwStubPhase);
  346. /* [nocode][helpstring][call_as] */ HRESULT STDMETHODCALLTYPE IWiaDevMgr_LocalGetImageDlg_Proxy(
  347. IWiaDevMgr * This,
  348. /* [in] */ HWND hwndParent,
  349. /* [in] */ LONG lDeviceType,
  350. /* [in] */ LONG lFlags,
  351. /* [in] */ LONG lIntent,
  352. /* [in] */ IWiaItem *pItemRoot,
  353. /* [in] */ BSTR bstrFilename,
  354. /* [out][in] */ GUID *pguidFormat);
  355. void __RPC_STUB IWiaDevMgr_LocalGetImageDlg_Stub(
  356. IRpcStubBuffer *This,
  357. IRpcChannelBuffer *_pRpcChannelBuffer,
  358. PRPC_MESSAGE _pRpcMessage,
  359. DWORD *_pdwStubPhase);
  360. /* [helpstring][call_as] */ HRESULT STDMETHODCALLTYPE IWiaDevMgr_LocalRegisterEventCallbackProgram_Proxy(
  361. IWiaDevMgr * This,
  362. /* [in] */ LONG lFlags,
  363. /* [in] */ BSTR bstrDeviceID,
  364. /* [in] */ const GUID *pEventGUID,
  365. /* [in] */ BSTR bstrCommandline,
  366. /* [in] */ BSTR bstrName,
  367. /* [in] */ BSTR bstrDescription,
  368. /* [in] */ BSTR bstrIcon);
  369. void __RPC_STUB IWiaDevMgr_LocalRegisterEventCallbackProgram_Stub(
  370. IRpcStubBuffer *This,
  371. IRpcChannelBuffer *_pRpcChannelBuffer,
  372. PRPC_MESSAGE _pRpcMessage,
  373. DWORD *_pdwStubPhase);
  374. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaDevMgr_RegisterEventCallbackInterface_Proxy(
  375. IWiaDevMgr * This,
  376. /* [in] */ LONG lFlags,
  377. /* [in] */ BSTR bstrDeviceID,
  378. /* [in] */ const GUID *pEventGUID,
  379. /* [unique][in] */ IWiaEventCallback *pIWiaEventCallback,
  380. /* [out] */ IUnknown **pEventObject);
  381. void __RPC_STUB IWiaDevMgr_RegisterEventCallbackInterface_Stub(
  382. IRpcStubBuffer *This,
  383. IRpcChannelBuffer *_pRpcChannelBuffer,
  384. PRPC_MESSAGE _pRpcMessage,
  385. DWORD *_pdwStubPhase);
  386. /* [helpstring][call_as] */ HRESULT STDMETHODCALLTYPE IWiaDevMgr_LocalRegisterEventCallbackCLSID_Proxy(
  387. IWiaDevMgr * This,
  388. /* [in] */ LONG lFlags,
  389. /* [in] */ BSTR bstrDeviceID,
  390. /* [in] */ const GUID *pEventGUID,
  391. /* [unique][in] */ const GUID *pClsID,
  392. /* [in] */ BSTR bstrName,
  393. /* [in] */ BSTR bstrDescription,
  394. /* [in] */ BSTR bstrIcon);
  395. void __RPC_STUB IWiaDevMgr_LocalRegisterEventCallbackCLSID_Stub(
  396. IRpcStubBuffer *This,
  397. IRpcChannelBuffer *_pRpcChannelBuffer,
  398. PRPC_MESSAGE _pRpcMessage,
  399. DWORD *_pdwStubPhase);
  400. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaDevMgr_AddDeviceDlg_Proxy(
  401. IWiaDevMgr * This,
  402. /* [in] */ HWND hwndParent,
  403. /* [in] */ LONG lFlags);
  404. void __RPC_STUB IWiaDevMgr_AddDeviceDlg_Stub(
  405. IRpcStubBuffer *This,
  406. IRpcChannelBuffer *_pRpcChannelBuffer,
  407. PRPC_MESSAGE _pRpcMessage,
  408. DWORD *_pdwStubPhase);
  409. #endif /* __IWiaDevMgr_INTERFACE_DEFINED__ */
  410. #ifndef __IEnumWIA_DEV_INFO_INTERFACE_DEFINED__
  411. #define __IEnumWIA_DEV_INFO_INTERFACE_DEFINED__
  412. /* interface IEnumWIA_DEV_INFO */
  413. /* [unique][helpstring][uuid][object] */
  414. EXTERN_C const IID IID_IEnumWIA_DEV_INFO;
  415. #if defined(__cplusplus) && !defined(CINTERFACE)
  416. MIDL_INTERFACE("5e38b83c-8cf1-11d1-bf92-0060081ed811")
  417. IEnumWIA_DEV_INFO : public IUnknown
  418. {
  419. public:
  420. virtual /* [local] */ HRESULT STDMETHODCALLTYPE Next(
  421. /* [in] */ ULONG celt,
  422. /* [length_is][size_is][out] */ IWiaPropertyStorage **rgelt,
  423. /* [unique][out][in] */ ULONG *pceltFetched) = 0;
  424. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Skip(
  425. /* [in] */ ULONG celt) = 0;
  426. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  427. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Clone(
  428. /* [out] */ IEnumWIA_DEV_INFO **ppIEnum) = 0;
  429. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetCount(
  430. /* [out] */ ULONG *celt) = 0;
  431. };
  432. #else /* C style interface */
  433. typedef struct IEnumWIA_DEV_INFOVtbl
  434. {
  435. BEGIN_INTERFACE
  436. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  437. IEnumWIA_DEV_INFO * This,
  438. /* [in] */ REFIID riid,
  439. /* [iid_is][out] */ void **ppvObject);
  440. ULONG ( STDMETHODCALLTYPE *AddRef )(
  441. IEnumWIA_DEV_INFO * This);
  442. ULONG ( STDMETHODCALLTYPE *Release )(
  443. IEnumWIA_DEV_INFO * This);
  444. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Next )(
  445. IEnumWIA_DEV_INFO * This,
  446. /* [in] */ ULONG celt,
  447. /* [length_is][size_is][out] */ IWiaPropertyStorage **rgelt,
  448. /* [unique][out][in] */ ULONG *pceltFetched);
  449. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Skip )(
  450. IEnumWIA_DEV_INFO * This,
  451. /* [in] */ ULONG celt);
  452. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Reset )(
  453. IEnumWIA_DEV_INFO * This);
  454. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Clone )(
  455. IEnumWIA_DEV_INFO * This,
  456. /* [out] */ IEnumWIA_DEV_INFO **ppIEnum);
  457. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetCount )(
  458. IEnumWIA_DEV_INFO * This,
  459. /* [out] */ ULONG *celt);
  460. END_INTERFACE
  461. } IEnumWIA_DEV_INFOVtbl;
  462. interface IEnumWIA_DEV_INFO
  463. {
  464. CONST_VTBL struct IEnumWIA_DEV_INFOVtbl *lpVtbl;
  465. };
  466. #ifdef COBJMACROS
  467. #define IEnumWIA_DEV_INFO_QueryInterface(This,riid,ppvObject) \
  468. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  469. #define IEnumWIA_DEV_INFO_AddRef(This) \
  470. (This)->lpVtbl -> AddRef(This)
  471. #define IEnumWIA_DEV_INFO_Release(This) \
  472. (This)->lpVtbl -> Release(This)
  473. #define IEnumWIA_DEV_INFO_Next(This,celt,rgelt,pceltFetched) \
  474. (This)->lpVtbl -> Next(This,celt,rgelt,pceltFetched)
  475. #define IEnumWIA_DEV_INFO_Skip(This,celt) \
  476. (This)->lpVtbl -> Skip(This,celt)
  477. #define IEnumWIA_DEV_INFO_Reset(This) \
  478. (This)->lpVtbl -> Reset(This)
  479. #define IEnumWIA_DEV_INFO_Clone(This,ppIEnum) \
  480. (This)->lpVtbl -> Clone(This,ppIEnum)
  481. #define IEnumWIA_DEV_INFO_GetCount(This,celt) \
  482. (This)->lpVtbl -> GetCount(This,celt)
  483. #endif /* COBJMACROS */
  484. #endif /* C style interface */
  485. /* [helpstring][call_as] */ HRESULT STDMETHODCALLTYPE IEnumWIA_DEV_INFO_RemoteNext_Proxy(
  486. IEnumWIA_DEV_INFO * This,
  487. /* [in] */ ULONG celt,
  488. /* [length_is][size_is][out] */ IWiaPropertyStorage **rgelt,
  489. /* [unique][out][in] */ ULONG *pceltFetched);
  490. void __RPC_STUB IEnumWIA_DEV_INFO_RemoteNext_Stub(
  491. IRpcStubBuffer *This,
  492. IRpcChannelBuffer *_pRpcChannelBuffer,
  493. PRPC_MESSAGE _pRpcMessage,
  494. DWORD *_pdwStubPhase);
  495. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IEnumWIA_DEV_INFO_Skip_Proxy(
  496. IEnumWIA_DEV_INFO * This,
  497. /* [in] */ ULONG celt);
  498. void __RPC_STUB IEnumWIA_DEV_INFO_Skip_Stub(
  499. IRpcStubBuffer *This,
  500. IRpcChannelBuffer *_pRpcChannelBuffer,
  501. PRPC_MESSAGE _pRpcMessage,
  502. DWORD *_pdwStubPhase);
  503. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IEnumWIA_DEV_INFO_Reset_Proxy(
  504. IEnumWIA_DEV_INFO * This);
  505. void __RPC_STUB IEnumWIA_DEV_INFO_Reset_Stub(
  506. IRpcStubBuffer *This,
  507. IRpcChannelBuffer *_pRpcChannelBuffer,
  508. PRPC_MESSAGE _pRpcMessage,
  509. DWORD *_pdwStubPhase);
  510. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IEnumWIA_DEV_INFO_Clone_Proxy(
  511. IEnumWIA_DEV_INFO * This,
  512. /* [out] */ IEnumWIA_DEV_INFO **ppIEnum);
  513. void __RPC_STUB IEnumWIA_DEV_INFO_Clone_Stub(
  514. IRpcStubBuffer *This,
  515. IRpcChannelBuffer *_pRpcChannelBuffer,
  516. PRPC_MESSAGE _pRpcMessage,
  517. DWORD *_pdwStubPhase);
  518. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IEnumWIA_DEV_INFO_GetCount_Proxy(
  519. IEnumWIA_DEV_INFO * This,
  520. /* [out] */ ULONG *celt);
  521. void __RPC_STUB IEnumWIA_DEV_INFO_GetCount_Stub(
  522. IRpcStubBuffer *This,
  523. IRpcChannelBuffer *_pRpcChannelBuffer,
  524. PRPC_MESSAGE _pRpcMessage,
  525. DWORD *_pdwStubPhase);
  526. #endif /* __IEnumWIA_DEV_INFO_INTERFACE_DEFINED__ */
  527. #ifndef __IWiaEventCallback_INTERFACE_DEFINED__
  528. #define __IWiaEventCallback_INTERFACE_DEFINED__
  529. /* interface IWiaEventCallback */
  530. /* [unique][helpstring][uuid][object] */
  531. EXTERN_C const IID IID_IWiaEventCallback;
  532. #if defined(__cplusplus) && !defined(CINTERFACE)
  533. MIDL_INTERFACE("ae6287b0-0084-11d2-973b-00a0c9068f2e")
  534. IWiaEventCallback : public IUnknown
  535. {
  536. public:
  537. virtual HRESULT STDMETHODCALLTYPE ImageEventCallback(
  538. /* [in] */ const GUID *pEventGUID,
  539. /* [in] */ BSTR bstrEventDescription,
  540. /* [in] */ BSTR bstrDeviceID,
  541. /* [in] */ BSTR bstrDeviceDescription,
  542. /* [in] */ DWORD dwDeviceType,
  543. /* [in] */ BSTR bstrFullItemName,
  544. /* [out][in] */ ULONG *pulEventType,
  545. /* [in] */ ULONG ulReserved) = 0;
  546. };
  547. #else /* C style interface */
  548. typedef struct IWiaEventCallbackVtbl
  549. {
  550. BEGIN_INTERFACE
  551. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  552. IWiaEventCallback * This,
  553. /* [in] */ REFIID riid,
  554. /* [iid_is][out] */ void **ppvObject);
  555. ULONG ( STDMETHODCALLTYPE *AddRef )(
  556. IWiaEventCallback * This);
  557. ULONG ( STDMETHODCALLTYPE *Release )(
  558. IWiaEventCallback * This);
  559. HRESULT ( STDMETHODCALLTYPE *ImageEventCallback )(
  560. IWiaEventCallback * This,
  561. /* [in] */ const GUID *pEventGUID,
  562. /* [in] */ BSTR bstrEventDescription,
  563. /* [in] */ BSTR bstrDeviceID,
  564. /* [in] */ BSTR bstrDeviceDescription,
  565. /* [in] */ DWORD dwDeviceType,
  566. /* [in] */ BSTR bstrFullItemName,
  567. /* [out][in] */ ULONG *pulEventType,
  568. /* [in] */ ULONG ulReserved);
  569. END_INTERFACE
  570. } IWiaEventCallbackVtbl;
  571. interface IWiaEventCallback
  572. {
  573. CONST_VTBL struct IWiaEventCallbackVtbl *lpVtbl;
  574. };
  575. #ifdef COBJMACROS
  576. #define IWiaEventCallback_QueryInterface(This,riid,ppvObject) \
  577. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  578. #define IWiaEventCallback_AddRef(This) \
  579. (This)->lpVtbl -> AddRef(This)
  580. #define IWiaEventCallback_Release(This) \
  581. (This)->lpVtbl -> Release(This)
  582. #define IWiaEventCallback_ImageEventCallback(This,pEventGUID,bstrEventDescription,bstrDeviceID,bstrDeviceDescription,dwDeviceType,bstrFullItemName,pulEventType,ulReserved) \
  583. (This)->lpVtbl -> ImageEventCallback(This,pEventGUID,bstrEventDescription,bstrDeviceID,bstrDeviceDescription,dwDeviceType,bstrFullItemName,pulEventType,ulReserved)
  584. #endif /* COBJMACROS */
  585. #endif /* C style interface */
  586. HRESULT STDMETHODCALLTYPE IWiaEventCallback_ImageEventCallback_Proxy(
  587. IWiaEventCallback * This,
  588. /* [in] */ const GUID *pEventGUID,
  589. /* [in] */ BSTR bstrEventDescription,
  590. /* [in] */ BSTR bstrDeviceID,
  591. /* [in] */ BSTR bstrDeviceDescription,
  592. /* [in] */ DWORD dwDeviceType,
  593. /* [in] */ BSTR bstrFullItemName,
  594. /* [out][in] */ ULONG *pulEventType,
  595. /* [in] */ ULONG ulReserved);
  596. void __RPC_STUB IWiaEventCallback_ImageEventCallback_Stub(
  597. IRpcStubBuffer *This,
  598. IRpcChannelBuffer *_pRpcChannelBuffer,
  599. PRPC_MESSAGE _pRpcMessage,
  600. DWORD *_pdwStubPhase);
  601. #endif /* __IWiaEventCallback_INTERFACE_DEFINED__ */
  602. /* interface __MIDL_itf_wia_0121 */
  603. /* [local] */
  604. typedef struct _WIA_DATA_CALLBACK_HEADER
  605. {
  606. LONG lSize;
  607. GUID guidFormatID;
  608. LONG lBufferSize;
  609. LONG lPageCount;
  610. } WIA_DATA_CALLBACK_HEADER;
  611. typedef struct _WIA_DATA_CALLBACK_HEADER *PWIA_DATA_CALLBACK_HEADER;
  612. extern RPC_IF_HANDLE __MIDL_itf_wia_0121_v0_0_c_ifspec;
  613. extern RPC_IF_HANDLE __MIDL_itf_wia_0121_v0_0_s_ifspec;
  614. #ifndef __IWiaDataCallback_INTERFACE_DEFINED__
  615. #define __IWiaDataCallback_INTERFACE_DEFINED__
  616. /* interface IWiaDataCallback */
  617. /* [unique][helpstring][uuid][object] */
  618. EXTERN_C const IID IID_IWiaDataCallback;
  619. #if defined(__cplusplus) && !defined(CINTERFACE)
  620. MIDL_INTERFACE("a558a866-a5b0-11d2-a08f-00c04f72dc3c")
  621. IWiaDataCallback : public IUnknown
  622. {
  623. public:
  624. virtual /* [local] */ HRESULT STDMETHODCALLTYPE BandedDataCallback(
  625. /* [in] */ LONG lMessage,
  626. /* [in] */ LONG lStatus,
  627. /* [in] */ LONG lPercentComplete,
  628. /* [in] */ LONG lOffset,
  629. /* [in] */ LONG lLength,
  630. /* [in] */ LONG lReserved,
  631. /* [in] */ LONG lResLength,
  632. /* [size_is][in] */ BYTE *pbBuffer) = 0;
  633. };
  634. #else /* C style interface */
  635. typedef struct IWiaDataCallbackVtbl
  636. {
  637. BEGIN_INTERFACE
  638. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  639. IWiaDataCallback * This,
  640. /* [in] */ REFIID riid,
  641. /* [iid_is][out] */ void **ppvObject);
  642. ULONG ( STDMETHODCALLTYPE *AddRef )(
  643. IWiaDataCallback * This);
  644. ULONG ( STDMETHODCALLTYPE *Release )(
  645. IWiaDataCallback * This);
  646. /* [local] */ HRESULT ( STDMETHODCALLTYPE *BandedDataCallback )(
  647. IWiaDataCallback * This,
  648. /* [in] */ LONG lMessage,
  649. /* [in] */ LONG lStatus,
  650. /* [in] */ LONG lPercentComplete,
  651. /* [in] */ LONG lOffset,
  652. /* [in] */ LONG lLength,
  653. /* [in] */ LONG lReserved,
  654. /* [in] */ LONG lResLength,
  655. /* [size_is][in] */ BYTE *pbBuffer);
  656. END_INTERFACE
  657. } IWiaDataCallbackVtbl;
  658. interface IWiaDataCallback
  659. {
  660. CONST_VTBL struct IWiaDataCallbackVtbl *lpVtbl;
  661. };
  662. #ifdef COBJMACROS
  663. #define IWiaDataCallback_QueryInterface(This,riid,ppvObject) \
  664. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  665. #define IWiaDataCallback_AddRef(This) \
  666. (This)->lpVtbl -> AddRef(This)
  667. #define IWiaDataCallback_Release(This) \
  668. (This)->lpVtbl -> Release(This)
  669. #define IWiaDataCallback_BandedDataCallback(This,lMessage,lStatus,lPercentComplete,lOffset,lLength,lReserved,lResLength,pbBuffer) \
  670. (This)->lpVtbl -> BandedDataCallback(This,lMessage,lStatus,lPercentComplete,lOffset,lLength,lReserved,lResLength,pbBuffer)
  671. #endif /* COBJMACROS */
  672. #endif /* C style interface */
  673. /* [helpstring][call_as] */ HRESULT STDMETHODCALLTYPE IWiaDataCallback_RemoteBandedDataCallback_Proxy(
  674. IWiaDataCallback * This,
  675. /* [in] */ LONG lMessage,
  676. /* [in] */ LONG lStatus,
  677. /* [in] */ LONG lPercentComplete,
  678. /* [in] */ LONG lOffset,
  679. /* [in] */ LONG lLength,
  680. /* [in] */ LONG lReserved,
  681. /* [in] */ LONG lResLength,
  682. /* [unique][size_is][in] */ BYTE *pbBuffer);
  683. void __RPC_STUB IWiaDataCallback_RemoteBandedDataCallback_Stub(
  684. IRpcStubBuffer *This,
  685. IRpcChannelBuffer *_pRpcChannelBuffer,
  686. PRPC_MESSAGE _pRpcMessage,
  687. DWORD *_pdwStubPhase);
  688. #endif /* __IWiaDataCallback_INTERFACE_DEFINED__ */
  689. /* interface __MIDL_itf_wia_0122 */
  690. /* [local] */
  691. typedef struct _WIA_DATA_TRANSFER_INFO
  692. {
  693. ULONG ulSize;
  694. ULONG ulSection;
  695. ULONG ulBufferSize;
  696. BOOL bDoubleBuffer;
  697. ULONG ulReserved1;
  698. ULONG ulReserved2;
  699. ULONG ulReserved3;
  700. } WIA_DATA_TRANSFER_INFO;
  701. typedef struct _WIA_DATA_TRANSFER_INFO *PWIA_DATA_TRANSFER_INFO;
  702. typedef struct _WIA_EXTENDED_TRANSFER_INFO
  703. {
  704. ULONG ulSize;
  705. ULONG ulMinBufferSize;
  706. ULONG ulOptimalBufferSize;
  707. ULONG ulMaxBufferSize;
  708. ULONG ulNumBuffers;
  709. } WIA_EXTENDED_TRANSFER_INFO;
  710. typedef struct _WIA_EXTENDED_TRANSFER_INFO *PWIA_EXTENDED_TRANSFER_INFO;
  711. extern RPC_IF_HANDLE __MIDL_itf_wia_0122_v0_0_c_ifspec;
  712. extern RPC_IF_HANDLE __MIDL_itf_wia_0122_v0_0_s_ifspec;
  713. #ifndef __IWiaDataTransfer_INTERFACE_DEFINED__
  714. #define __IWiaDataTransfer_INTERFACE_DEFINED__
  715. /* interface IWiaDataTransfer */
  716. /* [unique][helpstring][uuid][object] */
  717. EXTERN_C const IID IID_IWiaDataTransfer;
  718. #if defined(__cplusplus) && !defined(CINTERFACE)
  719. MIDL_INTERFACE("a6cef998-a5b0-11d2-a08f-00c04f72dc3c")
  720. IWiaDataTransfer : public IUnknown
  721. {
  722. public:
  723. virtual /* [local] */ HRESULT STDMETHODCALLTYPE idtGetData(
  724. /* [out][in] */ LPSTGMEDIUM pMedium,
  725. /* [unique][in] */ IWiaDataCallback *pIWiaDataCallback) = 0;
  726. virtual /* [local] */ HRESULT STDMETHODCALLTYPE idtGetBandedData(
  727. /* [unique][in] */ PWIA_DATA_TRANSFER_INFO pWiaDataTransInfo,
  728. /* [unique][in] */ IWiaDataCallback *pIWiaDataCallback) = 0;
  729. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE idtQueryGetData(
  730. /* [unique][in] */ WIA_FORMAT_INFO *pfe) = 0;
  731. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE idtEnumWIA_FORMAT_INFO(
  732. /* [out] */ IEnumWIA_FORMAT_INFO **ppEnum) = 0;
  733. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE idtGetExtendedTransferInfo(
  734. /* [out] */ PWIA_EXTENDED_TRANSFER_INFO pExtendedTransferInfo) = 0;
  735. };
  736. #else /* C style interface */
  737. typedef struct IWiaDataTransferVtbl
  738. {
  739. BEGIN_INTERFACE
  740. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  741. IWiaDataTransfer * This,
  742. /* [in] */ REFIID riid,
  743. /* [iid_is][out] */ void **ppvObject);
  744. ULONG ( STDMETHODCALLTYPE *AddRef )(
  745. IWiaDataTransfer * This);
  746. ULONG ( STDMETHODCALLTYPE *Release )(
  747. IWiaDataTransfer * This);
  748. /* [local] */ HRESULT ( STDMETHODCALLTYPE *idtGetData )(
  749. IWiaDataTransfer * This,
  750. /* [out][in] */ LPSTGMEDIUM pMedium,
  751. /* [unique][in] */ IWiaDataCallback *pIWiaDataCallback);
  752. /* [local] */ HRESULT ( STDMETHODCALLTYPE *idtGetBandedData )(
  753. IWiaDataTransfer * This,
  754. /* [unique][in] */ PWIA_DATA_TRANSFER_INFO pWiaDataTransInfo,
  755. /* [unique][in] */ IWiaDataCallback *pIWiaDataCallback);
  756. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *idtQueryGetData )(
  757. IWiaDataTransfer * This,
  758. /* [unique][in] */ WIA_FORMAT_INFO *pfe);
  759. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *idtEnumWIA_FORMAT_INFO )(
  760. IWiaDataTransfer * This,
  761. /* [out] */ IEnumWIA_FORMAT_INFO **ppEnum);
  762. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *idtGetExtendedTransferInfo )(
  763. IWiaDataTransfer * This,
  764. /* [out] */ PWIA_EXTENDED_TRANSFER_INFO pExtendedTransferInfo);
  765. END_INTERFACE
  766. } IWiaDataTransferVtbl;
  767. interface IWiaDataTransfer
  768. {
  769. CONST_VTBL struct IWiaDataTransferVtbl *lpVtbl;
  770. };
  771. #ifdef COBJMACROS
  772. #define IWiaDataTransfer_QueryInterface(This,riid,ppvObject) \
  773. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  774. #define IWiaDataTransfer_AddRef(This) \
  775. (This)->lpVtbl -> AddRef(This)
  776. #define IWiaDataTransfer_Release(This) \
  777. (This)->lpVtbl -> Release(This)
  778. #define IWiaDataTransfer_idtGetData(This,pMedium,pIWiaDataCallback) \
  779. (This)->lpVtbl -> idtGetData(This,pMedium,pIWiaDataCallback)
  780. #define IWiaDataTransfer_idtGetBandedData(This,pWiaDataTransInfo,pIWiaDataCallback) \
  781. (This)->lpVtbl -> idtGetBandedData(This,pWiaDataTransInfo,pIWiaDataCallback)
  782. #define IWiaDataTransfer_idtQueryGetData(This,pfe) \
  783. (This)->lpVtbl -> idtQueryGetData(This,pfe)
  784. #define IWiaDataTransfer_idtEnumWIA_FORMAT_INFO(This,ppEnum) \
  785. (This)->lpVtbl -> idtEnumWIA_FORMAT_INFO(This,ppEnum)
  786. #define IWiaDataTransfer_idtGetExtendedTransferInfo(This,pExtendedTransferInfo) \
  787. (This)->lpVtbl -> idtGetExtendedTransferInfo(This,pExtendedTransferInfo)
  788. #endif /* COBJMACROS */
  789. #endif /* C style interface */
  790. /* [helpstring][call_as] */ HRESULT STDMETHODCALLTYPE IWiaDataTransfer_idtGetDataEx_Proxy(
  791. IWiaDataTransfer * This,
  792. /* [out][in] */ LPSTGMEDIUM pMedium,
  793. /* [unique][in] */ IWiaDataCallback *pIWiaDataCallback);
  794. void __RPC_STUB IWiaDataTransfer_idtGetDataEx_Stub(
  795. IRpcStubBuffer *This,
  796. IRpcChannelBuffer *_pRpcChannelBuffer,
  797. PRPC_MESSAGE _pRpcMessage,
  798. DWORD *_pdwStubPhase);
  799. /* [helpstring][call_as] */ HRESULT STDMETHODCALLTYPE IWiaDataTransfer_idtGetBandedDataEx_Proxy(
  800. IWiaDataTransfer * This,
  801. /* [unique][in] */ PWIA_DATA_TRANSFER_INFO pWiaDataTransInfo,
  802. /* [unique][in] */ IWiaDataCallback *pIWiaDataCallback);
  803. void __RPC_STUB IWiaDataTransfer_idtGetBandedDataEx_Stub(
  804. IRpcStubBuffer *This,
  805. IRpcChannelBuffer *_pRpcChannelBuffer,
  806. PRPC_MESSAGE _pRpcMessage,
  807. DWORD *_pdwStubPhase);
  808. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaDataTransfer_idtQueryGetData_Proxy(
  809. IWiaDataTransfer * This,
  810. /* [unique][in] */ WIA_FORMAT_INFO *pfe);
  811. void __RPC_STUB IWiaDataTransfer_idtQueryGetData_Stub(
  812. IRpcStubBuffer *This,
  813. IRpcChannelBuffer *_pRpcChannelBuffer,
  814. PRPC_MESSAGE _pRpcMessage,
  815. DWORD *_pdwStubPhase);
  816. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaDataTransfer_idtEnumWIA_FORMAT_INFO_Proxy(
  817. IWiaDataTransfer * This,
  818. /* [out] */ IEnumWIA_FORMAT_INFO **ppEnum);
  819. void __RPC_STUB IWiaDataTransfer_idtEnumWIA_FORMAT_INFO_Stub(
  820. IRpcStubBuffer *This,
  821. IRpcChannelBuffer *_pRpcChannelBuffer,
  822. PRPC_MESSAGE _pRpcMessage,
  823. DWORD *_pdwStubPhase);
  824. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaDataTransfer_idtGetExtendedTransferInfo_Proxy(
  825. IWiaDataTransfer * This,
  826. /* [out] */ PWIA_EXTENDED_TRANSFER_INFO pExtendedTransferInfo);
  827. void __RPC_STUB IWiaDataTransfer_idtGetExtendedTransferInfo_Stub(
  828. IRpcStubBuffer *This,
  829. IRpcChannelBuffer *_pRpcChannelBuffer,
  830. PRPC_MESSAGE _pRpcMessage,
  831. DWORD *_pdwStubPhase);
  832. #endif /* __IWiaDataTransfer_INTERFACE_DEFINED__ */
  833. #ifndef __IWiaItem_INTERFACE_DEFINED__
  834. #define __IWiaItem_INTERFACE_DEFINED__
  835. /* interface IWiaItem */
  836. /* [unique][helpstring][uuid][object] */
  837. EXTERN_C const IID IID_IWiaItem;
  838. #if defined(__cplusplus) && !defined(CINTERFACE)
  839. MIDL_INTERFACE("4db1ad10-3391-11d2-9a33-00c04fa36145")
  840. IWiaItem : public IUnknown
  841. {
  842. public:
  843. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetItemType(
  844. /* [out] */ LONG *pItemType) = 0;
  845. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE AnalyzeItem(
  846. /* [in] */ LONG lFlags) = 0;
  847. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE EnumChildItems(
  848. /* [out] */ IEnumWiaItem **ppIEnumWiaItem) = 0;
  849. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE DeleteItem(
  850. /* [in] */ LONG lFlags) = 0;
  851. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE CreateChildItem(
  852. /* [in] */ LONG lFlags,
  853. /* [in] */ BSTR bstrItemName,
  854. /* [in] */ BSTR bstrFullItemName,
  855. /* [out] */ IWiaItem **ppIWiaItem) = 0;
  856. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE EnumRegisterEventInfo(
  857. /* [in] */ LONG lFlags,
  858. /* [in] */ const GUID *pEventGUID,
  859. /* [out] */ IEnumWIA_DEV_CAPS **ppIEnum) = 0;
  860. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE FindItemByName(
  861. /* [in] */ LONG lFlags,
  862. /* [in] */ BSTR bstrFullItemName,
  863. /* [out] */ IWiaItem **ppIWiaItem) = 0;
  864. virtual /* [local] */ HRESULT STDMETHODCALLTYPE DeviceDlg(
  865. /* [in] */ HWND hwndParent,
  866. /* [in] */ LONG lFlags,
  867. /* [in] */ LONG lIntent,
  868. /* [out] */ LONG *plItemCount,
  869. /* [out] */ IWiaItem ***ppIWiaItem) = 0;
  870. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE DeviceCommand(
  871. /* [in] */ LONG lFlags,
  872. /* [in] */ const GUID *pCmdGUID,
  873. /* [out][in] */ IWiaItem **pIWiaItem) = 0;
  874. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetRootItem(
  875. /* [out] */ IWiaItem **ppIWiaItem) = 0;
  876. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE EnumDeviceCapabilities(
  877. /* [in] */ LONG lFlags,
  878. /* [out] */ IEnumWIA_DEV_CAPS **ppIEnumWIA_DEV_CAPS) = 0;
  879. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE DumpItemData(
  880. /* [out] */ BSTR *bstrData) = 0;
  881. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE DumpDrvItemData(
  882. /* [out] */ BSTR *bstrData) = 0;
  883. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE DumpTreeItemData(
  884. /* [out] */ BSTR *bstrData) = 0;
  885. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Diagnostic(
  886. /* [in] */ ULONG ulSize,
  887. /* [size_is][in] */ BYTE *pBuffer) = 0;
  888. };
  889. #else /* C style interface */
  890. typedef struct IWiaItemVtbl
  891. {
  892. BEGIN_INTERFACE
  893. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  894. IWiaItem * This,
  895. /* [in] */ REFIID riid,
  896. /* [iid_is][out] */ void **ppvObject);
  897. ULONG ( STDMETHODCALLTYPE *AddRef )(
  898. IWiaItem * This);
  899. ULONG ( STDMETHODCALLTYPE *Release )(
  900. IWiaItem * This);
  901. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetItemType )(
  902. IWiaItem * This,
  903. /* [out] */ LONG *pItemType);
  904. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *AnalyzeItem )(
  905. IWiaItem * This,
  906. /* [in] */ LONG lFlags);
  907. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *EnumChildItems )(
  908. IWiaItem * This,
  909. /* [out] */ IEnumWiaItem **ppIEnumWiaItem);
  910. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *DeleteItem )(
  911. IWiaItem * This,
  912. /* [in] */ LONG lFlags);
  913. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *CreateChildItem )(
  914. IWiaItem * This,
  915. /* [in] */ LONG lFlags,
  916. /* [in] */ BSTR bstrItemName,
  917. /* [in] */ BSTR bstrFullItemName,
  918. /* [out] */ IWiaItem **ppIWiaItem);
  919. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *EnumRegisterEventInfo )(
  920. IWiaItem * This,
  921. /* [in] */ LONG lFlags,
  922. /* [in] */ const GUID *pEventGUID,
  923. /* [out] */ IEnumWIA_DEV_CAPS **ppIEnum);
  924. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *FindItemByName )(
  925. IWiaItem * This,
  926. /* [in] */ LONG lFlags,
  927. /* [in] */ BSTR bstrFullItemName,
  928. /* [out] */ IWiaItem **ppIWiaItem);
  929. /* [local] */ HRESULT ( STDMETHODCALLTYPE *DeviceDlg )(
  930. IWiaItem * This,
  931. /* [in] */ HWND hwndParent,
  932. /* [in] */ LONG lFlags,
  933. /* [in] */ LONG lIntent,
  934. /* [out] */ LONG *plItemCount,
  935. /* [out] */ IWiaItem ***ppIWiaItem);
  936. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *DeviceCommand )(
  937. IWiaItem * This,
  938. /* [in] */ LONG lFlags,
  939. /* [in] */ const GUID *pCmdGUID,
  940. /* [out][in] */ IWiaItem **pIWiaItem);
  941. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetRootItem )(
  942. IWiaItem * This,
  943. /* [out] */ IWiaItem **ppIWiaItem);
  944. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *EnumDeviceCapabilities )(
  945. IWiaItem * This,
  946. /* [in] */ LONG lFlags,
  947. /* [out] */ IEnumWIA_DEV_CAPS **ppIEnumWIA_DEV_CAPS);
  948. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *DumpItemData )(
  949. IWiaItem * This,
  950. /* [out] */ BSTR *bstrData);
  951. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *DumpDrvItemData )(
  952. IWiaItem * This,
  953. /* [out] */ BSTR *bstrData);
  954. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *DumpTreeItemData )(
  955. IWiaItem * This,
  956. /* [out] */ BSTR *bstrData);
  957. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Diagnostic )(
  958. IWiaItem * This,
  959. /* [in] */ ULONG ulSize,
  960. /* [size_is][in] */ BYTE *pBuffer);
  961. END_INTERFACE
  962. } IWiaItemVtbl;
  963. interface IWiaItem
  964. {
  965. CONST_VTBL struct IWiaItemVtbl *lpVtbl;
  966. };
  967. #ifdef COBJMACROS
  968. #define IWiaItem_QueryInterface(This,riid,ppvObject) \
  969. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  970. #define IWiaItem_AddRef(This) \
  971. (This)->lpVtbl -> AddRef(This)
  972. #define IWiaItem_Release(This) \
  973. (This)->lpVtbl -> Release(This)
  974. #define IWiaItem_GetItemType(This,pItemType) \
  975. (This)->lpVtbl -> GetItemType(This,pItemType)
  976. #define IWiaItem_AnalyzeItem(This,lFlags) \
  977. (This)->lpVtbl -> AnalyzeItem(This,lFlags)
  978. #define IWiaItem_EnumChildItems(This,ppIEnumWiaItem) \
  979. (This)->lpVtbl -> EnumChildItems(This,ppIEnumWiaItem)
  980. #define IWiaItem_DeleteItem(This,lFlags) \
  981. (This)->lpVtbl -> DeleteItem(This,lFlags)
  982. #define IWiaItem_CreateChildItem(This,lFlags,bstrItemName,bstrFullItemName,ppIWiaItem) \
  983. (This)->lpVtbl -> CreateChildItem(This,lFlags,bstrItemName,bstrFullItemName,ppIWiaItem)
  984. #define IWiaItem_EnumRegisterEventInfo(This,lFlags,pEventGUID,ppIEnum) \
  985. (This)->lpVtbl -> EnumRegisterEventInfo(This,lFlags,pEventGUID,ppIEnum)
  986. #define IWiaItem_FindItemByName(This,lFlags,bstrFullItemName,ppIWiaItem) \
  987. (This)->lpVtbl -> FindItemByName(This,lFlags,bstrFullItemName,ppIWiaItem)
  988. #define IWiaItem_DeviceDlg(This,hwndParent,lFlags,lIntent,plItemCount,ppIWiaItem) \
  989. (This)->lpVtbl -> DeviceDlg(This,hwndParent,lFlags,lIntent,plItemCount,ppIWiaItem)
  990. #define IWiaItem_DeviceCommand(This,lFlags,pCmdGUID,pIWiaItem) \
  991. (This)->lpVtbl -> DeviceCommand(This,lFlags,pCmdGUID,pIWiaItem)
  992. #define IWiaItem_GetRootItem(This,ppIWiaItem) \
  993. (This)->lpVtbl -> GetRootItem(This,ppIWiaItem)
  994. #define IWiaItem_EnumDeviceCapabilities(This,lFlags,ppIEnumWIA_DEV_CAPS) \
  995. (This)->lpVtbl -> EnumDeviceCapabilities(This,lFlags,ppIEnumWIA_DEV_CAPS)
  996. #define IWiaItem_DumpItemData(This,bstrData) \
  997. (This)->lpVtbl -> DumpItemData(This,bstrData)
  998. #define IWiaItem_DumpDrvItemData(This,bstrData) \
  999. (This)->lpVtbl -> DumpDrvItemData(This,bstrData)
  1000. #define IWiaItem_DumpTreeItemData(This,bstrData) \
  1001. (This)->lpVtbl -> DumpTreeItemData(This,bstrData)
  1002. #define IWiaItem_Diagnostic(This,ulSize,pBuffer) \
  1003. (This)->lpVtbl -> Diagnostic(This,ulSize,pBuffer)
  1004. #endif /* COBJMACROS */
  1005. #endif /* C style interface */
  1006. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaItem_GetItemType_Proxy(
  1007. IWiaItem * This,
  1008. /* [out] */ LONG *pItemType);
  1009. void __RPC_STUB IWiaItem_GetItemType_Stub(
  1010. IRpcStubBuffer *This,
  1011. IRpcChannelBuffer *_pRpcChannelBuffer,
  1012. PRPC_MESSAGE _pRpcMessage,
  1013. DWORD *_pdwStubPhase);
  1014. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaItem_AnalyzeItem_Proxy(
  1015. IWiaItem * This,
  1016. /* [in] */ LONG lFlags);
  1017. void __RPC_STUB IWiaItem_AnalyzeItem_Stub(
  1018. IRpcStubBuffer *This,
  1019. IRpcChannelBuffer *_pRpcChannelBuffer,
  1020. PRPC_MESSAGE _pRpcMessage,
  1021. DWORD *_pdwStubPhase);
  1022. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaItem_EnumChildItems_Proxy(
  1023. IWiaItem * This,
  1024. /* [out] */ IEnumWiaItem **ppIEnumWiaItem);
  1025. void __RPC_STUB IWiaItem_EnumChildItems_Stub(
  1026. IRpcStubBuffer *This,
  1027. IRpcChannelBuffer *_pRpcChannelBuffer,
  1028. PRPC_MESSAGE _pRpcMessage,
  1029. DWORD *_pdwStubPhase);
  1030. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaItem_DeleteItem_Proxy(
  1031. IWiaItem * This,
  1032. /* [in] */ LONG lFlags);
  1033. void __RPC_STUB IWiaItem_DeleteItem_Stub(
  1034. IRpcStubBuffer *This,
  1035. IRpcChannelBuffer *_pRpcChannelBuffer,
  1036. PRPC_MESSAGE _pRpcMessage,
  1037. DWORD *_pdwStubPhase);
  1038. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaItem_CreateChildItem_Proxy(
  1039. IWiaItem * This,
  1040. /* [in] */ LONG lFlags,
  1041. /* [in] */ BSTR bstrItemName,
  1042. /* [in] */ BSTR bstrFullItemName,
  1043. /* [out] */ IWiaItem **ppIWiaItem);
  1044. void __RPC_STUB IWiaItem_CreateChildItem_Stub(
  1045. IRpcStubBuffer *This,
  1046. IRpcChannelBuffer *_pRpcChannelBuffer,
  1047. PRPC_MESSAGE _pRpcMessage,
  1048. DWORD *_pdwStubPhase);
  1049. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaItem_EnumRegisterEventInfo_Proxy(
  1050. IWiaItem * This,
  1051. /* [in] */ LONG lFlags,
  1052. /* [in] */ const GUID *pEventGUID,
  1053. /* [out] */ IEnumWIA_DEV_CAPS **ppIEnum);
  1054. void __RPC_STUB IWiaItem_EnumRegisterEventInfo_Stub(
  1055. IRpcStubBuffer *This,
  1056. IRpcChannelBuffer *_pRpcChannelBuffer,
  1057. PRPC_MESSAGE _pRpcMessage,
  1058. DWORD *_pdwStubPhase);
  1059. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaItem_FindItemByName_Proxy(
  1060. IWiaItem * This,
  1061. /* [in] */ LONG lFlags,
  1062. /* [in] */ BSTR bstrFullItemName,
  1063. /* [out] */ IWiaItem **ppIWiaItem);
  1064. void __RPC_STUB IWiaItem_FindItemByName_Stub(
  1065. IRpcStubBuffer *This,
  1066. IRpcChannelBuffer *_pRpcChannelBuffer,
  1067. PRPC_MESSAGE _pRpcMessage,
  1068. DWORD *_pdwStubPhase);
  1069. /* [nocode][helpstring][call_as] */ HRESULT STDMETHODCALLTYPE IWiaItem_LocalDeviceDlg_Proxy(
  1070. IWiaItem * This,
  1071. /* [in] */ HWND hwndParent,
  1072. /* [in] */ LONG lFlags,
  1073. /* [in] */ LONG lIntent,
  1074. /* [out] */ LONG *plItemCount,
  1075. /* [out] */ IWiaItem ***pIWiaItem);
  1076. void __RPC_STUB IWiaItem_LocalDeviceDlg_Stub(
  1077. IRpcStubBuffer *This,
  1078. IRpcChannelBuffer *_pRpcChannelBuffer,
  1079. PRPC_MESSAGE _pRpcMessage,
  1080. DWORD *_pdwStubPhase);
  1081. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaItem_DeviceCommand_Proxy(
  1082. IWiaItem * This,
  1083. /* [in] */ LONG lFlags,
  1084. /* [in] */ const GUID *pCmdGUID,
  1085. /* [out][in] */ IWiaItem **pIWiaItem);
  1086. void __RPC_STUB IWiaItem_DeviceCommand_Stub(
  1087. IRpcStubBuffer *This,
  1088. IRpcChannelBuffer *_pRpcChannelBuffer,
  1089. PRPC_MESSAGE _pRpcMessage,
  1090. DWORD *_pdwStubPhase);
  1091. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaItem_GetRootItem_Proxy(
  1092. IWiaItem * This,
  1093. /* [out] */ IWiaItem **ppIWiaItem);
  1094. void __RPC_STUB IWiaItem_GetRootItem_Stub(
  1095. IRpcStubBuffer *This,
  1096. IRpcChannelBuffer *_pRpcChannelBuffer,
  1097. PRPC_MESSAGE _pRpcMessage,
  1098. DWORD *_pdwStubPhase);
  1099. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaItem_EnumDeviceCapabilities_Proxy(
  1100. IWiaItem * This,
  1101. /* [in] */ LONG lFlags,
  1102. /* [out] */ IEnumWIA_DEV_CAPS **ppIEnumWIA_DEV_CAPS);
  1103. void __RPC_STUB IWiaItem_EnumDeviceCapabilities_Stub(
  1104. IRpcStubBuffer *This,
  1105. IRpcChannelBuffer *_pRpcChannelBuffer,
  1106. PRPC_MESSAGE _pRpcMessage,
  1107. DWORD *_pdwStubPhase);
  1108. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaItem_DumpItemData_Proxy(
  1109. IWiaItem * This,
  1110. /* [out] */ BSTR *bstrData);
  1111. void __RPC_STUB IWiaItem_DumpItemData_Stub(
  1112. IRpcStubBuffer *This,
  1113. IRpcChannelBuffer *_pRpcChannelBuffer,
  1114. PRPC_MESSAGE _pRpcMessage,
  1115. DWORD *_pdwStubPhase);
  1116. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaItem_DumpDrvItemData_Proxy(
  1117. IWiaItem * This,
  1118. /* [out] */ BSTR *bstrData);
  1119. void __RPC_STUB IWiaItem_DumpDrvItemData_Stub(
  1120. IRpcStubBuffer *This,
  1121. IRpcChannelBuffer *_pRpcChannelBuffer,
  1122. PRPC_MESSAGE _pRpcMessage,
  1123. DWORD *_pdwStubPhase);
  1124. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaItem_DumpTreeItemData_Proxy(
  1125. IWiaItem * This,
  1126. /* [out] */ BSTR *bstrData);
  1127. void __RPC_STUB IWiaItem_DumpTreeItemData_Stub(
  1128. IRpcStubBuffer *This,
  1129. IRpcChannelBuffer *_pRpcChannelBuffer,
  1130. PRPC_MESSAGE _pRpcMessage,
  1131. DWORD *_pdwStubPhase);
  1132. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaItem_Diagnostic_Proxy(
  1133. IWiaItem * This,
  1134. /* [in] */ ULONG ulSize,
  1135. /* [size_is][in] */ BYTE *pBuffer);
  1136. void __RPC_STUB IWiaItem_Diagnostic_Stub(
  1137. IRpcStubBuffer *This,
  1138. IRpcChannelBuffer *_pRpcChannelBuffer,
  1139. PRPC_MESSAGE _pRpcMessage,
  1140. DWORD *_pdwStubPhase);
  1141. #endif /* __IWiaItem_INTERFACE_DEFINED__ */
  1142. #ifndef __IWiaPropertyStorage_INTERFACE_DEFINED__
  1143. #define __IWiaPropertyStorage_INTERFACE_DEFINED__
  1144. /* interface IWiaPropertyStorage */
  1145. /* [unique][helpstring][uuid][object] */
  1146. EXTERN_C const IID IID_IWiaPropertyStorage;
  1147. #if defined(__cplusplus) && !defined(CINTERFACE)
  1148. MIDL_INTERFACE("98B5E8A0-29CC-491a-AAC0-E6DB4FDCCEB6")
  1149. IWiaPropertyStorage : public IUnknown
  1150. {
  1151. public:
  1152. virtual HRESULT STDMETHODCALLTYPE ReadMultiple(
  1153. /* [in] */ ULONG cpspec,
  1154. /* [size_is][in] */ const PROPSPEC rgpspec[ ],
  1155. /* [size_is][out] */ PROPVARIANT rgpropvar[ ]) = 0;
  1156. virtual HRESULT STDMETHODCALLTYPE WriteMultiple(
  1157. /* [in] */ ULONG cpspec,
  1158. /* [size_is][in] */ const PROPSPEC rgpspec[ ],
  1159. /* [size_is][in] */ const PROPVARIANT rgpropvar[ ],
  1160. /* [in] */ PROPID propidNameFirst) = 0;
  1161. virtual HRESULT STDMETHODCALLTYPE DeleteMultiple(
  1162. /* [in] */ ULONG cpspec,
  1163. /* [size_is][in] */ const PROPSPEC rgpspec[ ]) = 0;
  1164. virtual HRESULT STDMETHODCALLTYPE ReadPropertyNames(
  1165. /* [in] */ ULONG cpropid,
  1166. /* [size_is][in] */ const PROPID rgpropid[ ],
  1167. /* [size_is][out] */ LPOLESTR rglpwstrName[ ]) = 0;
  1168. virtual HRESULT STDMETHODCALLTYPE WritePropertyNames(
  1169. /* [in] */ ULONG cpropid,
  1170. /* [size_is][in] */ const PROPID rgpropid[ ],
  1171. /* [size_is][in] */ const LPOLESTR rglpwstrName[ ]) = 0;
  1172. virtual HRESULT STDMETHODCALLTYPE DeletePropertyNames(
  1173. /* [in] */ ULONG cpropid,
  1174. /* [size_is][in] */ const PROPID rgpropid[ ]) = 0;
  1175. virtual HRESULT STDMETHODCALLTYPE Commit(
  1176. /* [in] */ DWORD grfCommitFlags) = 0;
  1177. virtual HRESULT STDMETHODCALLTYPE Revert( void) = 0;
  1178. virtual HRESULT STDMETHODCALLTYPE Enum(
  1179. /* [out] */ IEnumSTATPROPSTG **ppenum) = 0;
  1180. virtual HRESULT STDMETHODCALLTYPE SetTimes(
  1181. /* [in] */ const FILETIME *pctime,
  1182. /* [in] */ const FILETIME *patime,
  1183. /* [in] */ const FILETIME *pmtime) = 0;
  1184. virtual HRESULT STDMETHODCALLTYPE SetClass(
  1185. /* [in] */ REFCLSID clsid) = 0;
  1186. virtual HRESULT STDMETHODCALLTYPE Stat(
  1187. /* [out] */ STATPROPSETSTG *pstatpsstg) = 0;
  1188. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetPropertyAttributes(
  1189. /* [in] */ ULONG cpspec,
  1190. /* [size_is][in] */ PROPSPEC rgpspec[ ],
  1191. /* [size_is][out] */ ULONG rgflags[ ],
  1192. /* [size_is][out] */ PROPVARIANT rgpropvar[ ]) = 0;
  1193. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetCount(
  1194. /* [out] */ ULONG *pulNumProps) = 0;
  1195. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetPropertyStream(
  1196. /* [out] */ GUID *pCompatibilityId,
  1197. /* [out] */ IStream **ppIStream) = 0;
  1198. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SetPropertyStream(
  1199. /* [in] */ GUID *pCompatibilityId,
  1200. /* [unique][in] */ IStream *pIStream) = 0;
  1201. };
  1202. #else /* C style interface */
  1203. typedef struct IWiaPropertyStorageVtbl
  1204. {
  1205. BEGIN_INTERFACE
  1206. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1207. IWiaPropertyStorage * This,
  1208. /* [in] */ REFIID riid,
  1209. /* [iid_is][out] */ void **ppvObject);
  1210. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1211. IWiaPropertyStorage * This);
  1212. ULONG ( STDMETHODCALLTYPE *Release )(
  1213. IWiaPropertyStorage * This);
  1214. HRESULT ( STDMETHODCALLTYPE *ReadMultiple )(
  1215. IWiaPropertyStorage * This,
  1216. /* [in] */ ULONG cpspec,
  1217. /* [size_is][in] */ const PROPSPEC rgpspec[ ],
  1218. /* [size_is][out] */ PROPVARIANT rgpropvar[ ]);
  1219. HRESULT ( STDMETHODCALLTYPE *WriteMultiple )(
  1220. IWiaPropertyStorage * This,
  1221. /* [in] */ ULONG cpspec,
  1222. /* [size_is][in] */ const PROPSPEC rgpspec[ ],
  1223. /* [size_is][in] */ const PROPVARIANT rgpropvar[ ],
  1224. /* [in] */ PROPID propidNameFirst);
  1225. HRESULT ( STDMETHODCALLTYPE *DeleteMultiple )(
  1226. IWiaPropertyStorage * This,
  1227. /* [in] */ ULONG cpspec,
  1228. /* [size_is][in] */ const PROPSPEC rgpspec[ ]);
  1229. HRESULT ( STDMETHODCALLTYPE *ReadPropertyNames )(
  1230. IWiaPropertyStorage * This,
  1231. /* [in] */ ULONG cpropid,
  1232. /* [size_is][in] */ const PROPID rgpropid[ ],
  1233. /* [size_is][out] */ LPOLESTR rglpwstrName[ ]);
  1234. HRESULT ( STDMETHODCALLTYPE *WritePropertyNames )(
  1235. IWiaPropertyStorage * This,
  1236. /* [in] */ ULONG cpropid,
  1237. /* [size_is][in] */ const PROPID rgpropid[ ],
  1238. /* [size_is][in] */ const LPOLESTR rglpwstrName[ ]);
  1239. HRESULT ( STDMETHODCALLTYPE *DeletePropertyNames )(
  1240. IWiaPropertyStorage * This,
  1241. /* [in] */ ULONG cpropid,
  1242. /* [size_is][in] */ const PROPID rgpropid[ ]);
  1243. HRESULT ( STDMETHODCALLTYPE *Commit )(
  1244. IWiaPropertyStorage * This,
  1245. /* [in] */ DWORD grfCommitFlags);
  1246. HRESULT ( STDMETHODCALLTYPE *Revert )(
  1247. IWiaPropertyStorage * This);
  1248. HRESULT ( STDMETHODCALLTYPE *Enum )(
  1249. IWiaPropertyStorage * This,
  1250. /* [out] */ IEnumSTATPROPSTG **ppenum);
  1251. HRESULT ( STDMETHODCALLTYPE *SetTimes )(
  1252. IWiaPropertyStorage * This,
  1253. /* [in] */ const FILETIME *pctime,
  1254. /* [in] */ const FILETIME *patime,
  1255. /* [in] */ const FILETIME *pmtime);
  1256. HRESULT ( STDMETHODCALLTYPE *SetClass )(
  1257. IWiaPropertyStorage * This,
  1258. /* [in] */ REFCLSID clsid);
  1259. HRESULT ( STDMETHODCALLTYPE *Stat )(
  1260. IWiaPropertyStorage * This,
  1261. /* [out] */ STATPROPSETSTG *pstatpsstg);
  1262. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetPropertyAttributes )(
  1263. IWiaPropertyStorage * This,
  1264. /* [in] */ ULONG cpspec,
  1265. /* [size_is][in] */ PROPSPEC rgpspec[ ],
  1266. /* [size_is][out] */ ULONG rgflags[ ],
  1267. /* [size_is][out] */ PROPVARIANT rgpropvar[ ]);
  1268. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetCount )(
  1269. IWiaPropertyStorage * This,
  1270. /* [out] */ ULONG *pulNumProps);
  1271. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetPropertyStream )(
  1272. IWiaPropertyStorage * This,
  1273. /* [out] */ GUID *pCompatibilityId,
  1274. /* [out] */ IStream **ppIStream);
  1275. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetPropertyStream )(
  1276. IWiaPropertyStorage * This,
  1277. /* [in] */ GUID *pCompatibilityId,
  1278. /* [unique][in] */ IStream *pIStream);
  1279. END_INTERFACE
  1280. } IWiaPropertyStorageVtbl;
  1281. interface IWiaPropertyStorage
  1282. {
  1283. CONST_VTBL struct IWiaPropertyStorageVtbl *lpVtbl;
  1284. };
  1285. #ifdef COBJMACROS
  1286. #define IWiaPropertyStorage_QueryInterface(This,riid,ppvObject) \
  1287. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1288. #define IWiaPropertyStorage_AddRef(This) \
  1289. (This)->lpVtbl -> AddRef(This)
  1290. #define IWiaPropertyStorage_Release(This) \
  1291. (This)->lpVtbl -> Release(This)
  1292. #define IWiaPropertyStorage_ReadMultiple(This,cpspec,rgpspec,rgpropvar) \
  1293. (This)->lpVtbl -> ReadMultiple(This,cpspec,rgpspec,rgpropvar)
  1294. #define IWiaPropertyStorage_WriteMultiple(This,cpspec,rgpspec,rgpropvar,propidNameFirst) \
  1295. (This)->lpVtbl -> WriteMultiple(This,cpspec,rgpspec,rgpropvar,propidNameFirst)
  1296. #define IWiaPropertyStorage_DeleteMultiple(This,cpspec,rgpspec) \
  1297. (This)->lpVtbl -> DeleteMultiple(This,cpspec,rgpspec)
  1298. #define IWiaPropertyStorage_ReadPropertyNames(This,cpropid,rgpropid,rglpwstrName) \
  1299. (This)->lpVtbl -> ReadPropertyNames(This,cpropid,rgpropid,rglpwstrName)
  1300. #define IWiaPropertyStorage_WritePropertyNames(This,cpropid,rgpropid,rglpwstrName) \
  1301. (This)->lpVtbl -> WritePropertyNames(This,cpropid,rgpropid,rglpwstrName)
  1302. #define IWiaPropertyStorage_DeletePropertyNames(This,cpropid,rgpropid) \
  1303. (This)->lpVtbl -> DeletePropertyNames(This,cpropid,rgpropid)
  1304. #define IWiaPropertyStorage_Commit(This,grfCommitFlags) \
  1305. (This)->lpVtbl -> Commit(This,grfCommitFlags)
  1306. #define IWiaPropertyStorage_Revert(This) \
  1307. (This)->lpVtbl -> Revert(This)
  1308. #define IWiaPropertyStorage_Enum(This,ppenum) \
  1309. (This)->lpVtbl -> Enum(This,ppenum)
  1310. #define IWiaPropertyStorage_SetTimes(This,pctime,patime,pmtime) \
  1311. (This)->lpVtbl -> SetTimes(This,pctime,patime,pmtime)
  1312. #define IWiaPropertyStorage_SetClass(This,clsid) \
  1313. (This)->lpVtbl -> SetClass(This,clsid)
  1314. #define IWiaPropertyStorage_Stat(This,pstatpsstg) \
  1315. (This)->lpVtbl -> Stat(This,pstatpsstg)
  1316. #define IWiaPropertyStorage_GetPropertyAttributes(This,cpspec,rgpspec,rgflags,rgpropvar) \
  1317. (This)->lpVtbl -> GetPropertyAttributes(This,cpspec,rgpspec,rgflags,rgpropvar)
  1318. #define IWiaPropertyStorage_GetCount(This,pulNumProps) \
  1319. (This)->lpVtbl -> GetCount(This,pulNumProps)
  1320. #define IWiaPropertyStorage_GetPropertyStream(This,pCompatibilityId,ppIStream) \
  1321. (This)->lpVtbl -> GetPropertyStream(This,pCompatibilityId,ppIStream)
  1322. #define IWiaPropertyStorage_SetPropertyStream(This,pCompatibilityId,pIStream) \
  1323. (This)->lpVtbl -> SetPropertyStream(This,pCompatibilityId,pIStream)
  1324. #endif /* COBJMACROS */
  1325. #endif /* C style interface */
  1326. HRESULT STDMETHODCALLTYPE IWiaPropertyStorage_ReadMultiple_Proxy(
  1327. IWiaPropertyStorage * This,
  1328. /* [in] */ ULONG cpspec,
  1329. /* [size_is][in] */ const PROPSPEC rgpspec[ ],
  1330. /* [size_is][out] */ PROPVARIANT rgpropvar[ ]);
  1331. void __RPC_STUB IWiaPropertyStorage_ReadMultiple_Stub(
  1332. IRpcStubBuffer *This,
  1333. IRpcChannelBuffer *_pRpcChannelBuffer,
  1334. PRPC_MESSAGE _pRpcMessage,
  1335. DWORD *_pdwStubPhase);
  1336. HRESULT STDMETHODCALLTYPE IWiaPropertyStorage_WriteMultiple_Proxy(
  1337. IWiaPropertyStorage * This,
  1338. /* [in] */ ULONG cpspec,
  1339. /* [size_is][in] */ const PROPSPEC rgpspec[ ],
  1340. /* [size_is][in] */ const PROPVARIANT rgpropvar[ ],
  1341. /* [in] */ PROPID propidNameFirst);
  1342. void __RPC_STUB IWiaPropertyStorage_WriteMultiple_Stub(
  1343. IRpcStubBuffer *This,
  1344. IRpcChannelBuffer *_pRpcChannelBuffer,
  1345. PRPC_MESSAGE _pRpcMessage,
  1346. DWORD *_pdwStubPhase);
  1347. HRESULT STDMETHODCALLTYPE IWiaPropertyStorage_DeleteMultiple_Proxy(
  1348. IWiaPropertyStorage * This,
  1349. /* [in] */ ULONG cpspec,
  1350. /* [size_is][in] */ const PROPSPEC rgpspec[ ]);
  1351. void __RPC_STUB IWiaPropertyStorage_DeleteMultiple_Stub(
  1352. IRpcStubBuffer *This,
  1353. IRpcChannelBuffer *_pRpcChannelBuffer,
  1354. PRPC_MESSAGE _pRpcMessage,
  1355. DWORD *_pdwStubPhase);
  1356. HRESULT STDMETHODCALLTYPE IWiaPropertyStorage_ReadPropertyNames_Proxy(
  1357. IWiaPropertyStorage * This,
  1358. /* [in] */ ULONG cpropid,
  1359. /* [size_is][in] */ const PROPID rgpropid[ ],
  1360. /* [size_is][out] */ LPOLESTR rglpwstrName[ ]);
  1361. void __RPC_STUB IWiaPropertyStorage_ReadPropertyNames_Stub(
  1362. IRpcStubBuffer *This,
  1363. IRpcChannelBuffer *_pRpcChannelBuffer,
  1364. PRPC_MESSAGE _pRpcMessage,
  1365. DWORD *_pdwStubPhase);
  1366. HRESULT STDMETHODCALLTYPE IWiaPropertyStorage_WritePropertyNames_Proxy(
  1367. IWiaPropertyStorage * This,
  1368. /* [in] */ ULONG cpropid,
  1369. /* [size_is][in] */ const PROPID rgpropid[ ],
  1370. /* [size_is][in] */ const LPOLESTR rglpwstrName[ ]);
  1371. void __RPC_STUB IWiaPropertyStorage_WritePropertyNames_Stub(
  1372. IRpcStubBuffer *This,
  1373. IRpcChannelBuffer *_pRpcChannelBuffer,
  1374. PRPC_MESSAGE _pRpcMessage,
  1375. DWORD *_pdwStubPhase);
  1376. HRESULT STDMETHODCALLTYPE IWiaPropertyStorage_DeletePropertyNames_Proxy(
  1377. IWiaPropertyStorage * This,
  1378. /* [in] */ ULONG cpropid,
  1379. /* [size_is][in] */ const PROPID rgpropid[ ]);
  1380. void __RPC_STUB IWiaPropertyStorage_DeletePropertyNames_Stub(
  1381. IRpcStubBuffer *This,
  1382. IRpcChannelBuffer *_pRpcChannelBuffer,
  1383. PRPC_MESSAGE _pRpcMessage,
  1384. DWORD *_pdwStubPhase);
  1385. HRESULT STDMETHODCALLTYPE IWiaPropertyStorage_Commit_Proxy(
  1386. IWiaPropertyStorage * This,
  1387. /* [in] */ DWORD grfCommitFlags);
  1388. void __RPC_STUB IWiaPropertyStorage_Commit_Stub(
  1389. IRpcStubBuffer *This,
  1390. IRpcChannelBuffer *_pRpcChannelBuffer,
  1391. PRPC_MESSAGE _pRpcMessage,
  1392. DWORD *_pdwStubPhase);
  1393. HRESULT STDMETHODCALLTYPE IWiaPropertyStorage_Revert_Proxy(
  1394. IWiaPropertyStorage * This);
  1395. void __RPC_STUB IWiaPropertyStorage_Revert_Stub(
  1396. IRpcStubBuffer *This,
  1397. IRpcChannelBuffer *_pRpcChannelBuffer,
  1398. PRPC_MESSAGE _pRpcMessage,
  1399. DWORD *_pdwStubPhase);
  1400. HRESULT STDMETHODCALLTYPE IWiaPropertyStorage_Enum_Proxy(
  1401. IWiaPropertyStorage * This,
  1402. /* [out] */ IEnumSTATPROPSTG **ppenum);
  1403. void __RPC_STUB IWiaPropertyStorage_Enum_Stub(
  1404. IRpcStubBuffer *This,
  1405. IRpcChannelBuffer *_pRpcChannelBuffer,
  1406. PRPC_MESSAGE _pRpcMessage,
  1407. DWORD *_pdwStubPhase);
  1408. HRESULT STDMETHODCALLTYPE IWiaPropertyStorage_SetTimes_Proxy(
  1409. IWiaPropertyStorage * This,
  1410. /* [in] */ const FILETIME *pctime,
  1411. /* [in] */ const FILETIME *patime,
  1412. /* [in] */ const FILETIME *pmtime);
  1413. void __RPC_STUB IWiaPropertyStorage_SetTimes_Stub(
  1414. IRpcStubBuffer *This,
  1415. IRpcChannelBuffer *_pRpcChannelBuffer,
  1416. PRPC_MESSAGE _pRpcMessage,
  1417. DWORD *_pdwStubPhase);
  1418. HRESULT STDMETHODCALLTYPE IWiaPropertyStorage_SetClass_Proxy(
  1419. IWiaPropertyStorage * This,
  1420. /* [in] */ REFCLSID clsid);
  1421. void __RPC_STUB IWiaPropertyStorage_SetClass_Stub(
  1422. IRpcStubBuffer *This,
  1423. IRpcChannelBuffer *_pRpcChannelBuffer,
  1424. PRPC_MESSAGE _pRpcMessage,
  1425. DWORD *_pdwStubPhase);
  1426. HRESULT STDMETHODCALLTYPE IWiaPropertyStorage_Stat_Proxy(
  1427. IWiaPropertyStorage * This,
  1428. /* [out] */ STATPROPSETSTG *pstatpsstg);
  1429. void __RPC_STUB IWiaPropertyStorage_Stat_Stub(
  1430. IRpcStubBuffer *This,
  1431. IRpcChannelBuffer *_pRpcChannelBuffer,
  1432. PRPC_MESSAGE _pRpcMessage,
  1433. DWORD *_pdwStubPhase);
  1434. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaPropertyStorage_GetPropertyAttributes_Proxy(
  1435. IWiaPropertyStorage * This,
  1436. /* [in] */ ULONG cpspec,
  1437. /* [size_is][in] */ PROPSPEC rgpspec[ ],
  1438. /* [size_is][out] */ ULONG rgflags[ ],
  1439. /* [size_is][out] */ PROPVARIANT rgpropvar[ ]);
  1440. void __RPC_STUB IWiaPropertyStorage_GetPropertyAttributes_Stub(
  1441. IRpcStubBuffer *This,
  1442. IRpcChannelBuffer *_pRpcChannelBuffer,
  1443. PRPC_MESSAGE _pRpcMessage,
  1444. DWORD *_pdwStubPhase);
  1445. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaPropertyStorage_GetCount_Proxy(
  1446. IWiaPropertyStorage * This,
  1447. /* [out] */ ULONG *pulNumProps);
  1448. void __RPC_STUB IWiaPropertyStorage_GetCount_Stub(
  1449. IRpcStubBuffer *This,
  1450. IRpcChannelBuffer *_pRpcChannelBuffer,
  1451. PRPC_MESSAGE _pRpcMessage,
  1452. DWORD *_pdwStubPhase);
  1453. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaPropertyStorage_GetPropertyStream_Proxy(
  1454. IWiaPropertyStorage * This,
  1455. /* [out] */ GUID *pCompatibilityId,
  1456. /* [out] */ IStream **ppIStream);
  1457. void __RPC_STUB IWiaPropertyStorage_GetPropertyStream_Stub(
  1458. IRpcStubBuffer *This,
  1459. IRpcChannelBuffer *_pRpcChannelBuffer,
  1460. PRPC_MESSAGE _pRpcMessage,
  1461. DWORD *_pdwStubPhase);
  1462. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaPropertyStorage_SetPropertyStream_Proxy(
  1463. IWiaPropertyStorage * This,
  1464. /* [in] */ GUID *pCompatibilityId,
  1465. /* [unique][in] */ IStream *pIStream);
  1466. void __RPC_STUB IWiaPropertyStorage_SetPropertyStream_Stub(
  1467. IRpcStubBuffer *This,
  1468. IRpcChannelBuffer *_pRpcChannelBuffer,
  1469. PRPC_MESSAGE _pRpcMessage,
  1470. DWORD *_pdwStubPhase);
  1471. #endif /* __IWiaPropertyStorage_INTERFACE_DEFINED__ */
  1472. #ifndef __IEnumWiaItem_INTERFACE_DEFINED__
  1473. #define __IEnumWiaItem_INTERFACE_DEFINED__
  1474. /* interface IEnumWiaItem */
  1475. /* [unique][helpstring][uuid][object] */
  1476. EXTERN_C const IID IID_IEnumWiaItem;
  1477. #if defined(__cplusplus) && !defined(CINTERFACE)
  1478. MIDL_INTERFACE("5e8383fc-3391-11d2-9a33-00c04fa36145")
  1479. IEnumWiaItem : public IUnknown
  1480. {
  1481. public:
  1482. virtual /* [local] */ HRESULT STDMETHODCALLTYPE Next(
  1483. /* [in] */ ULONG celt,
  1484. /* [length_is][size_is][out] */ IWiaItem **ppIWiaItem,
  1485. /* [unique][out][in] */ ULONG *pceltFetched) = 0;
  1486. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Skip(
  1487. /* [in] */ ULONG celt) = 0;
  1488. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  1489. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Clone(
  1490. /* [out] */ IEnumWiaItem **ppIEnum) = 0;
  1491. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetCount(
  1492. /* [out] */ ULONG *celt) = 0;
  1493. };
  1494. #else /* C style interface */
  1495. typedef struct IEnumWiaItemVtbl
  1496. {
  1497. BEGIN_INTERFACE
  1498. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1499. IEnumWiaItem * This,
  1500. /* [in] */ REFIID riid,
  1501. /* [iid_is][out] */ void **ppvObject);
  1502. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1503. IEnumWiaItem * This);
  1504. ULONG ( STDMETHODCALLTYPE *Release )(
  1505. IEnumWiaItem * This);
  1506. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Next )(
  1507. IEnumWiaItem * This,
  1508. /* [in] */ ULONG celt,
  1509. /* [length_is][size_is][out] */ IWiaItem **ppIWiaItem,
  1510. /* [unique][out][in] */ ULONG *pceltFetched);
  1511. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Skip )(
  1512. IEnumWiaItem * This,
  1513. /* [in] */ ULONG celt);
  1514. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Reset )(
  1515. IEnumWiaItem * This);
  1516. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Clone )(
  1517. IEnumWiaItem * This,
  1518. /* [out] */ IEnumWiaItem **ppIEnum);
  1519. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetCount )(
  1520. IEnumWiaItem * This,
  1521. /* [out] */ ULONG *celt);
  1522. END_INTERFACE
  1523. } IEnumWiaItemVtbl;
  1524. interface IEnumWiaItem
  1525. {
  1526. CONST_VTBL struct IEnumWiaItemVtbl *lpVtbl;
  1527. };
  1528. #ifdef COBJMACROS
  1529. #define IEnumWiaItem_QueryInterface(This,riid,ppvObject) \
  1530. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1531. #define IEnumWiaItem_AddRef(This) \
  1532. (This)->lpVtbl -> AddRef(This)
  1533. #define IEnumWiaItem_Release(This) \
  1534. (This)->lpVtbl -> Release(This)
  1535. #define IEnumWiaItem_Next(This,celt,ppIWiaItem,pceltFetched) \
  1536. (This)->lpVtbl -> Next(This,celt,ppIWiaItem,pceltFetched)
  1537. #define IEnumWiaItem_Skip(This,celt) \
  1538. (This)->lpVtbl -> Skip(This,celt)
  1539. #define IEnumWiaItem_Reset(This) \
  1540. (This)->lpVtbl -> Reset(This)
  1541. #define IEnumWiaItem_Clone(This,ppIEnum) \
  1542. (This)->lpVtbl -> Clone(This,ppIEnum)
  1543. #define IEnumWiaItem_GetCount(This,celt) \
  1544. (This)->lpVtbl -> GetCount(This,celt)
  1545. #endif /* COBJMACROS */
  1546. #endif /* C style interface */
  1547. /* [helpstring][call_as] */ HRESULT STDMETHODCALLTYPE IEnumWiaItem_RemoteNext_Proxy(
  1548. IEnumWiaItem * This,
  1549. /* [in] */ ULONG celt,
  1550. /* [length_is][size_is][out] */ IWiaItem **ppIWiaItem,
  1551. /* [unique][out][in] */ ULONG *pceltFetched);
  1552. void __RPC_STUB IEnumWiaItem_RemoteNext_Stub(
  1553. IRpcStubBuffer *This,
  1554. IRpcChannelBuffer *_pRpcChannelBuffer,
  1555. PRPC_MESSAGE _pRpcMessage,
  1556. DWORD *_pdwStubPhase);
  1557. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IEnumWiaItem_Skip_Proxy(
  1558. IEnumWiaItem * This,
  1559. /* [in] */ ULONG celt);
  1560. void __RPC_STUB IEnumWiaItem_Skip_Stub(
  1561. IRpcStubBuffer *This,
  1562. IRpcChannelBuffer *_pRpcChannelBuffer,
  1563. PRPC_MESSAGE _pRpcMessage,
  1564. DWORD *_pdwStubPhase);
  1565. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IEnumWiaItem_Reset_Proxy(
  1566. IEnumWiaItem * This);
  1567. void __RPC_STUB IEnumWiaItem_Reset_Stub(
  1568. IRpcStubBuffer *This,
  1569. IRpcChannelBuffer *_pRpcChannelBuffer,
  1570. PRPC_MESSAGE _pRpcMessage,
  1571. DWORD *_pdwStubPhase);
  1572. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IEnumWiaItem_Clone_Proxy(
  1573. IEnumWiaItem * This,
  1574. /* [out] */ IEnumWiaItem **ppIEnum);
  1575. void __RPC_STUB IEnumWiaItem_Clone_Stub(
  1576. IRpcStubBuffer *This,
  1577. IRpcChannelBuffer *_pRpcChannelBuffer,
  1578. PRPC_MESSAGE _pRpcMessage,
  1579. DWORD *_pdwStubPhase);
  1580. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IEnumWiaItem_GetCount_Proxy(
  1581. IEnumWiaItem * This,
  1582. /* [out] */ ULONG *celt);
  1583. void __RPC_STUB IEnumWiaItem_GetCount_Stub(
  1584. IRpcStubBuffer *This,
  1585. IRpcChannelBuffer *_pRpcChannelBuffer,
  1586. PRPC_MESSAGE _pRpcMessage,
  1587. DWORD *_pdwStubPhase);
  1588. #endif /* __IEnumWiaItem_INTERFACE_DEFINED__ */
  1589. /* interface __MIDL_itf_wia_0126 */
  1590. /* [local] */
  1591. typedef struct _WIA_DEV_CAP
  1592. {
  1593. GUID guid;
  1594. ULONG ulFlags;
  1595. BSTR bstrName;
  1596. BSTR bstrDescription;
  1597. BSTR bstrIcon;
  1598. BSTR bstrCommandline;
  1599. } WIA_DEV_CAP;
  1600. typedef struct _WIA_DEV_CAP *PWIA_DEV_CAP;
  1601. typedef struct _WIA_DEV_CAP WIA_EVENT_HANDLER;
  1602. typedef struct _WIA_DEV_CAP *PWIA_EVENT_HANDLER;
  1603. extern RPC_IF_HANDLE __MIDL_itf_wia_0126_v0_0_c_ifspec;
  1604. extern RPC_IF_HANDLE __MIDL_itf_wia_0126_v0_0_s_ifspec;
  1605. #ifndef __IEnumWIA_DEV_CAPS_INTERFACE_DEFINED__
  1606. #define __IEnumWIA_DEV_CAPS_INTERFACE_DEFINED__
  1607. /* interface IEnumWIA_DEV_CAPS */
  1608. /* [unique][helpstring][uuid][object] */
  1609. EXTERN_C const IID IID_IEnumWIA_DEV_CAPS;
  1610. #if defined(__cplusplus) && !defined(CINTERFACE)
  1611. MIDL_INTERFACE("1fcc4287-aca6-11d2-a093-00c04f72dc3c")
  1612. IEnumWIA_DEV_CAPS : public IUnknown
  1613. {
  1614. public:
  1615. virtual /* [local] */ HRESULT STDMETHODCALLTYPE Next(
  1616. /* [in] */ ULONG celt,
  1617. /* [length_is][size_is][out] */ WIA_DEV_CAP *rgelt,
  1618. /* [unique][out][in] */ ULONG *pceltFetched) = 0;
  1619. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Skip(
  1620. /* [in] */ ULONG celt) = 0;
  1621. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  1622. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Clone(
  1623. /* [out] */ IEnumWIA_DEV_CAPS **ppIEnum) = 0;
  1624. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetCount(
  1625. /* [out] */ ULONG *pcelt) = 0;
  1626. };
  1627. #else /* C style interface */
  1628. typedef struct IEnumWIA_DEV_CAPSVtbl
  1629. {
  1630. BEGIN_INTERFACE
  1631. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1632. IEnumWIA_DEV_CAPS * This,
  1633. /* [in] */ REFIID riid,
  1634. /* [iid_is][out] */ void **ppvObject);
  1635. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1636. IEnumWIA_DEV_CAPS * This);
  1637. ULONG ( STDMETHODCALLTYPE *Release )(
  1638. IEnumWIA_DEV_CAPS * This);
  1639. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Next )(
  1640. IEnumWIA_DEV_CAPS * This,
  1641. /* [in] */ ULONG celt,
  1642. /* [length_is][size_is][out] */ WIA_DEV_CAP *rgelt,
  1643. /* [unique][out][in] */ ULONG *pceltFetched);
  1644. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Skip )(
  1645. IEnumWIA_DEV_CAPS * This,
  1646. /* [in] */ ULONG celt);
  1647. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Reset )(
  1648. IEnumWIA_DEV_CAPS * This);
  1649. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Clone )(
  1650. IEnumWIA_DEV_CAPS * This,
  1651. /* [out] */ IEnumWIA_DEV_CAPS **ppIEnum);
  1652. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetCount )(
  1653. IEnumWIA_DEV_CAPS * This,
  1654. /* [out] */ ULONG *pcelt);
  1655. END_INTERFACE
  1656. } IEnumWIA_DEV_CAPSVtbl;
  1657. interface IEnumWIA_DEV_CAPS
  1658. {
  1659. CONST_VTBL struct IEnumWIA_DEV_CAPSVtbl *lpVtbl;
  1660. };
  1661. #ifdef COBJMACROS
  1662. #define IEnumWIA_DEV_CAPS_QueryInterface(This,riid,ppvObject) \
  1663. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1664. #define IEnumWIA_DEV_CAPS_AddRef(This) \
  1665. (This)->lpVtbl -> AddRef(This)
  1666. #define IEnumWIA_DEV_CAPS_Release(This) \
  1667. (This)->lpVtbl -> Release(This)
  1668. #define IEnumWIA_DEV_CAPS_Next(This,celt,rgelt,pceltFetched) \
  1669. (This)->lpVtbl -> Next(This,celt,rgelt,pceltFetched)
  1670. #define IEnumWIA_DEV_CAPS_Skip(This,celt) \
  1671. (This)->lpVtbl -> Skip(This,celt)
  1672. #define IEnumWIA_DEV_CAPS_Reset(This) \
  1673. (This)->lpVtbl -> Reset(This)
  1674. #define IEnumWIA_DEV_CAPS_Clone(This,ppIEnum) \
  1675. (This)->lpVtbl -> Clone(This,ppIEnum)
  1676. #define IEnumWIA_DEV_CAPS_GetCount(This,pcelt) \
  1677. (This)->lpVtbl -> GetCount(This,pcelt)
  1678. #endif /* COBJMACROS */
  1679. #endif /* C style interface */
  1680. /* [helpstring][call_as] */ HRESULT STDMETHODCALLTYPE IEnumWIA_DEV_CAPS_RemoteNext_Proxy(
  1681. IEnumWIA_DEV_CAPS * This,
  1682. /* [in] */ ULONG celt,
  1683. /* [length_is][size_is][out] */ WIA_DEV_CAP *rgelt,
  1684. /* [unique][out][in] */ ULONG *pceltFetched);
  1685. void __RPC_STUB IEnumWIA_DEV_CAPS_RemoteNext_Stub(
  1686. IRpcStubBuffer *This,
  1687. IRpcChannelBuffer *_pRpcChannelBuffer,
  1688. PRPC_MESSAGE _pRpcMessage,
  1689. DWORD *_pdwStubPhase);
  1690. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IEnumWIA_DEV_CAPS_Skip_Proxy(
  1691. IEnumWIA_DEV_CAPS * This,
  1692. /* [in] */ ULONG celt);
  1693. void __RPC_STUB IEnumWIA_DEV_CAPS_Skip_Stub(
  1694. IRpcStubBuffer *This,
  1695. IRpcChannelBuffer *_pRpcChannelBuffer,
  1696. PRPC_MESSAGE _pRpcMessage,
  1697. DWORD *_pdwStubPhase);
  1698. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IEnumWIA_DEV_CAPS_Reset_Proxy(
  1699. IEnumWIA_DEV_CAPS * This);
  1700. void __RPC_STUB IEnumWIA_DEV_CAPS_Reset_Stub(
  1701. IRpcStubBuffer *This,
  1702. IRpcChannelBuffer *_pRpcChannelBuffer,
  1703. PRPC_MESSAGE _pRpcMessage,
  1704. DWORD *_pdwStubPhase);
  1705. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IEnumWIA_DEV_CAPS_Clone_Proxy(
  1706. IEnumWIA_DEV_CAPS * This,
  1707. /* [out] */ IEnumWIA_DEV_CAPS **ppIEnum);
  1708. void __RPC_STUB IEnumWIA_DEV_CAPS_Clone_Stub(
  1709. IRpcStubBuffer *This,
  1710. IRpcChannelBuffer *_pRpcChannelBuffer,
  1711. PRPC_MESSAGE _pRpcMessage,
  1712. DWORD *_pdwStubPhase);
  1713. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IEnumWIA_DEV_CAPS_GetCount_Proxy(
  1714. IEnumWIA_DEV_CAPS * This,
  1715. /* [out] */ ULONG *pcelt);
  1716. void __RPC_STUB IEnumWIA_DEV_CAPS_GetCount_Stub(
  1717. IRpcStubBuffer *This,
  1718. IRpcChannelBuffer *_pRpcChannelBuffer,
  1719. PRPC_MESSAGE _pRpcMessage,
  1720. DWORD *_pdwStubPhase);
  1721. #endif /* __IEnumWIA_DEV_CAPS_INTERFACE_DEFINED__ */
  1722. #ifndef __IEnumWIA_FORMAT_INFO_INTERFACE_DEFINED__
  1723. #define __IEnumWIA_FORMAT_INFO_INTERFACE_DEFINED__
  1724. /* interface IEnumWIA_FORMAT_INFO */
  1725. /* [unique][helpstring][uuid][object] */
  1726. EXTERN_C const IID IID_IEnumWIA_FORMAT_INFO;
  1727. #if defined(__cplusplus) && !defined(CINTERFACE)
  1728. MIDL_INTERFACE("81BEFC5B-656D-44f1-B24C-D41D51B4DC81")
  1729. IEnumWIA_FORMAT_INFO : public IUnknown
  1730. {
  1731. public:
  1732. virtual /* [local] */ HRESULT STDMETHODCALLTYPE Next(
  1733. /* [in] */ ULONG celt,
  1734. /* [length_is][size_is][out] */ WIA_FORMAT_INFO *rgelt,
  1735. /* [unique][out][in] */ ULONG *pceltFetched) = 0;
  1736. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Skip(
  1737. /* [in] */ ULONG celt) = 0;
  1738. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  1739. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Clone(
  1740. /* [out] */ IEnumWIA_FORMAT_INFO **ppIEnum) = 0;
  1741. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetCount(
  1742. /* [out] */ ULONG *pcelt) = 0;
  1743. };
  1744. #else /* C style interface */
  1745. typedef struct IEnumWIA_FORMAT_INFOVtbl
  1746. {
  1747. BEGIN_INTERFACE
  1748. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1749. IEnumWIA_FORMAT_INFO * This,
  1750. /* [in] */ REFIID riid,
  1751. /* [iid_is][out] */ void **ppvObject);
  1752. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1753. IEnumWIA_FORMAT_INFO * This);
  1754. ULONG ( STDMETHODCALLTYPE *Release )(
  1755. IEnumWIA_FORMAT_INFO * This);
  1756. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Next )(
  1757. IEnumWIA_FORMAT_INFO * This,
  1758. /* [in] */ ULONG celt,
  1759. /* [length_is][size_is][out] */ WIA_FORMAT_INFO *rgelt,
  1760. /* [unique][out][in] */ ULONG *pceltFetched);
  1761. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Skip )(
  1762. IEnumWIA_FORMAT_INFO * This,
  1763. /* [in] */ ULONG celt);
  1764. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Reset )(
  1765. IEnumWIA_FORMAT_INFO * This);
  1766. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Clone )(
  1767. IEnumWIA_FORMAT_INFO * This,
  1768. /* [out] */ IEnumWIA_FORMAT_INFO **ppIEnum);
  1769. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetCount )(
  1770. IEnumWIA_FORMAT_INFO * This,
  1771. /* [out] */ ULONG *pcelt);
  1772. END_INTERFACE
  1773. } IEnumWIA_FORMAT_INFOVtbl;
  1774. interface IEnumWIA_FORMAT_INFO
  1775. {
  1776. CONST_VTBL struct IEnumWIA_FORMAT_INFOVtbl *lpVtbl;
  1777. };
  1778. #ifdef COBJMACROS
  1779. #define IEnumWIA_FORMAT_INFO_QueryInterface(This,riid,ppvObject) \
  1780. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1781. #define IEnumWIA_FORMAT_INFO_AddRef(This) \
  1782. (This)->lpVtbl -> AddRef(This)
  1783. #define IEnumWIA_FORMAT_INFO_Release(This) \
  1784. (This)->lpVtbl -> Release(This)
  1785. #define IEnumWIA_FORMAT_INFO_Next(This,celt,rgelt,pceltFetched) \
  1786. (This)->lpVtbl -> Next(This,celt,rgelt,pceltFetched)
  1787. #define IEnumWIA_FORMAT_INFO_Skip(This,celt) \
  1788. (This)->lpVtbl -> Skip(This,celt)
  1789. #define IEnumWIA_FORMAT_INFO_Reset(This) \
  1790. (This)->lpVtbl -> Reset(This)
  1791. #define IEnumWIA_FORMAT_INFO_Clone(This,ppIEnum) \
  1792. (This)->lpVtbl -> Clone(This,ppIEnum)
  1793. #define IEnumWIA_FORMAT_INFO_GetCount(This,pcelt) \
  1794. (This)->lpVtbl -> GetCount(This,pcelt)
  1795. #endif /* COBJMACROS */
  1796. #endif /* C style interface */
  1797. /* [helpstring][call_as] */ HRESULT STDMETHODCALLTYPE IEnumWIA_FORMAT_INFO_RemoteNext_Proxy(
  1798. IEnumWIA_FORMAT_INFO * This,
  1799. /* [in] */ ULONG celt,
  1800. /* [length_is][size_is][out] */ WIA_FORMAT_INFO *rgelt,
  1801. /* [unique][out][in] */ ULONG *pceltFetched);
  1802. void __RPC_STUB IEnumWIA_FORMAT_INFO_RemoteNext_Stub(
  1803. IRpcStubBuffer *This,
  1804. IRpcChannelBuffer *_pRpcChannelBuffer,
  1805. PRPC_MESSAGE _pRpcMessage,
  1806. DWORD *_pdwStubPhase);
  1807. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IEnumWIA_FORMAT_INFO_Skip_Proxy(
  1808. IEnumWIA_FORMAT_INFO * This,
  1809. /* [in] */ ULONG celt);
  1810. void __RPC_STUB IEnumWIA_FORMAT_INFO_Skip_Stub(
  1811. IRpcStubBuffer *This,
  1812. IRpcChannelBuffer *_pRpcChannelBuffer,
  1813. PRPC_MESSAGE _pRpcMessage,
  1814. DWORD *_pdwStubPhase);
  1815. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IEnumWIA_FORMAT_INFO_Reset_Proxy(
  1816. IEnumWIA_FORMAT_INFO * This);
  1817. void __RPC_STUB IEnumWIA_FORMAT_INFO_Reset_Stub(
  1818. IRpcStubBuffer *This,
  1819. IRpcChannelBuffer *_pRpcChannelBuffer,
  1820. PRPC_MESSAGE _pRpcMessage,
  1821. DWORD *_pdwStubPhase);
  1822. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IEnumWIA_FORMAT_INFO_Clone_Proxy(
  1823. IEnumWIA_FORMAT_INFO * This,
  1824. /* [out] */ IEnumWIA_FORMAT_INFO **ppIEnum);
  1825. void __RPC_STUB IEnumWIA_FORMAT_INFO_Clone_Stub(
  1826. IRpcStubBuffer *This,
  1827. IRpcChannelBuffer *_pRpcChannelBuffer,
  1828. PRPC_MESSAGE _pRpcMessage,
  1829. DWORD *_pdwStubPhase);
  1830. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IEnumWIA_FORMAT_INFO_GetCount_Proxy(
  1831. IEnumWIA_FORMAT_INFO * This,
  1832. /* [out] */ ULONG *pcelt);
  1833. void __RPC_STUB IEnumWIA_FORMAT_INFO_GetCount_Stub(
  1834. IRpcStubBuffer *This,
  1835. IRpcChannelBuffer *_pRpcChannelBuffer,
  1836. PRPC_MESSAGE _pRpcMessage,
  1837. DWORD *_pdwStubPhase);
  1838. #endif /* __IEnumWIA_FORMAT_INFO_INTERFACE_DEFINED__ */
  1839. #ifndef __IWiaLog_INTERFACE_DEFINED__
  1840. #define __IWiaLog_INTERFACE_DEFINED__
  1841. /* interface IWiaLog */
  1842. /* [unique][helpstring][uuid][object] */
  1843. EXTERN_C const IID IID_IWiaLog;
  1844. #if defined(__cplusplus) && !defined(CINTERFACE)
  1845. MIDL_INTERFACE("A00C10B6-82A1-452f-8B6C-86062AAD6890")
  1846. IWiaLog : public IUnknown
  1847. {
  1848. public:
  1849. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE InitializeLog(
  1850. /* [in] */ LONG hInstance) = 0;
  1851. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE hResult(
  1852. /* [in] */ HRESULT hResult) = 0;
  1853. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Log(
  1854. /* [in] */ LONG lFlags,
  1855. /* [in] */ LONG lResID,
  1856. /* [in] */ LONG lDetail,
  1857. /* [in] */ BSTR bstrText) = 0;
  1858. };
  1859. #else /* C style interface */
  1860. typedef struct IWiaLogVtbl
  1861. {
  1862. BEGIN_INTERFACE
  1863. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1864. IWiaLog * This,
  1865. /* [in] */ REFIID riid,
  1866. /* [iid_is][out] */ void **ppvObject);
  1867. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1868. IWiaLog * This);
  1869. ULONG ( STDMETHODCALLTYPE *Release )(
  1870. IWiaLog * This);
  1871. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *InitializeLog )(
  1872. IWiaLog * This,
  1873. /* [in] */ LONG hInstance);
  1874. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *hResult )(
  1875. IWiaLog * This,
  1876. /* [in] */ HRESULT hResult);
  1877. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Log )(
  1878. IWiaLog * This,
  1879. /* [in] */ LONG lFlags,
  1880. /* [in] */ LONG lResID,
  1881. /* [in] */ LONG lDetail,
  1882. /* [in] */ BSTR bstrText);
  1883. END_INTERFACE
  1884. } IWiaLogVtbl;
  1885. interface IWiaLog
  1886. {
  1887. CONST_VTBL struct IWiaLogVtbl *lpVtbl;
  1888. };
  1889. #ifdef COBJMACROS
  1890. #define IWiaLog_QueryInterface(This,riid,ppvObject) \
  1891. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1892. #define IWiaLog_AddRef(This) \
  1893. (This)->lpVtbl -> AddRef(This)
  1894. #define IWiaLog_Release(This) \
  1895. (This)->lpVtbl -> Release(This)
  1896. #define IWiaLog_InitializeLog(This,hInstance) \
  1897. (This)->lpVtbl -> InitializeLog(This,hInstance)
  1898. #define IWiaLog_hResult(This,hResult) \
  1899. (This)->lpVtbl -> hResult(This,hResult)
  1900. #define IWiaLog_Log(This,lFlags,lResID,lDetail,bstrText) \
  1901. (This)->lpVtbl -> Log(This,lFlags,lResID,lDetail,bstrText)
  1902. #endif /* COBJMACROS */
  1903. #endif /* C style interface */
  1904. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaLog_InitializeLog_Proxy(
  1905. IWiaLog * This,
  1906. /* [in] */ LONG hInstance);
  1907. void __RPC_STUB IWiaLog_InitializeLog_Stub(
  1908. IRpcStubBuffer *This,
  1909. IRpcChannelBuffer *_pRpcChannelBuffer,
  1910. PRPC_MESSAGE _pRpcMessage,
  1911. DWORD *_pdwStubPhase);
  1912. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaLog_hResult_Proxy(
  1913. IWiaLog * This,
  1914. /* [in] */ HRESULT hResult);
  1915. void __RPC_STUB IWiaLog_hResult_Stub(
  1916. IRpcStubBuffer *This,
  1917. IRpcChannelBuffer *_pRpcChannelBuffer,
  1918. PRPC_MESSAGE _pRpcMessage,
  1919. DWORD *_pdwStubPhase);
  1920. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaLog_Log_Proxy(
  1921. IWiaLog * This,
  1922. /* [in] */ LONG lFlags,
  1923. /* [in] */ LONG lResID,
  1924. /* [in] */ LONG lDetail,
  1925. /* [in] */ BSTR bstrText);
  1926. void __RPC_STUB IWiaLog_Log_Stub(
  1927. IRpcStubBuffer *This,
  1928. IRpcChannelBuffer *_pRpcChannelBuffer,
  1929. PRPC_MESSAGE _pRpcMessage,
  1930. DWORD *_pdwStubPhase);
  1931. #endif /* __IWiaLog_INTERFACE_DEFINED__ */
  1932. #ifndef __IWiaLogEx_INTERFACE_DEFINED__
  1933. #define __IWiaLogEx_INTERFACE_DEFINED__
  1934. /* interface IWiaLogEx */
  1935. /* [unique][helpstring][uuid][object] */
  1936. EXTERN_C const IID IID_IWiaLogEx;
  1937. #if defined(__cplusplus) && !defined(CINTERFACE)
  1938. MIDL_INTERFACE("AF1F22AC-7A40-4787-B421-AEb47A1FBD0B")
  1939. IWiaLogEx : public IUnknown
  1940. {
  1941. public:
  1942. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE InitializeLogEx(
  1943. /* [in] */ BYTE *hInstance) = 0;
  1944. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE hResult(
  1945. /* [in] */ HRESULT hResult) = 0;
  1946. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Log(
  1947. /* [in] */ LONG lFlags,
  1948. /* [in] */ LONG lResID,
  1949. /* [in] */ LONG lDetail,
  1950. /* [in] */ BSTR bstrText) = 0;
  1951. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE hResultEx(
  1952. /* [in] */ LONG lMethodId,
  1953. /* [in] */ HRESULT hResult) = 0;
  1954. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE LogEx(
  1955. /* [in] */ LONG lMethodId,
  1956. /* [in] */ LONG lFlags,
  1957. /* [in] */ LONG lResID,
  1958. /* [in] */ LONG lDetail,
  1959. /* [in] */ BSTR bstrText) = 0;
  1960. };
  1961. #else /* C style interface */
  1962. typedef struct IWiaLogExVtbl
  1963. {
  1964. BEGIN_INTERFACE
  1965. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1966. IWiaLogEx * This,
  1967. /* [in] */ REFIID riid,
  1968. /* [iid_is][out] */ void **ppvObject);
  1969. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1970. IWiaLogEx * This);
  1971. ULONG ( STDMETHODCALLTYPE *Release )(
  1972. IWiaLogEx * This);
  1973. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *InitializeLogEx )(
  1974. IWiaLogEx * This,
  1975. /* [in] */ BYTE *hInstance);
  1976. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *hResult )(
  1977. IWiaLogEx * This,
  1978. /* [in] */ HRESULT hResult);
  1979. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Log )(
  1980. IWiaLogEx * This,
  1981. /* [in] */ LONG lFlags,
  1982. /* [in] */ LONG lResID,
  1983. /* [in] */ LONG lDetail,
  1984. /* [in] */ BSTR bstrText);
  1985. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *hResultEx )(
  1986. IWiaLogEx * This,
  1987. /* [in] */ LONG lMethodId,
  1988. /* [in] */ HRESULT hResult);
  1989. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *LogEx )(
  1990. IWiaLogEx * This,
  1991. /* [in] */ LONG lMethodId,
  1992. /* [in] */ LONG lFlags,
  1993. /* [in] */ LONG lResID,
  1994. /* [in] */ LONG lDetail,
  1995. /* [in] */ BSTR bstrText);
  1996. END_INTERFACE
  1997. } IWiaLogExVtbl;
  1998. interface IWiaLogEx
  1999. {
  2000. CONST_VTBL struct IWiaLogExVtbl *lpVtbl;
  2001. };
  2002. #ifdef COBJMACROS
  2003. #define IWiaLogEx_QueryInterface(This,riid,ppvObject) \
  2004. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2005. #define IWiaLogEx_AddRef(This) \
  2006. (This)->lpVtbl -> AddRef(This)
  2007. #define IWiaLogEx_Release(This) \
  2008. (This)->lpVtbl -> Release(This)
  2009. #define IWiaLogEx_InitializeLogEx(This,hInstance) \
  2010. (This)->lpVtbl -> InitializeLogEx(This,hInstance)
  2011. #define IWiaLogEx_hResult(This,hResult) \
  2012. (This)->lpVtbl -> hResult(This,hResult)
  2013. #define IWiaLogEx_Log(This,lFlags,lResID,lDetail,bstrText) \
  2014. (This)->lpVtbl -> Log(This,lFlags,lResID,lDetail,bstrText)
  2015. #define IWiaLogEx_hResultEx(This,lMethodId,hResult) \
  2016. (This)->lpVtbl -> hResultEx(This,lMethodId,hResult)
  2017. #define IWiaLogEx_LogEx(This,lMethodId,lFlags,lResID,lDetail,bstrText) \
  2018. (This)->lpVtbl -> LogEx(This,lMethodId,lFlags,lResID,lDetail,bstrText)
  2019. #endif /* COBJMACROS */
  2020. #endif /* C style interface */
  2021. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaLogEx_InitializeLogEx_Proxy(
  2022. IWiaLogEx * This,
  2023. /* [in] */ BYTE *hInstance);
  2024. void __RPC_STUB IWiaLogEx_InitializeLogEx_Stub(
  2025. IRpcStubBuffer *This,
  2026. IRpcChannelBuffer *_pRpcChannelBuffer,
  2027. PRPC_MESSAGE _pRpcMessage,
  2028. DWORD *_pdwStubPhase);
  2029. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaLogEx_hResult_Proxy(
  2030. IWiaLogEx * This,
  2031. /* [in] */ HRESULT hResult);
  2032. void __RPC_STUB IWiaLogEx_hResult_Stub(
  2033. IRpcStubBuffer *This,
  2034. IRpcChannelBuffer *_pRpcChannelBuffer,
  2035. PRPC_MESSAGE _pRpcMessage,
  2036. DWORD *_pdwStubPhase);
  2037. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaLogEx_Log_Proxy(
  2038. IWiaLogEx * This,
  2039. /* [in] */ LONG lFlags,
  2040. /* [in] */ LONG lResID,
  2041. /* [in] */ LONG lDetail,
  2042. /* [in] */ BSTR bstrText);
  2043. void __RPC_STUB IWiaLogEx_Log_Stub(
  2044. IRpcStubBuffer *This,
  2045. IRpcChannelBuffer *_pRpcChannelBuffer,
  2046. PRPC_MESSAGE _pRpcMessage,
  2047. DWORD *_pdwStubPhase);
  2048. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaLogEx_hResultEx_Proxy(
  2049. IWiaLogEx * This,
  2050. /* [in] */ LONG lMethodId,
  2051. /* [in] */ HRESULT hResult);
  2052. void __RPC_STUB IWiaLogEx_hResultEx_Stub(
  2053. IRpcStubBuffer *This,
  2054. IRpcChannelBuffer *_pRpcChannelBuffer,
  2055. PRPC_MESSAGE _pRpcMessage,
  2056. DWORD *_pdwStubPhase);
  2057. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaLogEx_LogEx_Proxy(
  2058. IWiaLogEx * This,
  2059. /* [in] */ LONG lMethodId,
  2060. /* [in] */ LONG lFlags,
  2061. /* [in] */ LONG lResID,
  2062. /* [in] */ LONG lDetail,
  2063. /* [in] */ BSTR bstrText);
  2064. void __RPC_STUB IWiaLogEx_LogEx_Stub(
  2065. IRpcStubBuffer *This,
  2066. IRpcChannelBuffer *_pRpcChannelBuffer,
  2067. PRPC_MESSAGE _pRpcMessage,
  2068. DWORD *_pdwStubPhase);
  2069. #endif /* __IWiaLogEx_INTERFACE_DEFINED__ */
  2070. #ifndef __IWiaNotifyDevMgr_INTERFACE_DEFINED__
  2071. #define __IWiaNotifyDevMgr_INTERFACE_DEFINED__
  2072. /* interface IWiaNotifyDevMgr */
  2073. /* [unique][helpstring][uuid][object] */
  2074. EXTERN_C const IID IID_IWiaNotifyDevMgr;
  2075. #if defined(__cplusplus) && !defined(CINTERFACE)
  2076. MIDL_INTERFACE("70681EA0-E7BF-4291-9FB1-4E8813A3F78E")
  2077. IWiaNotifyDevMgr : public IUnknown
  2078. {
  2079. public:
  2080. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE NewDeviceArrival( void) = 0;
  2081. };
  2082. #else /* C style interface */
  2083. typedef struct IWiaNotifyDevMgrVtbl
  2084. {
  2085. BEGIN_INTERFACE
  2086. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  2087. IWiaNotifyDevMgr * This,
  2088. /* [in] */ REFIID riid,
  2089. /* [iid_is][out] */ void **ppvObject);
  2090. ULONG ( STDMETHODCALLTYPE *AddRef )(
  2091. IWiaNotifyDevMgr * This);
  2092. ULONG ( STDMETHODCALLTYPE *Release )(
  2093. IWiaNotifyDevMgr * This);
  2094. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *NewDeviceArrival )(
  2095. IWiaNotifyDevMgr * This);
  2096. END_INTERFACE
  2097. } IWiaNotifyDevMgrVtbl;
  2098. interface IWiaNotifyDevMgr
  2099. {
  2100. CONST_VTBL struct IWiaNotifyDevMgrVtbl *lpVtbl;
  2101. };
  2102. #ifdef COBJMACROS
  2103. #define IWiaNotifyDevMgr_QueryInterface(This,riid,ppvObject) \
  2104. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2105. #define IWiaNotifyDevMgr_AddRef(This) \
  2106. (This)->lpVtbl -> AddRef(This)
  2107. #define IWiaNotifyDevMgr_Release(This) \
  2108. (This)->lpVtbl -> Release(This)
  2109. #define IWiaNotifyDevMgr_NewDeviceArrival(This) \
  2110. (This)->lpVtbl -> NewDeviceArrival(This)
  2111. #endif /* COBJMACROS */
  2112. #endif /* C style interface */
  2113. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaNotifyDevMgr_NewDeviceArrival_Proxy(
  2114. IWiaNotifyDevMgr * This);
  2115. void __RPC_STUB IWiaNotifyDevMgr_NewDeviceArrival_Stub(
  2116. IRpcStubBuffer *This,
  2117. IRpcChannelBuffer *_pRpcChannelBuffer,
  2118. PRPC_MESSAGE _pRpcMessage,
  2119. DWORD *_pdwStubPhase);
  2120. #endif /* __IWiaNotifyDevMgr_INTERFACE_DEFINED__ */
  2121. #ifndef __IWiaItemExtras_INTERFACE_DEFINED__
  2122. #define __IWiaItemExtras_INTERFACE_DEFINED__
  2123. /* interface IWiaItemExtras */
  2124. /* [unique][helpstring][uuid][object] */
  2125. EXTERN_C const IID IID_IWiaItemExtras;
  2126. #if defined(__cplusplus) && !defined(CINTERFACE)
  2127. MIDL_INTERFACE("6291ef2c-36ef-4532-876a-8e132593778d")
  2128. IWiaItemExtras : public IUnknown
  2129. {
  2130. public:
  2131. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetExtendedErrorInfo(
  2132. /* [out] */ BSTR *bstrErrorText) = 0;
  2133. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Escape(
  2134. /* [in] */ DWORD dwEscapeCode,
  2135. /* [size_is][in] */ BYTE *lpInData,
  2136. /* [in] */ DWORD cbInDataSize,
  2137. /* [length_is][size_is][out] */ BYTE *pOutData,
  2138. /* [in] */ DWORD dwOutDataSize,
  2139. /* [out] */ DWORD *pdwActualDataSize) = 0;
  2140. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE CancelPendingIO( void) = 0;
  2141. };
  2142. #else /* C style interface */
  2143. typedef struct IWiaItemExtrasVtbl
  2144. {
  2145. BEGIN_INTERFACE
  2146. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  2147. IWiaItemExtras * This,
  2148. /* [in] */ REFIID riid,
  2149. /* [iid_is][out] */ void **ppvObject);
  2150. ULONG ( STDMETHODCALLTYPE *AddRef )(
  2151. IWiaItemExtras * This);
  2152. ULONG ( STDMETHODCALLTYPE *Release )(
  2153. IWiaItemExtras * This);
  2154. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetExtendedErrorInfo )(
  2155. IWiaItemExtras * This,
  2156. /* [out] */ BSTR *bstrErrorText);
  2157. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Escape )(
  2158. IWiaItemExtras * This,
  2159. /* [in] */ DWORD dwEscapeCode,
  2160. /* [size_is][in] */ BYTE *lpInData,
  2161. /* [in] */ DWORD cbInDataSize,
  2162. /* [length_is][size_is][out] */ BYTE *pOutData,
  2163. /* [in] */ DWORD dwOutDataSize,
  2164. /* [out] */ DWORD *pdwActualDataSize);
  2165. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *CancelPendingIO )(
  2166. IWiaItemExtras * This);
  2167. END_INTERFACE
  2168. } IWiaItemExtrasVtbl;
  2169. interface IWiaItemExtras
  2170. {
  2171. CONST_VTBL struct IWiaItemExtrasVtbl *lpVtbl;
  2172. };
  2173. #ifdef COBJMACROS
  2174. #define IWiaItemExtras_QueryInterface(This,riid,ppvObject) \
  2175. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2176. #define IWiaItemExtras_AddRef(This) \
  2177. (This)->lpVtbl -> AddRef(This)
  2178. #define IWiaItemExtras_Release(This) \
  2179. (This)->lpVtbl -> Release(This)
  2180. #define IWiaItemExtras_GetExtendedErrorInfo(This,bstrErrorText) \
  2181. (This)->lpVtbl -> GetExtendedErrorInfo(This,bstrErrorText)
  2182. #define IWiaItemExtras_Escape(This,dwEscapeCode,lpInData,cbInDataSize,pOutData,dwOutDataSize,pdwActualDataSize) \
  2183. (This)->lpVtbl -> Escape(This,dwEscapeCode,lpInData,cbInDataSize,pOutData,dwOutDataSize,pdwActualDataSize)
  2184. #define IWiaItemExtras_CancelPendingIO(This) \
  2185. (This)->lpVtbl -> CancelPendingIO(This)
  2186. #endif /* COBJMACROS */
  2187. #endif /* C style interface */
  2188. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaItemExtras_GetExtendedErrorInfo_Proxy(
  2189. IWiaItemExtras * This,
  2190. /* [out] */ BSTR *bstrErrorText);
  2191. void __RPC_STUB IWiaItemExtras_GetExtendedErrorInfo_Stub(
  2192. IRpcStubBuffer *This,
  2193. IRpcChannelBuffer *_pRpcChannelBuffer,
  2194. PRPC_MESSAGE _pRpcMessage,
  2195. DWORD *_pdwStubPhase);
  2196. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaItemExtras_Escape_Proxy(
  2197. IWiaItemExtras * This,
  2198. /* [in] */ DWORD dwEscapeCode,
  2199. /* [size_is][in] */ BYTE *lpInData,
  2200. /* [in] */ DWORD cbInDataSize,
  2201. /* [length_is][size_is][out] */ BYTE *pOutData,
  2202. /* [in] */ DWORD dwOutDataSize,
  2203. /* [out] */ DWORD *pdwActualDataSize);
  2204. void __RPC_STUB IWiaItemExtras_Escape_Stub(
  2205. IRpcStubBuffer *This,
  2206. IRpcChannelBuffer *_pRpcChannelBuffer,
  2207. PRPC_MESSAGE _pRpcMessage,
  2208. DWORD *_pdwStubPhase);
  2209. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaItemExtras_CancelPendingIO_Proxy(
  2210. IWiaItemExtras * This);
  2211. void __RPC_STUB IWiaItemExtras_CancelPendingIO_Stub(
  2212. IRpcStubBuffer *This,
  2213. IRpcChannelBuffer *_pRpcChannelBuffer,
  2214. PRPC_MESSAGE _pRpcMessage,
  2215. DWORD *_pdwStubPhase);
  2216. #endif /* __IWiaItemExtras_INTERFACE_DEFINED__ */
  2217. #ifndef __WiaDevMgr_LIBRARY_DEFINED__
  2218. #define __WiaDevMgr_LIBRARY_DEFINED__
  2219. /* library WiaDevMgr */
  2220. /* [helpstring][version][uuid] */
  2221. EXTERN_C const IID LIBID_WiaDevMgr;
  2222. EXTERN_C const CLSID CLSID_WiaDevMgr;
  2223. #ifdef __cplusplus
  2224. class DECLSPEC_UUID("a1f4e726-8cf1-11d1-bf92-0060081ed811")
  2225. WiaDevMgr;
  2226. #endif
  2227. EXTERN_C const CLSID CLSID_WiaLog;
  2228. #ifdef __cplusplus
  2229. class DECLSPEC_UUID("A1E75357-881A-419e-83E2-BB16DB197C68")
  2230. WiaLog;
  2231. #endif
  2232. #endif /* __WiaDevMgr_LIBRARY_DEFINED__ */
  2233. /* Additional Prototypes for ALL interfaces */
  2234. unsigned long __RPC_USER BSTR_UserSize( unsigned long *, unsigned long , BSTR * );
  2235. unsigned char * __RPC_USER BSTR_UserMarshal( unsigned long *, unsigned char *, BSTR * );
  2236. unsigned char * __RPC_USER BSTR_UserUnmarshal(unsigned long *, unsigned char *, BSTR * );
  2237. void __RPC_USER BSTR_UserFree( unsigned long *, BSTR * );
  2238. unsigned long __RPC_USER HWND_UserSize( unsigned long *, unsigned long , HWND * );
  2239. unsigned char * __RPC_USER HWND_UserMarshal( unsigned long *, unsigned char *, HWND * );
  2240. unsigned char * __RPC_USER HWND_UserUnmarshal(unsigned long *, unsigned char *, HWND * );
  2241. void __RPC_USER HWND_UserFree( unsigned long *, HWND * );
  2242. unsigned long __RPC_USER LPSAFEARRAY_UserSize( unsigned long *, unsigned long , LPSAFEARRAY * );
  2243. unsigned char * __RPC_USER LPSAFEARRAY_UserMarshal( unsigned long *, unsigned char *, LPSAFEARRAY * );
  2244. unsigned char * __RPC_USER LPSAFEARRAY_UserUnmarshal(unsigned long *, unsigned char *, LPSAFEARRAY * );
  2245. void __RPC_USER LPSAFEARRAY_UserFree( unsigned long *, LPSAFEARRAY * );
  2246. unsigned long __RPC_USER STGMEDIUM_UserSize( unsigned long *, unsigned long , STGMEDIUM * );
  2247. unsigned char * __RPC_USER STGMEDIUM_UserMarshal( unsigned long *, unsigned char *, STGMEDIUM * );
  2248. unsigned char * __RPC_USER STGMEDIUM_UserUnmarshal(unsigned long *, unsigned char *, STGMEDIUM * );
  2249. void __RPC_USER STGMEDIUM_UserFree( unsigned long *, STGMEDIUM * );
  2250. /* [local] */ HRESULT STDMETHODCALLTYPE IWiaDevMgr_CreateDevice_Proxy(
  2251. IWiaDevMgr * This,
  2252. /* [in] */ BSTR bstrDeviceID,
  2253. /* [out] */ IWiaItem **ppWiaItemRoot);
  2254. /* [helpstring][call_as] */ HRESULT STDMETHODCALLTYPE IWiaDevMgr_CreateDevice_Stub(
  2255. IWiaDevMgr * This,
  2256. /* [in] */ BSTR bstrDeviceID,
  2257. /* [out] */ IWiaItem **ppWiaItemRoot);
  2258. /* [local] */ HRESULT STDMETHODCALLTYPE IWiaDevMgr_SelectDeviceDlg_Proxy(
  2259. IWiaDevMgr * This,
  2260. /* [in] */ HWND hwndParent,
  2261. /* [in] */ LONG lDeviceType,
  2262. /* [in] */ LONG lFlags,
  2263. /* [out][in] */ BSTR *pbstrDeviceID,
  2264. /* [retval][out] */ IWiaItem **ppItemRoot);
  2265. /* [nocode][helpstring][call_as] */ HRESULT STDMETHODCALLTYPE IWiaDevMgr_SelectDeviceDlg_Stub(
  2266. IWiaDevMgr * This,
  2267. /* [in] */ HWND hwndParent,
  2268. /* [in] */ LONG lDeviceType,
  2269. /* [in] */ LONG lFlags,
  2270. /* [out][in] */ BSTR *pbstrDeviceID,
  2271. /* [retval][out] */ IWiaItem **ppItemRoot);
  2272. /* [local] */ HRESULT STDMETHODCALLTYPE IWiaDevMgr_SelectDeviceDlgID_Proxy(
  2273. IWiaDevMgr * This,
  2274. /* [in] */ HWND hwndParent,
  2275. /* [in] */ LONG lDeviceType,
  2276. /* [in] */ LONG lFlags,
  2277. /* [retval][out] */ BSTR *pbstrDeviceID);
  2278. /* [nocode][helpstring][call_as] */ HRESULT STDMETHODCALLTYPE IWiaDevMgr_SelectDeviceDlgID_Stub(
  2279. IWiaDevMgr * This,
  2280. /* [in] */ HWND hwndParent,
  2281. /* [in] */ LONG lDeviceType,
  2282. /* [in] */ LONG lFlags,
  2283. /* [retval][out] */ BSTR *pbstrDeviceID);
  2284. /* [local] */ HRESULT STDMETHODCALLTYPE IWiaDevMgr_GetImageDlg_Proxy(
  2285. IWiaDevMgr * This,
  2286. /* [in] */ HWND hwndParent,
  2287. /* [in] */ LONG lDeviceType,
  2288. /* [in] */ LONG lFlags,
  2289. /* [in] */ LONG lIntent,
  2290. /* [in] */ IWiaItem *pItemRoot,
  2291. /* [in] */ BSTR bstrFilename,
  2292. /* [out][in] */ GUID *pguidFormat);
  2293. /* [nocode][helpstring][call_as] */ HRESULT STDMETHODCALLTYPE IWiaDevMgr_GetImageDlg_Stub(
  2294. IWiaDevMgr * This,
  2295. /* [in] */ HWND hwndParent,
  2296. /* [in] */ LONG lDeviceType,
  2297. /* [in] */ LONG lFlags,
  2298. /* [in] */ LONG lIntent,
  2299. /* [in] */ IWiaItem *pItemRoot,
  2300. /* [in] */ BSTR bstrFilename,
  2301. /* [out][in] */ GUID *pguidFormat);
  2302. /* [local] */ HRESULT STDMETHODCALLTYPE IWiaDevMgr_RegisterEventCallbackProgram_Proxy(
  2303. IWiaDevMgr * This,
  2304. /* [in] */ LONG lFlags,
  2305. /* [in] */ BSTR bstrDeviceID,
  2306. /* [in] */ const GUID *pEventGUID,
  2307. /* [in] */ BSTR bstrCommandline,
  2308. /* [in] */ BSTR bstrName,
  2309. /* [in] */ BSTR bstrDescription,
  2310. /* [in] */ BSTR bstrIcon);
  2311. /* [helpstring][call_as] */ HRESULT STDMETHODCALLTYPE IWiaDevMgr_RegisterEventCallbackProgram_Stub(
  2312. IWiaDevMgr * This,
  2313. /* [in] */ LONG lFlags,
  2314. /* [in] */ BSTR bstrDeviceID,
  2315. /* [in] */ const GUID *pEventGUID,
  2316. /* [in] */ BSTR bstrCommandline,
  2317. /* [in] */ BSTR bstrName,
  2318. /* [in] */ BSTR bstrDescription,
  2319. /* [in] */ BSTR bstrIcon);
  2320. /* [local] */ HRESULT STDMETHODCALLTYPE IWiaDevMgr_RegisterEventCallbackCLSID_Proxy(
  2321. IWiaDevMgr * This,
  2322. /* [in] */ LONG lFlags,
  2323. /* [in] */ BSTR bstrDeviceID,
  2324. /* [in] */ const GUID *pEventGUID,
  2325. /* [unique][in] */ const GUID *pClsID,
  2326. /* [in] */ BSTR bstrName,
  2327. /* [in] */ BSTR bstrDescription,
  2328. /* [in] */ BSTR bstrIcon);
  2329. /* [helpstring][call_as] */ HRESULT STDMETHODCALLTYPE IWiaDevMgr_RegisterEventCallbackCLSID_Stub(
  2330. IWiaDevMgr * This,
  2331. /* [in] */ LONG lFlags,
  2332. /* [in] */ BSTR bstrDeviceID,
  2333. /* [in] */ const GUID *pEventGUID,
  2334. /* [unique][in] */ const GUID *pClsID,
  2335. /* [in] */ BSTR bstrName,
  2336. /* [in] */ BSTR bstrDescription,
  2337. /* [in] */ BSTR bstrIcon);
  2338. /* [local] */ HRESULT STDMETHODCALLTYPE IEnumWIA_DEV_INFO_Next_Proxy(
  2339. IEnumWIA_DEV_INFO * This,
  2340. /* [in] */ ULONG celt,
  2341. /* [length_is][size_is][out] */ IWiaPropertyStorage **rgelt,
  2342. /* [unique][out][in] */ ULONG *pceltFetched);
  2343. /* [helpstring][call_as] */ HRESULT STDMETHODCALLTYPE IEnumWIA_DEV_INFO_Next_Stub(
  2344. IEnumWIA_DEV_INFO * This,
  2345. /* [in] */ ULONG celt,
  2346. /* [length_is][size_is][out] */ IWiaPropertyStorage **rgelt,
  2347. /* [unique][out][in] */ ULONG *pceltFetched);
  2348. /* [local] */ HRESULT STDMETHODCALLTYPE IWiaDataCallback_BandedDataCallback_Proxy(
  2349. IWiaDataCallback * This,
  2350. /* [in] */ LONG lMessage,
  2351. /* [in] */ LONG lStatus,
  2352. /* [in] */ LONG lPercentComplete,
  2353. /* [in] */ LONG lOffset,
  2354. /* [in] */ LONG lLength,
  2355. /* [in] */ LONG lReserved,
  2356. /* [in] */ LONG lResLength,
  2357. /* [size_is][in] */ BYTE *pbBuffer);
  2358. /* [helpstring][call_as] */ HRESULT STDMETHODCALLTYPE IWiaDataCallback_BandedDataCallback_Stub(
  2359. IWiaDataCallback * This,
  2360. /* [in] */ LONG lMessage,
  2361. /* [in] */ LONG lStatus,
  2362. /* [in] */ LONG lPercentComplete,
  2363. /* [in] */ LONG lOffset,
  2364. /* [in] */ LONG lLength,
  2365. /* [in] */ LONG lReserved,
  2366. /* [in] */ LONG lResLength,
  2367. /* [unique][size_is][in] */ BYTE *pbBuffer);
  2368. /* [local] */ HRESULT STDMETHODCALLTYPE IWiaDataTransfer_idtGetData_Proxy(
  2369. IWiaDataTransfer * This,
  2370. /* [out][in] */ LPSTGMEDIUM pMedium,
  2371. /* [unique][in] */ IWiaDataCallback *pIWiaDataCallback);
  2372. /* [helpstring][call_as] */ HRESULT STDMETHODCALLTYPE IWiaDataTransfer_idtGetData_Stub(
  2373. IWiaDataTransfer * This,
  2374. /* [out][in] */ LPSTGMEDIUM pMedium,
  2375. /* [unique][in] */ IWiaDataCallback *pIWiaDataCallback);
  2376. /* [local] */ HRESULT STDMETHODCALLTYPE IWiaDataTransfer_idtGetBandedData_Proxy(
  2377. IWiaDataTransfer * This,
  2378. /* [unique][in] */ PWIA_DATA_TRANSFER_INFO pWiaDataTransInfo,
  2379. /* [unique][in] */ IWiaDataCallback *pIWiaDataCallback);
  2380. /* [helpstring][call_as] */ HRESULT STDMETHODCALLTYPE IWiaDataTransfer_idtGetBandedData_Stub(
  2381. IWiaDataTransfer * This,
  2382. /* [unique][in] */ PWIA_DATA_TRANSFER_INFO pWiaDataTransInfo,
  2383. /* [unique][in] */ IWiaDataCallback *pIWiaDataCallback);
  2384. /* [local] */ HRESULT STDMETHODCALLTYPE IWiaItem_DeviceDlg_Proxy(
  2385. IWiaItem * This,
  2386. /* [in] */ HWND hwndParent,
  2387. /* [in] */ LONG lFlags,
  2388. /* [in] */ LONG lIntent,
  2389. /* [out] */ LONG *plItemCount,
  2390. /* [out] */ IWiaItem ***ppIWiaItem);
  2391. /* [nocode][helpstring][call_as] */ HRESULT STDMETHODCALLTYPE IWiaItem_DeviceDlg_Stub(
  2392. IWiaItem * This,
  2393. /* [in] */ HWND hwndParent,
  2394. /* [in] */ LONG lFlags,
  2395. /* [in] */ LONG lIntent,
  2396. /* [out] */ LONG *plItemCount,
  2397. /* [out] */ IWiaItem ***pIWiaItem);
  2398. /* [local] */ HRESULT STDMETHODCALLTYPE IEnumWiaItem_Next_Proxy(
  2399. IEnumWiaItem * This,
  2400. /* [in] */ ULONG celt,
  2401. /* [length_is][size_is][out] */ IWiaItem **ppIWiaItem,
  2402. /* [unique][out][in] */ ULONG *pceltFetched);
  2403. /* [helpstring][call_as] */ HRESULT STDMETHODCALLTYPE IEnumWiaItem_Next_Stub(
  2404. IEnumWiaItem * This,
  2405. /* [in] */ ULONG celt,
  2406. /* [length_is][size_is][out] */ IWiaItem **ppIWiaItem,
  2407. /* [unique][out][in] */ ULONG *pceltFetched);
  2408. /* [local] */ HRESULT STDMETHODCALLTYPE IEnumWIA_DEV_CAPS_Next_Proxy(
  2409. IEnumWIA_DEV_CAPS * This,
  2410. /* [in] */ ULONG celt,
  2411. /* [length_is][size_is][out] */ WIA_DEV_CAP *rgelt,
  2412. /* [unique][out][in] */ ULONG *pceltFetched);
  2413. /* [helpstring][call_as] */ HRESULT STDMETHODCALLTYPE IEnumWIA_DEV_CAPS_Next_Stub(
  2414. IEnumWIA_DEV_CAPS * This,
  2415. /* [in] */ ULONG celt,
  2416. /* [length_is][size_is][out] */ WIA_DEV_CAP *rgelt,
  2417. /* [unique][out][in] */ ULONG *pceltFetched);
  2418. /* [local] */ HRESULT STDMETHODCALLTYPE IEnumWIA_FORMAT_INFO_Next_Proxy(
  2419. IEnumWIA_FORMAT_INFO * This,
  2420. /* [in] */ ULONG celt,
  2421. /* [length_is][size_is][out] */ WIA_FORMAT_INFO *rgelt,
  2422. /* [unique][out][in] */ ULONG *pceltFetched);
  2423. /* [helpstring][call_as] */ HRESULT STDMETHODCALLTYPE IEnumWIA_FORMAT_INFO_Next_Stub(
  2424. IEnumWIA_FORMAT_INFO * This,
  2425. /* [in] */ ULONG celt,
  2426. /* [length_is][size_is][out] */ WIA_FORMAT_INFO *rgelt,
  2427. /* [unique][out][in] */ ULONG *pceltFetched);
  2428. /* end of Additional Prototypes */
  2429. #ifdef __cplusplus
  2430. }
  2431. #endif
  2432. #endif