1
0

WMDRMDeviceApp.h 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502
  1. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  2. /* File created by MIDL compiler version 6.00.0361 */
  3. /* at Tue Jan 10 22:44:12 2006
  4. */
  5. /* Compiler settings for \Wmsdk\Wmfsdk95\Wmdm\idl\WMDRMDeviceApp.idl:
  6. Oicf, W1, Zp8, env=Win32 (32b run)
  7. protocol : dce , ms_ext, c_ext, robust
  8. error checks: allocation ref bounds_check enum stub_data
  9. VC __declspec() decoration level:
  10. __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  11. DECLSPEC_UUID(), MIDL_INTERFACE()
  12. */
  13. //@@MIDL_FILE_HEADING( )
  14. #pragma warning( disable: 4049 ) /* more than 64k source lines */
  15. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  16. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  17. #define __REQUIRED_RPCNDR_H_VERSION__ 475
  18. #endif
  19. #include "rpc.h"
  20. #include "rpcndr.h"
  21. #ifndef __RPCNDR_H_VERSION__
  22. #error this stub requires an updated version of <rpcndr.h>
  23. #endif // __RPCNDR_H_VERSION__
  24. #ifndef COM_NO_WINDOWS_H
  25. #include "windows.h"
  26. #include "ole2.h"
  27. #endif /*COM_NO_WINDOWS_H*/
  28. #ifndef __WMDRMDeviceApp_h__
  29. #define __WMDRMDeviceApp_h__
  30. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  31. #pragma once
  32. #endif
  33. /* Forward Declarations */
  34. #ifndef __IWMDRMDeviceApp_FWD_DEFINED__
  35. #define __IWMDRMDeviceApp_FWD_DEFINED__
  36. typedef interface IWMDRMDeviceApp IWMDRMDeviceApp;
  37. #endif /* __IWMDRMDeviceApp_FWD_DEFINED__ */
  38. #ifndef __IWMDRMDeviceApp2_FWD_DEFINED__
  39. #define __IWMDRMDeviceApp2_FWD_DEFINED__
  40. typedef interface IWMDRMDeviceApp2 IWMDRMDeviceApp2;
  41. #endif /* __IWMDRMDeviceApp2_FWD_DEFINED__ */
  42. #ifndef __WMDRMDeviceApp_FWD_DEFINED__
  43. #define __WMDRMDeviceApp_FWD_DEFINED__
  44. #ifdef __cplusplus
  45. typedef class WMDRMDeviceApp WMDRMDeviceApp;
  46. #else
  47. typedef struct WMDRMDeviceApp WMDRMDeviceApp;
  48. #endif /* __cplusplus */
  49. #endif /* __WMDRMDeviceApp_FWD_DEFINED__ */
  50. /* header files for imported files */
  51. #include "oaidl.h"
  52. #include "ocidl.h"
  53. #include "mswmdm.h"
  54. #ifdef __cplusplus
  55. extern "C"{
  56. #endif
  57. void * __RPC_USER MIDL_user_allocate(size_t);
  58. void __RPC_USER MIDL_user_free( void * );
  59. /* interface __MIDL_itf_WMDRMDeviceApp_0000 */
  60. /* [local] */
  61. // WMDRM Device status flags
  62. #define WMDRM_DEVICE_ISWMDRM 0x00000001L
  63. #define WMDRM_DEVICE_NEEDCLOCK 0x00000002L
  64. #define WMDRM_DEVICE_REVOKED 0x00000004L
  65. #define WMDRM_CLIENT_NEEDINDIV 0x00000008L
  66. #define WMDRM_DEVICE_REFRESHCLOCK 0x00000010L
  67. // WMDRM Query Device flags
  68. #define WMDRM_QUERY_DEVICE_ISWMDRM 0x00000001L
  69. #define WMDRM_QUERY_DEVICE_CLOCKSTATUS 0x00000002L
  70. #define WMDRM_QUERY_DEVICE_ISREVOKED 0x00000004L
  71. #define WMDRM_QUERY_CLIENT_INDIVSTATUS 0x00000008L
  72. // ProcessMeterResponse flags
  73. #define WMDRM_METER_RESPONSE_ALL 0x00000000L
  74. #define WMDRM_METER_RESPONSE_PARTIAL 0x00000001L
  75. extern RPC_IF_HANDLE __MIDL_itf_WMDRMDeviceApp_0000_v0_0_c_ifspec;
  76. extern RPC_IF_HANDLE __MIDL_itf_WMDRMDeviceApp_0000_v0_0_s_ifspec;
  77. #ifndef __IWMDRMDeviceApp_INTERFACE_DEFINED__
  78. #define __IWMDRMDeviceApp_INTERFACE_DEFINED__
  79. /* interface IWMDRMDeviceApp */
  80. /* [unique][uuid][object] */
  81. EXTERN_C const IID IID_IWMDRMDeviceApp;
  82. #if defined(__cplusplus) && !defined(CINTERFACE)
  83. MIDL_INTERFACE("93AFDB44-B1E1-411d-B89B-75AD4F97882B")
  84. IWMDRMDeviceApp : public IUnknown
  85. {
  86. public:
  87. virtual HRESULT STDMETHODCALLTYPE GenerateMeterChallenge(
  88. /* [in] */ IWMDMDevice *pDevice,
  89. /* [in] */ BSTR bstrMeterCert,
  90. /* [out] */ BSTR *pbstrMeterURL,
  91. /* [out] */ BSTR *pbstrMeterData) = 0;
  92. virtual HRESULT STDMETHODCALLTYPE ProcessMeterResponse(
  93. /* [in] */ IWMDMDevice *pDevice,
  94. /* [in] */ BYTE *pbResponse,
  95. /* [in] */ DWORD cbResponse,
  96. /* [out] */ DWORD *pdwFlags) = 0;
  97. virtual HRESULT STDMETHODCALLTYPE QueryDeviceStatus(
  98. /* [in] */ IWMDMDevice *pDevice,
  99. /* [out] */ DWORD *pdwStatus) = 0;
  100. virtual HRESULT STDMETHODCALLTYPE AcquireDeviceData(
  101. /* [in] */ IWMDMDevice *pDevice,
  102. /* [in] */ IWMDMProgress3 *pProgressCallback,
  103. /* [in] */ DWORD dwFlags,
  104. /* [out] */ DWORD *pdwStatus) = 0;
  105. virtual HRESULT STDMETHODCALLTYPE SynchronizeLicenses(
  106. /* [in] */ IWMDMDevice *pDevice,
  107. /* [in] */ IWMDMProgress3 *pProgressCallback,
  108. /* [in] */ DWORD cMinCountThreshold,
  109. /* [in] */ DWORD cMinHoursThreshold) = 0;
  110. };
  111. #else /* C style interface */
  112. typedef struct IWMDRMDeviceAppVtbl
  113. {
  114. BEGIN_INTERFACE
  115. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  116. IWMDRMDeviceApp * This,
  117. /* [in] */ REFIID riid,
  118. /* [iid_is][out] */ void **ppvObject);
  119. ULONG ( STDMETHODCALLTYPE *AddRef )(
  120. IWMDRMDeviceApp * This);
  121. ULONG ( STDMETHODCALLTYPE *Release )(
  122. IWMDRMDeviceApp * This);
  123. HRESULT ( STDMETHODCALLTYPE *GenerateMeterChallenge )(
  124. IWMDRMDeviceApp * This,
  125. /* [in] */ IWMDMDevice *pDevice,
  126. /* [in] */ BSTR bstrMeterCert,
  127. /* [out] */ BSTR *pbstrMeterURL,
  128. /* [out] */ BSTR *pbstrMeterData);
  129. HRESULT ( STDMETHODCALLTYPE *ProcessMeterResponse )(
  130. IWMDRMDeviceApp * This,
  131. /* [in] */ IWMDMDevice *pDevice,
  132. /* [in] */ BYTE *pbResponse,
  133. /* [in] */ DWORD cbResponse,
  134. /* [out] */ DWORD *pdwFlags);
  135. HRESULT ( STDMETHODCALLTYPE *QueryDeviceStatus )(
  136. IWMDRMDeviceApp * This,
  137. /* [in] */ IWMDMDevice *pDevice,
  138. /* [out] */ DWORD *pdwStatus);
  139. HRESULT ( STDMETHODCALLTYPE *AcquireDeviceData )(
  140. IWMDRMDeviceApp * This,
  141. /* [in] */ IWMDMDevice *pDevice,
  142. /* [in] */ IWMDMProgress3 *pProgressCallback,
  143. /* [in] */ DWORD dwFlags,
  144. /* [out] */ DWORD *pdwStatus);
  145. HRESULT ( STDMETHODCALLTYPE *SynchronizeLicenses )(
  146. IWMDRMDeviceApp * This,
  147. /* [in] */ IWMDMDevice *pDevice,
  148. /* [in] */ IWMDMProgress3 *pProgressCallback,
  149. /* [in] */ DWORD cMinCountThreshold,
  150. /* [in] */ DWORD cMinHoursThreshold);
  151. END_INTERFACE
  152. } IWMDRMDeviceAppVtbl;
  153. interface IWMDRMDeviceApp
  154. {
  155. CONST_VTBL struct IWMDRMDeviceAppVtbl *lpVtbl;
  156. };
  157. #ifdef COBJMACROS
  158. #define IWMDRMDeviceApp_QueryInterface(This,riid,ppvObject) \
  159. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  160. #define IWMDRMDeviceApp_AddRef(This) \
  161. (This)->lpVtbl -> AddRef(This)
  162. #define IWMDRMDeviceApp_Release(This) \
  163. (This)->lpVtbl -> Release(This)
  164. #define IWMDRMDeviceApp_GenerateMeterChallenge(This,pDevice,bstrMeterCert,pbstrMeterURL,pbstrMeterData) \
  165. (This)->lpVtbl -> GenerateMeterChallenge(This,pDevice,bstrMeterCert,pbstrMeterURL,pbstrMeterData)
  166. #define IWMDRMDeviceApp_ProcessMeterResponse(This,pDevice,pbResponse,cbResponse,pdwFlags) \
  167. (This)->lpVtbl -> ProcessMeterResponse(This,pDevice,pbResponse,cbResponse,pdwFlags)
  168. #define IWMDRMDeviceApp_QueryDeviceStatus(This,pDevice,pdwStatus) \
  169. (This)->lpVtbl -> QueryDeviceStatus(This,pDevice,pdwStatus)
  170. #define IWMDRMDeviceApp_AcquireDeviceData(This,pDevice,pProgressCallback,dwFlags,pdwStatus) \
  171. (This)->lpVtbl -> AcquireDeviceData(This,pDevice,pProgressCallback,dwFlags,pdwStatus)
  172. #define IWMDRMDeviceApp_SynchronizeLicenses(This,pDevice,pProgressCallback,cMinCountThreshold,cMinHoursThreshold) \
  173. (This)->lpVtbl -> SynchronizeLicenses(This,pDevice,pProgressCallback,cMinCountThreshold,cMinHoursThreshold)
  174. #endif /* COBJMACROS */
  175. #endif /* C style interface */
  176. HRESULT STDMETHODCALLTYPE IWMDRMDeviceApp_GenerateMeterChallenge_Proxy(
  177. IWMDRMDeviceApp * This,
  178. /* [in] */ IWMDMDevice *pDevice,
  179. /* [in] */ BSTR bstrMeterCert,
  180. /* [out] */ BSTR *pbstrMeterURL,
  181. /* [out] */ BSTR *pbstrMeterData);
  182. void __RPC_STUB IWMDRMDeviceApp_GenerateMeterChallenge_Stub(
  183. IRpcStubBuffer *This,
  184. IRpcChannelBuffer *_pRpcChannelBuffer,
  185. PRPC_MESSAGE _pRpcMessage,
  186. DWORD *_pdwStubPhase);
  187. HRESULT STDMETHODCALLTYPE IWMDRMDeviceApp_ProcessMeterResponse_Proxy(
  188. IWMDRMDeviceApp * This,
  189. /* [in] */ IWMDMDevice *pDevice,
  190. /* [in] */ BYTE *pbResponse,
  191. /* [in] */ DWORD cbResponse,
  192. /* [out] */ DWORD *pdwFlags);
  193. void __RPC_STUB IWMDRMDeviceApp_ProcessMeterResponse_Stub(
  194. IRpcStubBuffer *This,
  195. IRpcChannelBuffer *_pRpcChannelBuffer,
  196. PRPC_MESSAGE _pRpcMessage,
  197. DWORD *_pdwStubPhase);
  198. HRESULT STDMETHODCALLTYPE IWMDRMDeviceApp_QueryDeviceStatus_Proxy(
  199. IWMDRMDeviceApp * This,
  200. /* [in] */ IWMDMDevice *pDevice,
  201. /* [out] */ DWORD *pdwStatus);
  202. void __RPC_STUB IWMDRMDeviceApp_QueryDeviceStatus_Stub(
  203. IRpcStubBuffer *This,
  204. IRpcChannelBuffer *_pRpcChannelBuffer,
  205. PRPC_MESSAGE _pRpcMessage,
  206. DWORD *_pdwStubPhase);
  207. HRESULT STDMETHODCALLTYPE IWMDRMDeviceApp_AcquireDeviceData_Proxy(
  208. IWMDRMDeviceApp * This,
  209. /* [in] */ IWMDMDevice *pDevice,
  210. /* [in] */ IWMDMProgress3 *pProgressCallback,
  211. /* [in] */ DWORD dwFlags,
  212. /* [out] */ DWORD *pdwStatus);
  213. void __RPC_STUB IWMDRMDeviceApp_AcquireDeviceData_Stub(
  214. IRpcStubBuffer *This,
  215. IRpcChannelBuffer *_pRpcChannelBuffer,
  216. PRPC_MESSAGE _pRpcMessage,
  217. DWORD *_pdwStubPhase);
  218. HRESULT STDMETHODCALLTYPE IWMDRMDeviceApp_SynchronizeLicenses_Proxy(
  219. IWMDRMDeviceApp * This,
  220. /* [in] */ IWMDMDevice *pDevice,
  221. /* [in] */ IWMDMProgress3 *pProgressCallback,
  222. /* [in] */ DWORD cMinCountThreshold,
  223. /* [in] */ DWORD cMinHoursThreshold);
  224. void __RPC_STUB IWMDRMDeviceApp_SynchronizeLicenses_Stub(
  225. IRpcStubBuffer *This,
  226. IRpcChannelBuffer *_pRpcChannelBuffer,
  227. PRPC_MESSAGE _pRpcMessage,
  228. DWORD *_pdwStubPhase);
  229. #endif /* __IWMDRMDeviceApp_INTERFACE_DEFINED__ */
  230. #ifndef __IWMDRMDeviceApp2_INTERFACE_DEFINED__
  231. #define __IWMDRMDeviceApp2_INTERFACE_DEFINED__
  232. /* interface IWMDRMDeviceApp2 */
  233. /* [unique][uuid][object] */
  234. EXTERN_C const IID IID_IWMDRMDeviceApp2;
  235. #if defined(__cplusplus) && !defined(CINTERFACE)
  236. MIDL_INTERFACE("600D6E55-DEA5-4e4c-9C3A-6BD642A45B9D")
  237. IWMDRMDeviceApp2 : public IWMDRMDeviceApp
  238. {
  239. public:
  240. virtual HRESULT STDMETHODCALLTYPE QueryDeviceStatus2(
  241. /* [in] */ IWMDMDevice *pDevice,
  242. /* [in] */ DWORD dwFlags,
  243. /* [out] */ DWORD *pdwStatus) = 0;
  244. };
  245. #else /* C style interface */
  246. typedef struct IWMDRMDeviceApp2Vtbl
  247. {
  248. BEGIN_INTERFACE
  249. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  250. IWMDRMDeviceApp2 * This,
  251. /* [in] */ REFIID riid,
  252. /* [iid_is][out] */ void **ppvObject);
  253. ULONG ( STDMETHODCALLTYPE *AddRef )(
  254. IWMDRMDeviceApp2 * This);
  255. ULONG ( STDMETHODCALLTYPE *Release )(
  256. IWMDRMDeviceApp2 * This);
  257. HRESULT ( STDMETHODCALLTYPE *GenerateMeterChallenge )(
  258. IWMDRMDeviceApp2 * This,
  259. /* [in] */ IWMDMDevice *pDevice,
  260. /* [in] */ BSTR bstrMeterCert,
  261. /* [out] */ BSTR *pbstrMeterURL,
  262. /* [out] */ BSTR *pbstrMeterData);
  263. HRESULT ( STDMETHODCALLTYPE *ProcessMeterResponse )(
  264. IWMDRMDeviceApp2 * This,
  265. /* [in] */ IWMDMDevice *pDevice,
  266. /* [in] */ BYTE *pbResponse,
  267. /* [in] */ DWORD cbResponse,
  268. /* [out] */ DWORD *pdwFlags);
  269. HRESULT ( STDMETHODCALLTYPE *QueryDeviceStatus )(
  270. IWMDRMDeviceApp2 * This,
  271. /* [in] */ IWMDMDevice *pDevice,
  272. /* [out] */ DWORD *pdwStatus);
  273. HRESULT ( STDMETHODCALLTYPE *AcquireDeviceData )(
  274. IWMDRMDeviceApp2 * This,
  275. /* [in] */ IWMDMDevice *pDevice,
  276. /* [in] */ IWMDMProgress3 *pProgressCallback,
  277. /* [in] */ DWORD dwFlags,
  278. /* [out] */ DWORD *pdwStatus);
  279. HRESULT ( STDMETHODCALLTYPE *SynchronizeLicenses )(
  280. IWMDRMDeviceApp2 * This,
  281. /* [in] */ IWMDMDevice *pDevice,
  282. /* [in] */ IWMDMProgress3 *pProgressCallback,
  283. /* [in] */ DWORD cMinCountThreshold,
  284. /* [in] */ DWORD cMinHoursThreshold);
  285. HRESULT ( STDMETHODCALLTYPE *QueryDeviceStatus2 )(
  286. IWMDRMDeviceApp2 * This,
  287. /* [in] */ IWMDMDevice *pDevice,
  288. /* [in] */ DWORD dwFlags,
  289. /* [out] */ DWORD *pdwStatus);
  290. END_INTERFACE
  291. } IWMDRMDeviceApp2Vtbl;
  292. interface IWMDRMDeviceApp2
  293. {
  294. CONST_VTBL struct IWMDRMDeviceApp2Vtbl *lpVtbl;
  295. };
  296. #ifdef COBJMACROS
  297. #define IWMDRMDeviceApp2_QueryInterface(This,riid,ppvObject) \
  298. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  299. #define IWMDRMDeviceApp2_AddRef(This) \
  300. (This)->lpVtbl -> AddRef(This)
  301. #define IWMDRMDeviceApp2_Release(This) \
  302. (This)->lpVtbl -> Release(This)
  303. #define IWMDRMDeviceApp2_GenerateMeterChallenge(This,pDevice,bstrMeterCert,pbstrMeterURL,pbstrMeterData) \
  304. (This)->lpVtbl -> GenerateMeterChallenge(This,pDevice,bstrMeterCert,pbstrMeterURL,pbstrMeterData)
  305. #define IWMDRMDeviceApp2_ProcessMeterResponse(This,pDevice,pbResponse,cbResponse,pdwFlags) \
  306. (This)->lpVtbl -> ProcessMeterResponse(This,pDevice,pbResponse,cbResponse,pdwFlags)
  307. #define IWMDRMDeviceApp2_QueryDeviceStatus(This,pDevice,pdwStatus) \
  308. (This)->lpVtbl -> QueryDeviceStatus(This,pDevice,pdwStatus)
  309. #define IWMDRMDeviceApp2_AcquireDeviceData(This,pDevice,pProgressCallback,dwFlags,pdwStatus) \
  310. (This)->lpVtbl -> AcquireDeviceData(This,pDevice,pProgressCallback,dwFlags,pdwStatus)
  311. #define IWMDRMDeviceApp2_SynchronizeLicenses(This,pDevice,pProgressCallback,cMinCountThreshold,cMinHoursThreshold) \
  312. (This)->lpVtbl -> SynchronizeLicenses(This,pDevice,pProgressCallback,cMinCountThreshold,cMinHoursThreshold)
  313. #define IWMDRMDeviceApp2_QueryDeviceStatus2(This,pDevice,dwFlags,pdwStatus) \
  314. (This)->lpVtbl -> QueryDeviceStatus2(This,pDevice,dwFlags,pdwStatus)
  315. #endif /* COBJMACROS */
  316. #endif /* C style interface */
  317. HRESULT STDMETHODCALLTYPE IWMDRMDeviceApp2_QueryDeviceStatus2_Proxy(
  318. IWMDRMDeviceApp2 * This,
  319. /* [in] */ IWMDMDevice *pDevice,
  320. /* [in] */ DWORD dwFlags,
  321. /* [out] */ DWORD *pdwStatus);
  322. void __RPC_STUB IWMDRMDeviceApp2_QueryDeviceStatus2_Stub(
  323. IRpcStubBuffer *This,
  324. IRpcChannelBuffer *_pRpcChannelBuffer,
  325. PRPC_MESSAGE _pRpcMessage,
  326. DWORD *_pdwStubPhase);
  327. #endif /* __IWMDRMDeviceApp2_INTERFACE_DEFINED__ */
  328. #ifndef __WMDRMDeviceAppLib_LIBRARY_DEFINED__
  329. #define __WMDRMDeviceAppLib_LIBRARY_DEFINED__
  330. /* library WMDRMDeviceAppLib */
  331. /* [helpstring][version][uuid] */
  332. EXTERN_C const IID LIBID_WMDRMDeviceAppLib;
  333. EXTERN_C const CLSID CLSID_WMDRMDeviceApp;
  334. #ifdef __cplusplus
  335. class DECLSPEC_UUID("5C140836-43DE-11d3-847D-00C04F79DBC0")
  336. WMDRMDeviceApp;
  337. #endif
  338. #endif /* __WMDRMDeviceAppLib_LIBRARY_DEFINED__ */
  339. /* Additional Prototypes for ALL interfaces */
  340. unsigned long __RPC_USER BSTR_UserSize( unsigned long *, unsigned long , BSTR * );
  341. unsigned char * __RPC_USER BSTR_UserMarshal( unsigned long *, unsigned char *, BSTR * );
  342. unsigned char * __RPC_USER BSTR_UserUnmarshal(unsigned long *, unsigned char *, BSTR * );
  343. void __RPC_USER BSTR_UserFree( unsigned long *, BSTR * );
  344. /* end of Additional Prototypes */
  345. #ifdef __cplusplus
  346. }
  347. #endif
  348. #endif