Leaked source code of windows server 2003
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.

2540 lines
81 KiB

  1. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  2. /* File created by MIDL compiler version 6.00.0361 */
  3. /* Compiler settings for upnp.idl:
  4. Oicf, W1, Zp8, env=Win32 (32b run)
  5. protocol : dce , ms_ext, c_ext, robust
  6. error checks: allocation ref bounds_check enum stub_data
  7. VC __declspec() decoration level:
  8. __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  9. DECLSPEC_UUID(), MIDL_INTERFACE()
  10. */
  11. //@@MIDL_FILE_HEADING( )
  12. #pragma warning( disable: 4049 ) /* more than 64k source lines */
  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 __upnp_h__
  27. #define __upnp_h__
  28. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  29. #pragma once
  30. #endif
  31. /* Forward Declarations */
  32. #ifndef __IUPnPDeviceFinder_FWD_DEFINED__
  33. #define __IUPnPDeviceFinder_FWD_DEFINED__
  34. typedef interface IUPnPDeviceFinder IUPnPDeviceFinder;
  35. #endif /* __IUPnPDeviceFinder_FWD_DEFINED__ */
  36. #ifndef __IUPnPDeviceFinderCallback_FWD_DEFINED__
  37. #define __IUPnPDeviceFinderCallback_FWD_DEFINED__
  38. typedef interface IUPnPDeviceFinderCallback IUPnPDeviceFinderCallback;
  39. #endif /* __IUPnPDeviceFinderCallback_FWD_DEFINED__ */
  40. #ifndef __IUPnPServices_FWD_DEFINED__
  41. #define __IUPnPServices_FWD_DEFINED__
  42. typedef interface IUPnPServices IUPnPServices;
  43. #endif /* __IUPnPServices_FWD_DEFINED__ */
  44. #ifndef __IUPnPService_FWD_DEFINED__
  45. #define __IUPnPService_FWD_DEFINED__
  46. typedef interface IUPnPService IUPnPService;
  47. #endif /* __IUPnPService_FWD_DEFINED__ */
  48. #ifndef __IUPnPServiceCallback_FWD_DEFINED__
  49. #define __IUPnPServiceCallback_FWD_DEFINED__
  50. typedef interface IUPnPServiceCallback IUPnPServiceCallback;
  51. #endif /* __IUPnPServiceCallback_FWD_DEFINED__ */
  52. #ifndef __IUPnPDevices_FWD_DEFINED__
  53. #define __IUPnPDevices_FWD_DEFINED__
  54. typedef interface IUPnPDevices IUPnPDevices;
  55. #endif /* __IUPnPDevices_FWD_DEFINED__ */
  56. #ifndef __IUPnPDevice_FWD_DEFINED__
  57. #define __IUPnPDevice_FWD_DEFINED__
  58. typedef interface IUPnPDevice IUPnPDevice;
  59. #endif /* __IUPnPDevice_FWD_DEFINED__ */
  60. #ifndef __IUPnPDeviceDocumentAccess_FWD_DEFINED__
  61. #define __IUPnPDeviceDocumentAccess_FWD_DEFINED__
  62. typedef interface IUPnPDeviceDocumentAccess IUPnPDeviceDocumentAccess;
  63. #endif /* __IUPnPDeviceDocumentAccess_FWD_DEFINED__ */
  64. #ifndef __IUPnPDescriptionDocument_FWD_DEFINED__
  65. #define __IUPnPDescriptionDocument_FWD_DEFINED__
  66. typedef interface IUPnPDescriptionDocument IUPnPDescriptionDocument;
  67. #endif /* __IUPnPDescriptionDocument_FWD_DEFINED__ */
  68. #ifndef __IUPnPDescriptionDocumentCallback_FWD_DEFINED__
  69. #define __IUPnPDescriptionDocumentCallback_FWD_DEFINED__
  70. typedef interface IUPnPDescriptionDocumentCallback IUPnPDescriptionDocumentCallback;
  71. #endif /* __IUPnPDescriptionDocumentCallback_FWD_DEFINED__ */
  72. #ifndef __UPnPDeviceFinder_FWD_DEFINED__
  73. #define __UPnPDeviceFinder_FWD_DEFINED__
  74. #ifdef __cplusplus
  75. typedef class UPnPDeviceFinder UPnPDeviceFinder;
  76. #else
  77. typedef struct UPnPDeviceFinder UPnPDeviceFinder;
  78. #endif /* __cplusplus */
  79. #endif /* __UPnPDeviceFinder_FWD_DEFINED__ */
  80. #ifndef __UPnPDevices_FWD_DEFINED__
  81. #define __UPnPDevices_FWD_DEFINED__
  82. #ifdef __cplusplus
  83. typedef class UPnPDevices UPnPDevices;
  84. #else
  85. typedef struct UPnPDevices UPnPDevices;
  86. #endif /* __cplusplus */
  87. #endif /* __UPnPDevices_FWD_DEFINED__ */
  88. #ifndef __UPnPDevice_FWD_DEFINED__
  89. #define __UPnPDevice_FWD_DEFINED__
  90. #ifdef __cplusplus
  91. typedef class UPnPDevice UPnPDevice;
  92. #else
  93. typedef struct UPnPDevice UPnPDevice;
  94. #endif /* __cplusplus */
  95. #endif /* __UPnPDevice_FWD_DEFINED__ */
  96. #ifndef __UPnPServices_FWD_DEFINED__
  97. #define __UPnPServices_FWD_DEFINED__
  98. #ifdef __cplusplus
  99. typedef class UPnPServices UPnPServices;
  100. #else
  101. typedef struct UPnPServices UPnPServices;
  102. #endif /* __cplusplus */
  103. #endif /* __UPnPServices_FWD_DEFINED__ */
  104. #ifndef __UPnPService_FWD_DEFINED__
  105. #define __UPnPService_FWD_DEFINED__
  106. #ifdef __cplusplus
  107. typedef class UPnPService UPnPService;
  108. #else
  109. typedef struct UPnPService UPnPService;
  110. #endif /* __cplusplus */
  111. #endif /* __UPnPService_FWD_DEFINED__ */
  112. #ifndef __UPnPDescriptionDocument_FWD_DEFINED__
  113. #define __UPnPDescriptionDocument_FWD_DEFINED__
  114. #ifdef __cplusplus
  115. typedef class UPnPDescriptionDocument UPnPDescriptionDocument;
  116. #else
  117. typedef struct UPnPDescriptionDocument UPnPDescriptionDocument;
  118. #endif /* __cplusplus */
  119. #endif /* __UPnPDescriptionDocument_FWD_DEFINED__ */
  120. #ifndef __IUPnPDeviceHostSetup_FWD_DEFINED__
  121. #define __IUPnPDeviceHostSetup_FWD_DEFINED__
  122. typedef interface IUPnPDeviceHostSetup IUPnPDeviceHostSetup;
  123. #endif /* __IUPnPDeviceHostSetup_FWD_DEFINED__ */
  124. #ifndef __UPnPDeviceHostSetup_FWD_DEFINED__
  125. #define __UPnPDeviceHostSetup_FWD_DEFINED__
  126. #ifdef __cplusplus
  127. typedef class UPnPDeviceHostSetup UPnPDeviceHostSetup;
  128. #else
  129. typedef struct UPnPDeviceHostSetup UPnPDeviceHostSetup;
  130. #endif /* __cplusplus */
  131. #endif /* __UPnPDeviceHostSetup_FWD_DEFINED__ */
  132. #ifndef __IUPnPDeviceDocumentAccess_FWD_DEFINED__
  133. #define __IUPnPDeviceDocumentAccess_FWD_DEFINED__
  134. typedef interface IUPnPDeviceDocumentAccess IUPnPDeviceDocumentAccess;
  135. #endif /* __IUPnPDeviceDocumentAccess_FWD_DEFINED__ */
  136. /* header files for imported files */
  137. #include "oaidl.h"
  138. #include "ocidl.h"
  139. #ifdef __cplusplus
  140. extern "C"{
  141. #endif
  142. void * __RPC_USER MIDL_user_allocate(size_t);
  143. void __RPC_USER MIDL_user_free( void * );
  144. /* interface __MIDL_itf_upnp_0000 */
  145. /* [local] */
  146. //+-------------------------------------------------------------------------
  147. //
  148. // Microsoft Windows
  149. // Copyright (c) Microsoft Corporation. All rights reserved.
  150. //
  151. //--------------------------------------------------------------------------
  152. #define UPNP_E_ROOT_ELEMENT_EXPECTED MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0200)
  153. #define UPNP_E_DEVICE_ELEMENT_EXPECTED MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0201)
  154. #define UPNP_E_SERVICE_ELEMENT_EXPECTED MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0202)
  155. #define UPNP_E_SERVICE_NODE_INCOMPLETE MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0203)
  156. #define UPNP_E_DEVICE_NODE_INCOMPLETE MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0204)
  157. #define UPNP_E_ICON_ELEMENT_EXPECTED MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0205)
  158. #define UPNP_E_ICON_NODE_INCOMPLETE MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0206)
  159. #define UPNP_E_INVALID_ACTION MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0207)
  160. #define UPNP_E_INVALID_ARGUMENTS MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0208)
  161. #define UPNP_E_OUT_OF_SYNC MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0209)
  162. #define UPNP_E_ACTION_REQUEST_FAILED MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0210)
  163. #define UPNP_E_TRANSPORT_ERROR MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0211)
  164. #define UPNP_E_VARIABLE_VALUE_UNKNOWN MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0212)
  165. #define UPNP_E_INVALID_VARIABLE MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0213)
  166. #define UPNP_E_DEVICE_ERROR MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0214)
  167. #define UPNP_E_PROTOCOL_ERROR MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0215)
  168. #define UPNP_E_ERROR_PROCESSING_RESPONSE MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0216)
  169. #define UPNP_E_DEVICE_TIMEOUT MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0217)
  170. #define UPNP_E_INVALID_DOCUMENT MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0500)
  171. #define UPNP_E_EVENT_SUBSCRIPTION_FAILED MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0501)
  172. #define FAULT_INVALID_ACTION 401
  173. #define FAULT_INVALID_ARG 402
  174. #define FAULT_INVALID_SEQUENCE_NUMBER 403
  175. #define FAULT_INVALID_VARIABLE 404
  176. #define FAULT_DEVICE_INTERNAL_ERROR 501
  177. #define FAULT_ACTION_SPECIFIC_BASE 600
  178. #define FAULT_ACTION_SPECIFIC_MAX 899
  179. #define UPNP_E_ACTION_SPECIFIC_BASE MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0x0300)
  180. #define UPNP_E_ACTION_SPECIFIC_MAX (UPNP_E_ACTION_SPECIFIC_BASE + (FAULT_ACTION_SPECIFIC_MAX - FAULT_ACTION_SPECIFIC_BASE))
  181. extern RPC_IF_HANDLE __MIDL_itf_upnp_0000_v0_0_c_ifspec;
  182. extern RPC_IF_HANDLE __MIDL_itf_upnp_0000_v0_0_s_ifspec;
  183. #ifndef __IUPnPDeviceFinder_INTERFACE_DEFINED__
  184. #define __IUPnPDeviceFinder_INTERFACE_DEFINED__
  185. /* interface IUPnPDeviceFinder */
  186. /* [nonextensible][unique][oleautomation][helpstring][dual][uuid][object] */
  187. EXTERN_C const IID IID_IUPnPDeviceFinder;
  188. #if defined(__cplusplus) && !defined(CINTERFACE)
  189. MIDL_INTERFACE("ADDA3D55-6F72-4319-BFF9-18600A539B10")
  190. IUPnPDeviceFinder : public IDispatch
  191. {
  192. public:
  193. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE FindByType(
  194. /* [in] */ BSTR bstrTypeURI,
  195. /* [in] */ DWORD dwFlags,
  196. /* [retval][out] */ IUPnPDevices **pDevices) = 0;
  197. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE CreateAsyncFind(
  198. /* [in] */ BSTR bstrTypeURI,
  199. /* [in] */ DWORD dwFlags,
  200. /* [in] */ IUnknown *punkDeviceFinderCallback,
  201. /* [retval][out] */ LONG *plFindData) = 0;
  202. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE StartAsyncFind(
  203. /* [in] */ LONG lFindData) = 0;
  204. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE CancelAsyncFind(
  205. /* [in] */ LONG lFindData) = 0;
  206. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE FindByUDN(
  207. /* [in] */ BSTR bstrUDN,
  208. /* [retval][out] */ IUPnPDevice **pDevice) = 0;
  209. };
  210. #else /* C style interface */
  211. typedef struct IUPnPDeviceFinderVtbl
  212. {
  213. BEGIN_INTERFACE
  214. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  215. IUPnPDeviceFinder * This,
  216. /* [in] */ REFIID riid,
  217. /* [iid_is][out] */ void **ppvObject);
  218. ULONG ( STDMETHODCALLTYPE *AddRef )(
  219. IUPnPDeviceFinder * This);
  220. ULONG ( STDMETHODCALLTYPE *Release )(
  221. IUPnPDeviceFinder * This);
  222. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  223. IUPnPDeviceFinder * This,
  224. /* [out] */ UINT *pctinfo);
  225. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  226. IUPnPDeviceFinder * This,
  227. /* [in] */ UINT iTInfo,
  228. /* [in] */ LCID lcid,
  229. /* [out] */ ITypeInfo **ppTInfo);
  230. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  231. IUPnPDeviceFinder * This,
  232. /* [in] */ REFIID riid,
  233. /* [size_is][in] */ LPOLESTR *rgszNames,
  234. /* [in] */ UINT cNames,
  235. /* [in] */ LCID lcid,
  236. /* [size_is][out] */ DISPID *rgDispId);
  237. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  238. IUPnPDeviceFinder * This,
  239. /* [in] */ DISPID dispIdMember,
  240. /* [in] */ REFIID riid,
  241. /* [in] */ LCID lcid,
  242. /* [in] */ WORD wFlags,
  243. /* [out][in] */ DISPPARAMS *pDispParams,
  244. /* [out] */ VARIANT *pVarResult,
  245. /* [out] */ EXCEPINFO *pExcepInfo,
  246. /* [out] */ UINT *puArgErr);
  247. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *FindByType )(
  248. IUPnPDeviceFinder * This,
  249. /* [in] */ BSTR bstrTypeURI,
  250. /* [in] */ DWORD dwFlags,
  251. /* [retval][out] */ IUPnPDevices **pDevices);
  252. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *CreateAsyncFind )(
  253. IUPnPDeviceFinder * This,
  254. /* [in] */ BSTR bstrTypeURI,
  255. /* [in] */ DWORD dwFlags,
  256. /* [in] */ IUnknown *punkDeviceFinderCallback,
  257. /* [retval][out] */ LONG *plFindData);
  258. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *StartAsyncFind )(
  259. IUPnPDeviceFinder * This,
  260. /* [in] */ LONG lFindData);
  261. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *CancelAsyncFind )(
  262. IUPnPDeviceFinder * This,
  263. /* [in] */ LONG lFindData);
  264. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *FindByUDN )(
  265. IUPnPDeviceFinder * This,
  266. /* [in] */ BSTR bstrUDN,
  267. /* [retval][out] */ IUPnPDevice **pDevice);
  268. END_INTERFACE
  269. } IUPnPDeviceFinderVtbl;
  270. interface IUPnPDeviceFinder
  271. {
  272. CONST_VTBL struct IUPnPDeviceFinderVtbl *lpVtbl;
  273. };
  274. #ifdef COBJMACROS
  275. #define IUPnPDeviceFinder_QueryInterface(This,riid,ppvObject) \
  276. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  277. #define IUPnPDeviceFinder_AddRef(This) \
  278. (This)->lpVtbl -> AddRef(This)
  279. #define IUPnPDeviceFinder_Release(This) \
  280. (This)->lpVtbl -> Release(This)
  281. #define IUPnPDeviceFinder_GetTypeInfoCount(This,pctinfo) \
  282. (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  283. #define IUPnPDeviceFinder_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  284. (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  285. #define IUPnPDeviceFinder_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  286. (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  287. #define IUPnPDeviceFinder_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  288. (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  289. #define IUPnPDeviceFinder_FindByType(This,bstrTypeURI,dwFlags,pDevices) \
  290. (This)->lpVtbl -> FindByType(This,bstrTypeURI,dwFlags,pDevices)
  291. #define IUPnPDeviceFinder_CreateAsyncFind(This,bstrTypeURI,dwFlags,punkDeviceFinderCallback,plFindData) \
  292. (This)->lpVtbl -> CreateAsyncFind(This,bstrTypeURI,dwFlags,punkDeviceFinderCallback,plFindData)
  293. #define IUPnPDeviceFinder_StartAsyncFind(This,lFindData) \
  294. (This)->lpVtbl -> StartAsyncFind(This,lFindData)
  295. #define IUPnPDeviceFinder_CancelAsyncFind(This,lFindData) \
  296. (This)->lpVtbl -> CancelAsyncFind(This,lFindData)
  297. #define IUPnPDeviceFinder_FindByUDN(This,bstrUDN,pDevice) \
  298. (This)->lpVtbl -> FindByUDN(This,bstrUDN,pDevice)
  299. #endif /* COBJMACROS */
  300. #endif /* C style interface */
  301. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IUPnPDeviceFinder_FindByType_Proxy(
  302. IUPnPDeviceFinder * This,
  303. /* [in] */ BSTR bstrTypeURI,
  304. /* [in] */ DWORD dwFlags,
  305. /* [retval][out] */ IUPnPDevices **pDevices);
  306. void __RPC_STUB IUPnPDeviceFinder_FindByType_Stub(
  307. IRpcStubBuffer *This,
  308. IRpcChannelBuffer *_pRpcChannelBuffer,
  309. PRPC_MESSAGE _pRpcMessage,
  310. DWORD *_pdwStubPhase);
  311. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IUPnPDeviceFinder_CreateAsyncFind_Proxy(
  312. IUPnPDeviceFinder * This,
  313. /* [in] */ BSTR bstrTypeURI,
  314. /* [in] */ DWORD dwFlags,
  315. /* [in] */ IUnknown *punkDeviceFinderCallback,
  316. /* [retval][out] */ LONG *plFindData);
  317. void __RPC_STUB IUPnPDeviceFinder_CreateAsyncFind_Stub(
  318. IRpcStubBuffer *This,
  319. IRpcChannelBuffer *_pRpcChannelBuffer,
  320. PRPC_MESSAGE _pRpcMessage,
  321. DWORD *_pdwStubPhase);
  322. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IUPnPDeviceFinder_StartAsyncFind_Proxy(
  323. IUPnPDeviceFinder * This,
  324. /* [in] */ LONG lFindData);
  325. void __RPC_STUB IUPnPDeviceFinder_StartAsyncFind_Stub(
  326. IRpcStubBuffer *This,
  327. IRpcChannelBuffer *_pRpcChannelBuffer,
  328. PRPC_MESSAGE _pRpcMessage,
  329. DWORD *_pdwStubPhase);
  330. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IUPnPDeviceFinder_CancelAsyncFind_Proxy(
  331. IUPnPDeviceFinder * This,
  332. /* [in] */ LONG lFindData);
  333. void __RPC_STUB IUPnPDeviceFinder_CancelAsyncFind_Stub(
  334. IRpcStubBuffer *This,
  335. IRpcChannelBuffer *_pRpcChannelBuffer,
  336. PRPC_MESSAGE _pRpcMessage,
  337. DWORD *_pdwStubPhase);
  338. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IUPnPDeviceFinder_FindByUDN_Proxy(
  339. IUPnPDeviceFinder * This,
  340. /* [in] */ BSTR bstrUDN,
  341. /* [retval][out] */ IUPnPDevice **pDevice);
  342. void __RPC_STUB IUPnPDeviceFinder_FindByUDN_Stub(
  343. IRpcStubBuffer *This,
  344. IRpcChannelBuffer *_pRpcChannelBuffer,
  345. PRPC_MESSAGE _pRpcMessage,
  346. DWORD *_pdwStubPhase);
  347. #endif /* __IUPnPDeviceFinder_INTERFACE_DEFINED__ */
  348. #ifndef __IUPnPDeviceFinderCallback_INTERFACE_DEFINED__
  349. #define __IUPnPDeviceFinderCallback_INTERFACE_DEFINED__
  350. /* interface IUPnPDeviceFinderCallback */
  351. /* [unique][uuid][object] */
  352. EXTERN_C const IID IID_IUPnPDeviceFinderCallback;
  353. #if defined(__cplusplus) && !defined(CINTERFACE)
  354. MIDL_INTERFACE("415A984A-88B3-49F3-92AF-0508BEDF0D6C")
  355. IUPnPDeviceFinderCallback : public IUnknown
  356. {
  357. public:
  358. virtual HRESULT STDMETHODCALLTYPE DeviceAdded(
  359. /* [in] */ LONG lFindData,
  360. /* [in] */ IUPnPDevice *pDevice) = 0;
  361. virtual HRESULT STDMETHODCALLTYPE DeviceRemoved(
  362. /* [in] */ LONG lFindData,
  363. /* [in] */ BSTR bstrUDN) = 0;
  364. virtual HRESULT STDMETHODCALLTYPE SearchComplete(
  365. /* [in] */ LONG lFindData) = 0;
  366. };
  367. #else /* C style interface */
  368. typedef struct IUPnPDeviceFinderCallbackVtbl
  369. {
  370. BEGIN_INTERFACE
  371. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  372. IUPnPDeviceFinderCallback * This,
  373. /* [in] */ REFIID riid,
  374. /* [iid_is][out] */ void **ppvObject);
  375. ULONG ( STDMETHODCALLTYPE *AddRef )(
  376. IUPnPDeviceFinderCallback * This);
  377. ULONG ( STDMETHODCALLTYPE *Release )(
  378. IUPnPDeviceFinderCallback * This);
  379. HRESULT ( STDMETHODCALLTYPE *DeviceAdded )(
  380. IUPnPDeviceFinderCallback * This,
  381. /* [in] */ LONG lFindData,
  382. /* [in] */ IUPnPDevice *pDevice);
  383. HRESULT ( STDMETHODCALLTYPE *DeviceRemoved )(
  384. IUPnPDeviceFinderCallback * This,
  385. /* [in] */ LONG lFindData,
  386. /* [in] */ BSTR bstrUDN);
  387. HRESULT ( STDMETHODCALLTYPE *SearchComplete )(
  388. IUPnPDeviceFinderCallback * This,
  389. /* [in] */ LONG lFindData);
  390. END_INTERFACE
  391. } IUPnPDeviceFinderCallbackVtbl;
  392. interface IUPnPDeviceFinderCallback
  393. {
  394. CONST_VTBL struct IUPnPDeviceFinderCallbackVtbl *lpVtbl;
  395. };
  396. #ifdef COBJMACROS
  397. #define IUPnPDeviceFinderCallback_QueryInterface(This,riid,ppvObject) \
  398. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  399. #define IUPnPDeviceFinderCallback_AddRef(This) \
  400. (This)->lpVtbl -> AddRef(This)
  401. #define IUPnPDeviceFinderCallback_Release(This) \
  402. (This)->lpVtbl -> Release(This)
  403. #define IUPnPDeviceFinderCallback_DeviceAdded(This,lFindData,pDevice) \
  404. (This)->lpVtbl -> DeviceAdded(This,lFindData,pDevice)
  405. #define IUPnPDeviceFinderCallback_DeviceRemoved(This,lFindData,bstrUDN) \
  406. (This)->lpVtbl -> DeviceRemoved(This,lFindData,bstrUDN)
  407. #define IUPnPDeviceFinderCallback_SearchComplete(This,lFindData) \
  408. (This)->lpVtbl -> SearchComplete(This,lFindData)
  409. #endif /* COBJMACROS */
  410. #endif /* C style interface */
  411. HRESULT STDMETHODCALLTYPE IUPnPDeviceFinderCallback_DeviceAdded_Proxy(
  412. IUPnPDeviceFinderCallback * This,
  413. /* [in] */ LONG lFindData,
  414. /* [in] */ IUPnPDevice *pDevice);
  415. void __RPC_STUB IUPnPDeviceFinderCallback_DeviceAdded_Stub(
  416. IRpcStubBuffer *This,
  417. IRpcChannelBuffer *_pRpcChannelBuffer,
  418. PRPC_MESSAGE _pRpcMessage,
  419. DWORD *_pdwStubPhase);
  420. HRESULT STDMETHODCALLTYPE IUPnPDeviceFinderCallback_DeviceRemoved_Proxy(
  421. IUPnPDeviceFinderCallback * This,
  422. /* [in] */ LONG lFindData,
  423. /* [in] */ BSTR bstrUDN);
  424. void __RPC_STUB IUPnPDeviceFinderCallback_DeviceRemoved_Stub(
  425. IRpcStubBuffer *This,
  426. IRpcChannelBuffer *_pRpcChannelBuffer,
  427. PRPC_MESSAGE _pRpcMessage,
  428. DWORD *_pdwStubPhase);
  429. HRESULT STDMETHODCALLTYPE IUPnPDeviceFinderCallback_SearchComplete_Proxy(
  430. IUPnPDeviceFinderCallback * This,
  431. /* [in] */ LONG lFindData);
  432. void __RPC_STUB IUPnPDeviceFinderCallback_SearchComplete_Stub(
  433. IRpcStubBuffer *This,
  434. IRpcChannelBuffer *_pRpcChannelBuffer,
  435. PRPC_MESSAGE _pRpcMessage,
  436. DWORD *_pdwStubPhase);
  437. #endif /* __IUPnPDeviceFinderCallback_INTERFACE_DEFINED__ */
  438. #ifndef __IUPnPServices_INTERFACE_DEFINED__
  439. #define __IUPnPServices_INTERFACE_DEFINED__
  440. /* interface IUPnPServices */
  441. /* [nonextensible][unique][helpstring][dual][uuid][object] */
  442. EXTERN_C const IID IID_IUPnPServices;
  443. #if defined(__cplusplus) && !defined(CINTERFACE)
  444. MIDL_INTERFACE("3F8C8E9E-9A7A-4DC8-BC41-FF31FA374956")
  445. IUPnPServices : public IDispatch
  446. {
  447. public:
  448. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count(
  449. /* [retval][out] */ long *plCount) = 0;
  450. virtual /* [helpstring][hidden][restricted][id][propget] */ HRESULT STDMETHODCALLTYPE get__NewEnum(
  451. /* [retval][out] */ LPUNKNOWN *ppunk) = 0;
  452. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item(
  453. /* [in] */ BSTR bstrServiceId,
  454. /* [retval][out] */ IUPnPService **ppService) = 0;
  455. };
  456. #else /* C style interface */
  457. typedef struct IUPnPServicesVtbl
  458. {
  459. BEGIN_INTERFACE
  460. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  461. IUPnPServices * This,
  462. /* [in] */ REFIID riid,
  463. /* [iid_is][out] */ void **ppvObject);
  464. ULONG ( STDMETHODCALLTYPE *AddRef )(
  465. IUPnPServices * This);
  466. ULONG ( STDMETHODCALLTYPE *Release )(
  467. IUPnPServices * This);
  468. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  469. IUPnPServices * This,
  470. /* [out] */ UINT *pctinfo);
  471. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  472. IUPnPServices * This,
  473. /* [in] */ UINT iTInfo,
  474. /* [in] */ LCID lcid,
  475. /* [out] */ ITypeInfo **ppTInfo);
  476. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  477. IUPnPServices * This,
  478. /* [in] */ REFIID riid,
  479. /* [size_is][in] */ LPOLESTR *rgszNames,
  480. /* [in] */ UINT cNames,
  481. /* [in] */ LCID lcid,
  482. /* [size_is][out] */ DISPID *rgDispId);
  483. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  484. IUPnPServices * This,
  485. /* [in] */ DISPID dispIdMember,
  486. /* [in] */ REFIID riid,
  487. /* [in] */ LCID lcid,
  488. /* [in] */ WORD wFlags,
  489. /* [out][in] */ DISPPARAMS *pDispParams,
  490. /* [out] */ VARIANT *pVarResult,
  491. /* [out] */ EXCEPINFO *pExcepInfo,
  492. /* [out] */ UINT *puArgErr);
  493. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )(
  494. IUPnPServices * This,
  495. /* [retval][out] */ long *plCount);
  496. /* [helpstring][hidden][restricted][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__NewEnum )(
  497. IUPnPServices * This,
  498. /* [retval][out] */ LPUNKNOWN *ppunk);
  499. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Item )(
  500. IUPnPServices * This,
  501. /* [in] */ BSTR bstrServiceId,
  502. /* [retval][out] */ IUPnPService **ppService);
  503. END_INTERFACE
  504. } IUPnPServicesVtbl;
  505. interface IUPnPServices
  506. {
  507. CONST_VTBL struct IUPnPServicesVtbl *lpVtbl;
  508. };
  509. #ifdef COBJMACROS
  510. #define IUPnPServices_QueryInterface(This,riid,ppvObject) \
  511. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  512. #define IUPnPServices_AddRef(This) \
  513. (This)->lpVtbl -> AddRef(This)
  514. #define IUPnPServices_Release(This) \
  515. (This)->lpVtbl -> Release(This)
  516. #define IUPnPServices_GetTypeInfoCount(This,pctinfo) \
  517. (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  518. #define IUPnPServices_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  519. (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  520. #define IUPnPServices_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  521. (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  522. #define IUPnPServices_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  523. (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  524. #define IUPnPServices_get_Count(This,plCount) \
  525. (This)->lpVtbl -> get_Count(This,plCount)
  526. #define IUPnPServices_get__NewEnum(This,ppunk) \
  527. (This)->lpVtbl -> get__NewEnum(This,ppunk)
  528. #define IUPnPServices_get_Item(This,bstrServiceId,ppService) \
  529. (This)->lpVtbl -> get_Item(This,bstrServiceId,ppService)
  530. #endif /* COBJMACROS */
  531. #endif /* C style interface */
  532. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUPnPServices_get_Count_Proxy(
  533. IUPnPServices * This,
  534. /* [retval][out] */ long *plCount);
  535. void __RPC_STUB IUPnPServices_get_Count_Stub(
  536. IRpcStubBuffer *This,
  537. IRpcChannelBuffer *_pRpcChannelBuffer,
  538. PRPC_MESSAGE _pRpcMessage,
  539. DWORD *_pdwStubPhase);
  540. /* [helpstring][hidden][restricted][id][propget] */ HRESULT STDMETHODCALLTYPE IUPnPServices_get__NewEnum_Proxy(
  541. IUPnPServices * This,
  542. /* [retval][out] */ LPUNKNOWN *ppunk);
  543. void __RPC_STUB IUPnPServices_get__NewEnum_Stub(
  544. IRpcStubBuffer *This,
  545. IRpcChannelBuffer *_pRpcChannelBuffer,
  546. PRPC_MESSAGE _pRpcMessage,
  547. DWORD *_pdwStubPhase);
  548. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUPnPServices_get_Item_Proxy(
  549. IUPnPServices * This,
  550. /* [in] */ BSTR bstrServiceId,
  551. /* [retval][out] */ IUPnPService **ppService);
  552. void __RPC_STUB IUPnPServices_get_Item_Stub(
  553. IRpcStubBuffer *This,
  554. IRpcChannelBuffer *_pRpcChannelBuffer,
  555. PRPC_MESSAGE _pRpcMessage,
  556. DWORD *_pdwStubPhase);
  557. #endif /* __IUPnPServices_INTERFACE_DEFINED__ */
  558. #ifndef __IUPnPService_INTERFACE_DEFINED__
  559. #define __IUPnPService_INTERFACE_DEFINED__
  560. /* interface IUPnPService */
  561. /* [nonextensible][unique][oleautomation][helpstring][dual][uuid][object] */
  562. EXTERN_C const IID IID_IUPnPService;
  563. #if defined(__cplusplus) && !defined(CINTERFACE)
  564. MIDL_INTERFACE("A295019C-DC65-47DD-90DC-7FE918A1AB44")
  565. IUPnPService : public IDispatch
  566. {
  567. public:
  568. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE QueryStateVariable(
  569. /* [in] */ BSTR bstrVariableName,
  570. /* [retval][out] */ VARIANT *pValue) = 0;
  571. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE InvokeAction(
  572. /* [in] */ BSTR bstrActionName,
  573. /* [in] */ VARIANT vInActionArgs,
  574. /* [out][in] */ VARIANT *pvOutActionArgs,
  575. /* [retval][out] */ VARIANT *pvRetVal) = 0;
  576. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ServiceTypeIdentifier(
  577. /* [retval][out] */ BSTR *pVal) = 0;
  578. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddCallback(
  579. /* [in] */ IUnknown *pUnkCallback) = 0;
  580. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Id(
  581. /* [retval][out] */ BSTR *pbstrId) = 0;
  582. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LastTransportStatus(
  583. /* [retval][out] */ long *plValue) = 0;
  584. };
  585. #else /* C style interface */
  586. typedef struct IUPnPServiceVtbl
  587. {
  588. BEGIN_INTERFACE
  589. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  590. IUPnPService * This,
  591. /* [in] */ REFIID riid,
  592. /* [iid_is][out] */ void **ppvObject);
  593. ULONG ( STDMETHODCALLTYPE *AddRef )(
  594. IUPnPService * This);
  595. ULONG ( STDMETHODCALLTYPE *Release )(
  596. IUPnPService * This);
  597. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  598. IUPnPService * This,
  599. /* [out] */ UINT *pctinfo);
  600. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  601. IUPnPService * This,
  602. /* [in] */ UINT iTInfo,
  603. /* [in] */ LCID lcid,
  604. /* [out] */ ITypeInfo **ppTInfo);
  605. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  606. IUPnPService * This,
  607. /* [in] */ REFIID riid,
  608. /* [size_is][in] */ LPOLESTR *rgszNames,
  609. /* [in] */ UINT cNames,
  610. /* [in] */ LCID lcid,
  611. /* [size_is][out] */ DISPID *rgDispId);
  612. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  613. IUPnPService * This,
  614. /* [in] */ DISPID dispIdMember,
  615. /* [in] */ REFIID riid,
  616. /* [in] */ LCID lcid,
  617. /* [in] */ WORD wFlags,
  618. /* [out][in] */ DISPPARAMS *pDispParams,
  619. /* [out] */ VARIANT *pVarResult,
  620. /* [out] */ EXCEPINFO *pExcepInfo,
  621. /* [out] */ UINT *puArgErr);
  622. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *QueryStateVariable )(
  623. IUPnPService * This,
  624. /* [in] */ BSTR bstrVariableName,
  625. /* [retval][out] */ VARIANT *pValue);
  626. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *InvokeAction )(
  627. IUPnPService * This,
  628. /* [in] */ BSTR bstrActionName,
  629. /* [in] */ VARIANT vInActionArgs,
  630. /* [out][in] */ VARIANT *pvOutActionArgs,
  631. /* [retval][out] */ VARIANT *pvRetVal);
  632. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ServiceTypeIdentifier )(
  633. IUPnPService * This,
  634. /* [retval][out] */ BSTR *pVal);
  635. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddCallback )(
  636. IUPnPService * This,
  637. /* [in] */ IUnknown *pUnkCallback);
  638. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Id )(
  639. IUPnPService * This,
  640. /* [retval][out] */ BSTR *pbstrId);
  641. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LastTransportStatus )(
  642. IUPnPService * This,
  643. /* [retval][out] */ long *plValue);
  644. END_INTERFACE
  645. } IUPnPServiceVtbl;
  646. interface IUPnPService
  647. {
  648. CONST_VTBL struct IUPnPServiceVtbl *lpVtbl;
  649. };
  650. #ifdef COBJMACROS
  651. #define IUPnPService_QueryInterface(This,riid,ppvObject) \
  652. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  653. #define IUPnPService_AddRef(This) \
  654. (This)->lpVtbl -> AddRef(This)
  655. #define IUPnPService_Release(This) \
  656. (This)->lpVtbl -> Release(This)
  657. #define IUPnPService_GetTypeInfoCount(This,pctinfo) \
  658. (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  659. #define IUPnPService_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  660. (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  661. #define IUPnPService_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  662. (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  663. #define IUPnPService_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  664. (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  665. #define IUPnPService_QueryStateVariable(This,bstrVariableName,pValue) \
  666. (This)->lpVtbl -> QueryStateVariable(This,bstrVariableName,pValue)
  667. #define IUPnPService_InvokeAction(This,bstrActionName,vInActionArgs,pvOutActionArgs,pvRetVal) \
  668. (This)->lpVtbl -> InvokeAction(This,bstrActionName,vInActionArgs,pvOutActionArgs,pvRetVal)
  669. #define IUPnPService_get_ServiceTypeIdentifier(This,pVal) \
  670. (This)->lpVtbl -> get_ServiceTypeIdentifier(This,pVal)
  671. #define IUPnPService_AddCallback(This,pUnkCallback) \
  672. (This)->lpVtbl -> AddCallback(This,pUnkCallback)
  673. #define IUPnPService_get_Id(This,pbstrId) \
  674. (This)->lpVtbl -> get_Id(This,pbstrId)
  675. #define IUPnPService_get_LastTransportStatus(This,plValue) \
  676. (This)->lpVtbl -> get_LastTransportStatus(This,plValue)
  677. #endif /* COBJMACROS */
  678. #endif /* C style interface */
  679. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IUPnPService_QueryStateVariable_Proxy(
  680. IUPnPService * This,
  681. /* [in] */ BSTR bstrVariableName,
  682. /* [retval][out] */ VARIANT *pValue);
  683. void __RPC_STUB IUPnPService_QueryStateVariable_Stub(
  684. IRpcStubBuffer *This,
  685. IRpcChannelBuffer *_pRpcChannelBuffer,
  686. PRPC_MESSAGE _pRpcMessage,
  687. DWORD *_pdwStubPhase);
  688. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IUPnPService_InvokeAction_Proxy(
  689. IUPnPService * This,
  690. /* [in] */ BSTR bstrActionName,
  691. /* [in] */ VARIANT vInActionArgs,
  692. /* [out][in] */ VARIANT *pvOutActionArgs,
  693. /* [retval][out] */ VARIANT *pvRetVal);
  694. void __RPC_STUB IUPnPService_InvokeAction_Stub(
  695. IRpcStubBuffer *This,
  696. IRpcChannelBuffer *_pRpcChannelBuffer,
  697. PRPC_MESSAGE _pRpcMessage,
  698. DWORD *_pdwStubPhase);
  699. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUPnPService_get_ServiceTypeIdentifier_Proxy(
  700. IUPnPService * This,
  701. /* [retval][out] */ BSTR *pVal);
  702. void __RPC_STUB IUPnPService_get_ServiceTypeIdentifier_Stub(
  703. IRpcStubBuffer *This,
  704. IRpcChannelBuffer *_pRpcChannelBuffer,
  705. PRPC_MESSAGE _pRpcMessage,
  706. DWORD *_pdwStubPhase);
  707. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IUPnPService_AddCallback_Proxy(
  708. IUPnPService * This,
  709. /* [in] */ IUnknown *pUnkCallback);
  710. void __RPC_STUB IUPnPService_AddCallback_Stub(
  711. IRpcStubBuffer *This,
  712. IRpcChannelBuffer *_pRpcChannelBuffer,
  713. PRPC_MESSAGE _pRpcMessage,
  714. DWORD *_pdwStubPhase);
  715. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUPnPService_get_Id_Proxy(
  716. IUPnPService * This,
  717. /* [retval][out] */ BSTR *pbstrId);
  718. void __RPC_STUB IUPnPService_get_Id_Stub(
  719. IRpcStubBuffer *This,
  720. IRpcChannelBuffer *_pRpcChannelBuffer,
  721. PRPC_MESSAGE _pRpcMessage,
  722. DWORD *_pdwStubPhase);
  723. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUPnPService_get_LastTransportStatus_Proxy(
  724. IUPnPService * This,
  725. /* [retval][out] */ long *plValue);
  726. void __RPC_STUB IUPnPService_get_LastTransportStatus_Stub(
  727. IRpcStubBuffer *This,
  728. IRpcChannelBuffer *_pRpcChannelBuffer,
  729. PRPC_MESSAGE _pRpcMessage,
  730. DWORD *_pdwStubPhase);
  731. #endif /* __IUPnPService_INTERFACE_DEFINED__ */
  732. #ifndef __IUPnPServiceCallback_INTERFACE_DEFINED__
  733. #define __IUPnPServiceCallback_INTERFACE_DEFINED__
  734. /* interface IUPnPServiceCallback */
  735. /* [unique][uuid][object] */
  736. EXTERN_C const IID IID_IUPnPServiceCallback;
  737. #if defined(__cplusplus) && !defined(CINTERFACE)
  738. MIDL_INTERFACE("31fadca9-ab73-464b-b67d-5c1d0f83c8b8")
  739. IUPnPServiceCallback : public IUnknown
  740. {
  741. public:
  742. virtual HRESULT STDMETHODCALLTYPE StateVariableChanged(
  743. /* [in] */ IUPnPService *pus,
  744. /* [in] */ LPCWSTR pcwszStateVarName,
  745. /* [in] */ VARIANT vaValue) = 0;
  746. virtual HRESULT STDMETHODCALLTYPE ServiceInstanceDied(
  747. /* [in] */ IUPnPService *pus) = 0;
  748. };
  749. #else /* C style interface */
  750. typedef struct IUPnPServiceCallbackVtbl
  751. {
  752. BEGIN_INTERFACE
  753. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  754. IUPnPServiceCallback * This,
  755. /* [in] */ REFIID riid,
  756. /* [iid_is][out] */ void **ppvObject);
  757. ULONG ( STDMETHODCALLTYPE *AddRef )(
  758. IUPnPServiceCallback * This);
  759. ULONG ( STDMETHODCALLTYPE *Release )(
  760. IUPnPServiceCallback * This);
  761. HRESULT ( STDMETHODCALLTYPE *StateVariableChanged )(
  762. IUPnPServiceCallback * This,
  763. /* [in] */ IUPnPService *pus,
  764. /* [in] */ LPCWSTR pcwszStateVarName,
  765. /* [in] */ VARIANT vaValue);
  766. HRESULT ( STDMETHODCALLTYPE *ServiceInstanceDied )(
  767. IUPnPServiceCallback * This,
  768. /* [in] */ IUPnPService *pus);
  769. END_INTERFACE
  770. } IUPnPServiceCallbackVtbl;
  771. interface IUPnPServiceCallback
  772. {
  773. CONST_VTBL struct IUPnPServiceCallbackVtbl *lpVtbl;
  774. };
  775. #ifdef COBJMACROS
  776. #define IUPnPServiceCallback_QueryInterface(This,riid,ppvObject) \
  777. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  778. #define IUPnPServiceCallback_AddRef(This) \
  779. (This)->lpVtbl -> AddRef(This)
  780. #define IUPnPServiceCallback_Release(This) \
  781. (This)->lpVtbl -> Release(This)
  782. #define IUPnPServiceCallback_StateVariableChanged(This,pus,pcwszStateVarName,vaValue) \
  783. (This)->lpVtbl -> StateVariableChanged(This,pus,pcwszStateVarName,vaValue)
  784. #define IUPnPServiceCallback_ServiceInstanceDied(This,pus) \
  785. (This)->lpVtbl -> ServiceInstanceDied(This,pus)
  786. #endif /* COBJMACROS */
  787. #endif /* C style interface */
  788. HRESULT STDMETHODCALLTYPE IUPnPServiceCallback_StateVariableChanged_Proxy(
  789. IUPnPServiceCallback * This,
  790. /* [in] */ IUPnPService *pus,
  791. /* [in] */ LPCWSTR pcwszStateVarName,
  792. /* [in] */ VARIANT vaValue);
  793. void __RPC_STUB IUPnPServiceCallback_StateVariableChanged_Stub(
  794. IRpcStubBuffer *This,
  795. IRpcChannelBuffer *_pRpcChannelBuffer,
  796. PRPC_MESSAGE _pRpcMessage,
  797. DWORD *_pdwStubPhase);
  798. HRESULT STDMETHODCALLTYPE IUPnPServiceCallback_ServiceInstanceDied_Proxy(
  799. IUPnPServiceCallback * This,
  800. /* [in] */ IUPnPService *pus);
  801. void __RPC_STUB IUPnPServiceCallback_ServiceInstanceDied_Stub(
  802. IRpcStubBuffer *This,
  803. IRpcChannelBuffer *_pRpcChannelBuffer,
  804. PRPC_MESSAGE _pRpcMessage,
  805. DWORD *_pdwStubPhase);
  806. #endif /* __IUPnPServiceCallback_INTERFACE_DEFINED__ */
  807. #ifndef __IUPnPDevices_INTERFACE_DEFINED__
  808. #define __IUPnPDevices_INTERFACE_DEFINED__
  809. /* interface IUPnPDevices */
  810. /* [nonextensible][unique][oleautomation][helpstring][dual][uuid][object] */
  811. EXTERN_C const IID IID_IUPnPDevices;
  812. #if defined(__cplusplus) && !defined(CINTERFACE)
  813. MIDL_INTERFACE("FDBC0C73-BDA3-4C66-AC4F-F2D96FDAD68C")
  814. IUPnPDevices : public IDispatch
  815. {
  816. public:
  817. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count(
  818. /* [retval][out] */ long *plCount) = 0;
  819. virtual /* [helpstring][hidden][restricted][id][propget] */ HRESULT STDMETHODCALLTYPE get__NewEnum(
  820. /* [retval][out] */ LPUNKNOWN *ppunk) = 0;
  821. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item(
  822. /* [in] */ BSTR bstrUDN,
  823. /* [retval][out] */ IUPnPDevice **ppDevice) = 0;
  824. };
  825. #else /* C style interface */
  826. typedef struct IUPnPDevicesVtbl
  827. {
  828. BEGIN_INTERFACE
  829. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  830. IUPnPDevices * This,
  831. /* [in] */ REFIID riid,
  832. /* [iid_is][out] */ void **ppvObject);
  833. ULONG ( STDMETHODCALLTYPE *AddRef )(
  834. IUPnPDevices * This);
  835. ULONG ( STDMETHODCALLTYPE *Release )(
  836. IUPnPDevices * This);
  837. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  838. IUPnPDevices * This,
  839. /* [out] */ UINT *pctinfo);
  840. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  841. IUPnPDevices * This,
  842. /* [in] */ UINT iTInfo,
  843. /* [in] */ LCID lcid,
  844. /* [out] */ ITypeInfo **ppTInfo);
  845. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  846. IUPnPDevices * This,
  847. /* [in] */ REFIID riid,
  848. /* [size_is][in] */ LPOLESTR *rgszNames,
  849. /* [in] */ UINT cNames,
  850. /* [in] */ LCID lcid,
  851. /* [size_is][out] */ DISPID *rgDispId);
  852. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  853. IUPnPDevices * This,
  854. /* [in] */ DISPID dispIdMember,
  855. /* [in] */ REFIID riid,
  856. /* [in] */ LCID lcid,
  857. /* [in] */ WORD wFlags,
  858. /* [out][in] */ DISPPARAMS *pDispParams,
  859. /* [out] */ VARIANT *pVarResult,
  860. /* [out] */ EXCEPINFO *pExcepInfo,
  861. /* [out] */ UINT *puArgErr);
  862. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )(
  863. IUPnPDevices * This,
  864. /* [retval][out] */ long *plCount);
  865. /* [helpstring][hidden][restricted][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__NewEnum )(
  866. IUPnPDevices * This,
  867. /* [retval][out] */ LPUNKNOWN *ppunk);
  868. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Item )(
  869. IUPnPDevices * This,
  870. /* [in] */ BSTR bstrUDN,
  871. /* [retval][out] */ IUPnPDevice **ppDevice);
  872. END_INTERFACE
  873. } IUPnPDevicesVtbl;
  874. interface IUPnPDevices
  875. {
  876. CONST_VTBL struct IUPnPDevicesVtbl *lpVtbl;
  877. };
  878. #ifdef COBJMACROS
  879. #define IUPnPDevices_QueryInterface(This,riid,ppvObject) \
  880. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  881. #define IUPnPDevices_AddRef(This) \
  882. (This)->lpVtbl -> AddRef(This)
  883. #define IUPnPDevices_Release(This) \
  884. (This)->lpVtbl -> Release(This)
  885. #define IUPnPDevices_GetTypeInfoCount(This,pctinfo) \
  886. (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  887. #define IUPnPDevices_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  888. (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  889. #define IUPnPDevices_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  890. (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  891. #define IUPnPDevices_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  892. (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  893. #define IUPnPDevices_get_Count(This,plCount) \
  894. (This)->lpVtbl -> get_Count(This,plCount)
  895. #define IUPnPDevices_get__NewEnum(This,ppunk) \
  896. (This)->lpVtbl -> get__NewEnum(This,ppunk)
  897. #define IUPnPDevices_get_Item(This,bstrUDN,ppDevice) \
  898. (This)->lpVtbl -> get_Item(This,bstrUDN,ppDevice)
  899. #endif /* COBJMACROS */
  900. #endif /* C style interface */
  901. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUPnPDevices_get_Count_Proxy(
  902. IUPnPDevices * This,
  903. /* [retval][out] */ long *plCount);
  904. void __RPC_STUB IUPnPDevices_get_Count_Stub(
  905. IRpcStubBuffer *This,
  906. IRpcChannelBuffer *_pRpcChannelBuffer,
  907. PRPC_MESSAGE _pRpcMessage,
  908. DWORD *_pdwStubPhase);
  909. /* [helpstring][hidden][restricted][id][propget] */ HRESULT STDMETHODCALLTYPE IUPnPDevices_get__NewEnum_Proxy(
  910. IUPnPDevices * This,
  911. /* [retval][out] */ LPUNKNOWN *ppunk);
  912. void __RPC_STUB IUPnPDevices_get__NewEnum_Stub(
  913. IRpcStubBuffer *This,
  914. IRpcChannelBuffer *_pRpcChannelBuffer,
  915. PRPC_MESSAGE _pRpcMessage,
  916. DWORD *_pdwStubPhase);
  917. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUPnPDevices_get_Item_Proxy(
  918. IUPnPDevices * This,
  919. /* [in] */ BSTR bstrUDN,
  920. /* [retval][out] */ IUPnPDevice **ppDevice);
  921. void __RPC_STUB IUPnPDevices_get_Item_Stub(
  922. IRpcStubBuffer *This,
  923. IRpcChannelBuffer *_pRpcChannelBuffer,
  924. PRPC_MESSAGE _pRpcMessage,
  925. DWORD *_pdwStubPhase);
  926. #endif /* __IUPnPDevices_INTERFACE_DEFINED__ */
  927. #ifndef __IUPnPDevice_INTERFACE_DEFINED__
  928. #define __IUPnPDevice_INTERFACE_DEFINED__
  929. /* interface IUPnPDevice */
  930. /* [nonextensible][unique][oleautomation][helpstring][dual][uuid][object] */
  931. EXTERN_C const IID IID_IUPnPDevice;
  932. #if defined(__cplusplus) && !defined(CINTERFACE)
  933. MIDL_INTERFACE("3D44D0D1-98C9-4889-ACD1-F9D674BF2221")
  934. IUPnPDevice : public IDispatch
  935. {
  936. public:
  937. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_IsRootDevice(
  938. /* [retval][out] */ VARIANT_BOOL *pvarb) = 0;
  939. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RootDevice(
  940. /* [retval][out] */ IUPnPDevice **ppudRootDevice) = 0;
  941. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ParentDevice(
  942. /* [retval][out] */ IUPnPDevice **ppudDeviceParent) = 0;
  943. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HasChildren(
  944. /* [retval][out] */ VARIANT_BOOL *pvarb) = 0;
  945. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Children(
  946. /* [retval][out] */ IUPnPDevices **ppudChildren) = 0;
  947. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UniqueDeviceName(
  948. /* [retval][out] */ BSTR *pbstr) = 0;
  949. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FriendlyName(
  950. /* [retval][out] */ BSTR *pbstr) = 0;
  951. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Type(
  952. /* [retval][out] */ BSTR *pbstr) = 0;
  953. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PresentationURL(
  954. /* [retval][out] */ BSTR *pbstr) = 0;
  955. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ManufacturerName(
  956. /* [retval][out] */ BSTR *pbstr) = 0;
  957. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ManufacturerURL(
  958. /* [retval][out] */ BSTR *pbstr) = 0;
  959. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ModelName(
  960. /* [retval][out] */ BSTR *pbstr) = 0;
  961. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ModelNumber(
  962. /* [retval][out] */ BSTR *pbstr) = 0;
  963. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Description(
  964. /* [retval][out] */ BSTR *pbstr) = 0;
  965. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ModelURL(
  966. /* [retval][out] */ BSTR *pbstr) = 0;
  967. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UPC(
  968. /* [retval][out] */ BSTR *pbstr) = 0;
  969. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SerialNumber(
  970. /* [retval][out] */ BSTR *pbstr) = 0;
  971. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IconURL(
  972. /* [in] */ BSTR bstrEncodingFormat,
  973. /* [in] */ LONG lSizeX,
  974. /* [in] */ LONG lSizeY,
  975. /* [in] */ LONG lBitDepth,
  976. /* [retval][out] */ BSTR *pbstrIconURL) = 0;
  977. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Services(
  978. /* [retval][out] */ IUPnPServices **ppusServices) = 0;
  979. };
  980. #else /* C style interface */
  981. typedef struct IUPnPDeviceVtbl
  982. {
  983. BEGIN_INTERFACE
  984. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  985. IUPnPDevice * This,
  986. /* [in] */ REFIID riid,
  987. /* [iid_is][out] */ void **ppvObject);
  988. ULONG ( STDMETHODCALLTYPE *AddRef )(
  989. IUPnPDevice * This);
  990. ULONG ( STDMETHODCALLTYPE *Release )(
  991. IUPnPDevice * This);
  992. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  993. IUPnPDevice * This,
  994. /* [out] */ UINT *pctinfo);
  995. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  996. IUPnPDevice * This,
  997. /* [in] */ UINT iTInfo,
  998. /* [in] */ LCID lcid,
  999. /* [out] */ ITypeInfo **ppTInfo);
  1000. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  1001. IUPnPDevice * This,
  1002. /* [in] */ REFIID riid,
  1003. /* [size_is][in] */ LPOLESTR *rgszNames,
  1004. /* [in] */ UINT cNames,
  1005. /* [in] */ LCID lcid,
  1006. /* [size_is][out] */ DISPID *rgDispId);
  1007. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  1008. IUPnPDevice * This,
  1009. /* [in] */ DISPID dispIdMember,
  1010. /* [in] */ REFIID riid,
  1011. /* [in] */ LCID lcid,
  1012. /* [in] */ WORD wFlags,
  1013. /* [out][in] */ DISPPARAMS *pDispParams,
  1014. /* [out] */ VARIANT *pVarResult,
  1015. /* [out] */ EXCEPINFO *pExcepInfo,
  1016. /* [out] */ UINT *puArgErr);
  1017. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsRootDevice )(
  1018. IUPnPDevice * This,
  1019. /* [retval][out] */ VARIANT_BOOL *pvarb);
  1020. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RootDevice )(
  1021. IUPnPDevice * This,
  1022. /* [retval][out] */ IUPnPDevice **ppudRootDevice);
  1023. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ParentDevice )(
  1024. IUPnPDevice * This,
  1025. /* [retval][out] */ IUPnPDevice **ppudDeviceParent);
  1026. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasChildren )(
  1027. IUPnPDevice * This,
  1028. /* [retval][out] */ VARIANT_BOOL *pvarb);
  1029. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Children )(
  1030. IUPnPDevice * This,
  1031. /* [retval][out] */ IUPnPDevices **ppudChildren);
  1032. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UniqueDeviceName )(
  1033. IUPnPDevice * This,
  1034. /* [retval][out] */ BSTR *pbstr);
  1035. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_FriendlyName )(
  1036. IUPnPDevice * This,
  1037. /* [retval][out] */ BSTR *pbstr);
  1038. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Type )(
  1039. IUPnPDevice * This,
  1040. /* [retval][out] */ BSTR *pbstr);
  1041. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PresentationURL )(
  1042. IUPnPDevice * This,
  1043. /* [retval][out] */ BSTR *pbstr);
  1044. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ManufacturerName )(
  1045. IUPnPDevice * This,
  1046. /* [retval][out] */ BSTR *pbstr);
  1047. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ManufacturerURL )(
  1048. IUPnPDevice * This,
  1049. /* [retval][out] */ BSTR *pbstr);
  1050. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ModelName )(
  1051. IUPnPDevice * This,
  1052. /* [retval][out] */ BSTR *pbstr);
  1053. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ModelNumber )(
  1054. IUPnPDevice * This,
  1055. /* [retval][out] */ BSTR *pbstr);
  1056. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Description )(
  1057. IUPnPDevice * This,
  1058. /* [retval][out] */ BSTR *pbstr);
  1059. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ModelURL )(
  1060. IUPnPDevice * This,
  1061. /* [retval][out] */ BSTR *pbstr);
  1062. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_UPC )(
  1063. IUPnPDevice * This,
  1064. /* [retval][out] */ BSTR *pbstr);
  1065. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SerialNumber )(
  1066. IUPnPDevice * This,
  1067. /* [retval][out] */ BSTR *pbstr);
  1068. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *IconURL )(
  1069. IUPnPDevice * This,
  1070. /* [in] */ BSTR bstrEncodingFormat,
  1071. /* [in] */ LONG lSizeX,
  1072. /* [in] */ LONG lSizeY,
  1073. /* [in] */ LONG lBitDepth,
  1074. /* [retval][out] */ BSTR *pbstrIconURL);
  1075. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Services )(
  1076. IUPnPDevice * This,
  1077. /* [retval][out] */ IUPnPServices **ppusServices);
  1078. END_INTERFACE
  1079. } IUPnPDeviceVtbl;
  1080. interface IUPnPDevice
  1081. {
  1082. CONST_VTBL struct IUPnPDeviceVtbl *lpVtbl;
  1083. };
  1084. #ifdef COBJMACROS
  1085. #define IUPnPDevice_QueryInterface(This,riid,ppvObject) \
  1086. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1087. #define IUPnPDevice_AddRef(This) \
  1088. (This)->lpVtbl -> AddRef(This)
  1089. #define IUPnPDevice_Release(This) \
  1090. (This)->lpVtbl -> Release(This)
  1091. #define IUPnPDevice_GetTypeInfoCount(This,pctinfo) \
  1092. (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1093. #define IUPnPDevice_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  1094. (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1095. #define IUPnPDevice_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  1096. (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1097. #define IUPnPDevice_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  1098. (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1099. #define IUPnPDevice_get_IsRootDevice(This,pvarb) \
  1100. (This)->lpVtbl -> get_IsRootDevice(This,pvarb)
  1101. #define IUPnPDevice_get_RootDevice(This,ppudRootDevice) \
  1102. (This)->lpVtbl -> get_RootDevice(This,ppudRootDevice)
  1103. #define IUPnPDevice_get_ParentDevice(This,ppudDeviceParent) \
  1104. (This)->lpVtbl -> get_ParentDevice(This,ppudDeviceParent)
  1105. #define IUPnPDevice_get_HasChildren(This,pvarb) \
  1106. (This)->lpVtbl -> get_HasChildren(This,pvarb)
  1107. #define IUPnPDevice_get_Children(This,ppudChildren) \
  1108. (This)->lpVtbl -> get_Children(This,ppudChildren)
  1109. #define IUPnPDevice_get_UniqueDeviceName(This,pbstr) \
  1110. (This)->lpVtbl -> get_UniqueDeviceName(This,pbstr)
  1111. #define IUPnPDevice_get_FriendlyName(This,pbstr) \
  1112. (This)->lpVtbl -> get_FriendlyName(This,pbstr)
  1113. #define IUPnPDevice_get_Type(This,pbstr) \
  1114. (This)->lpVtbl -> get_Type(This,pbstr)
  1115. #define IUPnPDevice_get_PresentationURL(This,pbstr) \
  1116. (This)->lpVtbl -> get_PresentationURL(This,pbstr)
  1117. #define IUPnPDevice_get_ManufacturerName(This,pbstr) \
  1118. (This)->lpVtbl -> get_ManufacturerName(This,pbstr)
  1119. #define IUPnPDevice_get_ManufacturerURL(This,pbstr) \
  1120. (This)->lpVtbl -> get_ManufacturerURL(This,pbstr)
  1121. #define IUPnPDevice_get_ModelName(This,pbstr) \
  1122. (This)->lpVtbl -> get_ModelName(This,pbstr)
  1123. #define IUPnPDevice_get_ModelNumber(This,pbstr) \
  1124. (This)->lpVtbl -> get_ModelNumber(This,pbstr)
  1125. #define IUPnPDevice_get_Description(This,pbstr) \
  1126. (This)->lpVtbl -> get_Description(This,pbstr)
  1127. #define IUPnPDevice_get_ModelURL(This,pbstr) \
  1128. (This)->lpVtbl -> get_ModelURL(This,pbstr)
  1129. #define IUPnPDevice_get_UPC(This,pbstr) \
  1130. (This)->lpVtbl -> get_UPC(This,pbstr)
  1131. #define IUPnPDevice_get_SerialNumber(This,pbstr) \
  1132. (This)->lpVtbl -> get_SerialNumber(This,pbstr)
  1133. #define IUPnPDevice_IconURL(This,bstrEncodingFormat,lSizeX,lSizeY,lBitDepth,pbstrIconURL) \
  1134. (This)->lpVtbl -> IconURL(This,bstrEncodingFormat,lSizeX,lSizeY,lBitDepth,pbstrIconURL)
  1135. #define IUPnPDevice_get_Services(This,ppusServices) \
  1136. (This)->lpVtbl -> get_Services(This,ppusServices)
  1137. #endif /* COBJMACROS */
  1138. #endif /* C style interface */
  1139. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUPnPDevice_get_IsRootDevice_Proxy(
  1140. IUPnPDevice * This,
  1141. /* [retval][out] */ VARIANT_BOOL *pvarb);
  1142. void __RPC_STUB IUPnPDevice_get_IsRootDevice_Stub(
  1143. IRpcStubBuffer *This,
  1144. IRpcChannelBuffer *_pRpcChannelBuffer,
  1145. PRPC_MESSAGE _pRpcMessage,
  1146. DWORD *_pdwStubPhase);
  1147. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUPnPDevice_get_RootDevice_Proxy(
  1148. IUPnPDevice * This,
  1149. /* [retval][out] */ IUPnPDevice **ppudRootDevice);
  1150. void __RPC_STUB IUPnPDevice_get_RootDevice_Stub(
  1151. IRpcStubBuffer *This,
  1152. IRpcChannelBuffer *_pRpcChannelBuffer,
  1153. PRPC_MESSAGE _pRpcMessage,
  1154. DWORD *_pdwStubPhase);
  1155. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUPnPDevice_get_ParentDevice_Proxy(
  1156. IUPnPDevice * This,
  1157. /* [retval][out] */ IUPnPDevice **ppudDeviceParent);
  1158. void __RPC_STUB IUPnPDevice_get_ParentDevice_Stub(
  1159. IRpcStubBuffer *This,
  1160. IRpcChannelBuffer *_pRpcChannelBuffer,
  1161. PRPC_MESSAGE _pRpcMessage,
  1162. DWORD *_pdwStubPhase);
  1163. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUPnPDevice_get_HasChildren_Proxy(
  1164. IUPnPDevice * This,
  1165. /* [retval][out] */ VARIANT_BOOL *pvarb);
  1166. void __RPC_STUB IUPnPDevice_get_HasChildren_Stub(
  1167. IRpcStubBuffer *This,
  1168. IRpcChannelBuffer *_pRpcChannelBuffer,
  1169. PRPC_MESSAGE _pRpcMessage,
  1170. DWORD *_pdwStubPhase);
  1171. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUPnPDevice_get_Children_Proxy(
  1172. IUPnPDevice * This,
  1173. /* [retval][out] */ IUPnPDevices **ppudChildren);
  1174. void __RPC_STUB IUPnPDevice_get_Children_Stub(
  1175. IRpcStubBuffer *This,
  1176. IRpcChannelBuffer *_pRpcChannelBuffer,
  1177. PRPC_MESSAGE _pRpcMessage,
  1178. DWORD *_pdwStubPhase);
  1179. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUPnPDevice_get_UniqueDeviceName_Proxy(
  1180. IUPnPDevice * This,
  1181. /* [retval][out] */ BSTR *pbstr);
  1182. void __RPC_STUB IUPnPDevice_get_UniqueDeviceName_Stub(
  1183. IRpcStubBuffer *This,
  1184. IRpcChannelBuffer *_pRpcChannelBuffer,
  1185. PRPC_MESSAGE _pRpcMessage,
  1186. DWORD *_pdwStubPhase);
  1187. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUPnPDevice_get_FriendlyName_Proxy(
  1188. IUPnPDevice * This,
  1189. /* [retval][out] */ BSTR *pbstr);
  1190. void __RPC_STUB IUPnPDevice_get_FriendlyName_Stub(
  1191. IRpcStubBuffer *This,
  1192. IRpcChannelBuffer *_pRpcChannelBuffer,
  1193. PRPC_MESSAGE _pRpcMessage,
  1194. DWORD *_pdwStubPhase);
  1195. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUPnPDevice_get_Type_Proxy(
  1196. IUPnPDevice * This,
  1197. /* [retval][out] */ BSTR *pbstr);
  1198. void __RPC_STUB IUPnPDevice_get_Type_Stub(
  1199. IRpcStubBuffer *This,
  1200. IRpcChannelBuffer *_pRpcChannelBuffer,
  1201. PRPC_MESSAGE _pRpcMessage,
  1202. DWORD *_pdwStubPhase);
  1203. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUPnPDevice_get_PresentationURL_Proxy(
  1204. IUPnPDevice * This,
  1205. /* [retval][out] */ BSTR *pbstr);
  1206. void __RPC_STUB IUPnPDevice_get_PresentationURL_Stub(
  1207. IRpcStubBuffer *This,
  1208. IRpcChannelBuffer *_pRpcChannelBuffer,
  1209. PRPC_MESSAGE _pRpcMessage,
  1210. DWORD *_pdwStubPhase);
  1211. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUPnPDevice_get_ManufacturerName_Proxy(
  1212. IUPnPDevice * This,
  1213. /* [retval][out] */ BSTR *pbstr);
  1214. void __RPC_STUB IUPnPDevice_get_ManufacturerName_Stub(
  1215. IRpcStubBuffer *This,
  1216. IRpcChannelBuffer *_pRpcChannelBuffer,
  1217. PRPC_MESSAGE _pRpcMessage,
  1218. DWORD *_pdwStubPhase);
  1219. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUPnPDevice_get_ManufacturerURL_Proxy(
  1220. IUPnPDevice * This,
  1221. /* [retval][out] */ BSTR *pbstr);
  1222. void __RPC_STUB IUPnPDevice_get_ManufacturerURL_Stub(
  1223. IRpcStubBuffer *This,
  1224. IRpcChannelBuffer *_pRpcChannelBuffer,
  1225. PRPC_MESSAGE _pRpcMessage,
  1226. DWORD *_pdwStubPhase);
  1227. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUPnPDevice_get_ModelName_Proxy(
  1228. IUPnPDevice * This,
  1229. /* [retval][out] */ BSTR *pbstr);
  1230. void __RPC_STUB IUPnPDevice_get_ModelName_Stub(
  1231. IRpcStubBuffer *This,
  1232. IRpcChannelBuffer *_pRpcChannelBuffer,
  1233. PRPC_MESSAGE _pRpcMessage,
  1234. DWORD *_pdwStubPhase);
  1235. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUPnPDevice_get_ModelNumber_Proxy(
  1236. IUPnPDevice * This,
  1237. /* [retval][out] */ BSTR *pbstr);
  1238. void __RPC_STUB IUPnPDevice_get_ModelNumber_Stub(
  1239. IRpcStubBuffer *This,
  1240. IRpcChannelBuffer *_pRpcChannelBuffer,
  1241. PRPC_MESSAGE _pRpcMessage,
  1242. DWORD *_pdwStubPhase);
  1243. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUPnPDevice_get_Description_Proxy(
  1244. IUPnPDevice * This,
  1245. /* [retval][out] */ BSTR *pbstr);
  1246. void __RPC_STUB IUPnPDevice_get_Description_Stub(
  1247. IRpcStubBuffer *This,
  1248. IRpcChannelBuffer *_pRpcChannelBuffer,
  1249. PRPC_MESSAGE _pRpcMessage,
  1250. DWORD *_pdwStubPhase);
  1251. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUPnPDevice_get_ModelURL_Proxy(
  1252. IUPnPDevice * This,
  1253. /* [retval][out] */ BSTR *pbstr);
  1254. void __RPC_STUB IUPnPDevice_get_ModelURL_Stub(
  1255. IRpcStubBuffer *This,
  1256. IRpcChannelBuffer *_pRpcChannelBuffer,
  1257. PRPC_MESSAGE _pRpcMessage,
  1258. DWORD *_pdwStubPhase);
  1259. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUPnPDevice_get_UPC_Proxy(
  1260. IUPnPDevice * This,
  1261. /* [retval][out] */ BSTR *pbstr);
  1262. void __RPC_STUB IUPnPDevice_get_UPC_Stub(
  1263. IRpcStubBuffer *This,
  1264. IRpcChannelBuffer *_pRpcChannelBuffer,
  1265. PRPC_MESSAGE _pRpcMessage,
  1266. DWORD *_pdwStubPhase);
  1267. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUPnPDevice_get_SerialNumber_Proxy(
  1268. IUPnPDevice * This,
  1269. /* [retval][out] */ BSTR *pbstr);
  1270. void __RPC_STUB IUPnPDevice_get_SerialNumber_Stub(
  1271. IRpcStubBuffer *This,
  1272. IRpcChannelBuffer *_pRpcChannelBuffer,
  1273. PRPC_MESSAGE _pRpcMessage,
  1274. DWORD *_pdwStubPhase);
  1275. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IUPnPDevice_IconURL_Proxy(
  1276. IUPnPDevice * This,
  1277. /* [in] */ BSTR bstrEncodingFormat,
  1278. /* [in] */ LONG lSizeX,
  1279. /* [in] */ LONG lSizeY,
  1280. /* [in] */ LONG lBitDepth,
  1281. /* [retval][out] */ BSTR *pbstrIconURL);
  1282. void __RPC_STUB IUPnPDevice_IconURL_Stub(
  1283. IRpcStubBuffer *This,
  1284. IRpcChannelBuffer *_pRpcChannelBuffer,
  1285. PRPC_MESSAGE _pRpcMessage,
  1286. DWORD *_pdwStubPhase);
  1287. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUPnPDevice_get_Services_Proxy(
  1288. IUPnPDevice * This,
  1289. /* [retval][out] */ IUPnPServices **ppusServices);
  1290. void __RPC_STUB IUPnPDevice_get_Services_Stub(
  1291. IRpcStubBuffer *This,
  1292. IRpcChannelBuffer *_pRpcChannelBuffer,
  1293. PRPC_MESSAGE _pRpcMessage,
  1294. DWORD *_pdwStubPhase);
  1295. #endif /* __IUPnPDevice_INTERFACE_DEFINED__ */
  1296. #ifndef __IUPnPDeviceDocumentAccess_INTERFACE_DEFINED__
  1297. #define __IUPnPDeviceDocumentAccess_INTERFACE_DEFINED__
  1298. /* interface IUPnPDeviceDocumentAccess */
  1299. /* [unique][uuid][object] */
  1300. EXTERN_C const IID IID_IUPnPDeviceDocumentAccess;
  1301. #if defined(__cplusplus) && !defined(CINTERFACE)
  1302. MIDL_INTERFACE("E7772804-3287-418e-9072-CF2B47238981")
  1303. IUPnPDeviceDocumentAccess : public IUnknown
  1304. {
  1305. public:
  1306. virtual HRESULT STDMETHODCALLTYPE GetDocumentURL(
  1307. /* [retval][out] */ BSTR *pbstrDocument) = 0;
  1308. };
  1309. #else /* C style interface */
  1310. typedef struct IUPnPDeviceDocumentAccessVtbl
  1311. {
  1312. BEGIN_INTERFACE
  1313. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1314. IUPnPDeviceDocumentAccess * This,
  1315. /* [in] */ REFIID riid,
  1316. /* [iid_is][out] */ void **ppvObject);
  1317. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1318. IUPnPDeviceDocumentAccess * This);
  1319. ULONG ( STDMETHODCALLTYPE *Release )(
  1320. IUPnPDeviceDocumentAccess * This);
  1321. HRESULT ( STDMETHODCALLTYPE *GetDocumentURL )(
  1322. IUPnPDeviceDocumentAccess * This,
  1323. /* [retval][out] */ BSTR *pbstrDocument);
  1324. END_INTERFACE
  1325. } IUPnPDeviceDocumentAccessVtbl;
  1326. interface IUPnPDeviceDocumentAccess
  1327. {
  1328. CONST_VTBL struct IUPnPDeviceDocumentAccessVtbl *lpVtbl;
  1329. };
  1330. #ifdef COBJMACROS
  1331. #define IUPnPDeviceDocumentAccess_QueryInterface(This,riid,ppvObject) \
  1332. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1333. #define IUPnPDeviceDocumentAccess_AddRef(This) \
  1334. (This)->lpVtbl -> AddRef(This)
  1335. #define IUPnPDeviceDocumentAccess_Release(This) \
  1336. (This)->lpVtbl -> Release(This)
  1337. #define IUPnPDeviceDocumentAccess_GetDocumentURL(This,pbstrDocument) \
  1338. (This)->lpVtbl -> GetDocumentURL(This,pbstrDocument)
  1339. #endif /* COBJMACROS */
  1340. #endif /* C style interface */
  1341. HRESULT STDMETHODCALLTYPE IUPnPDeviceDocumentAccess_GetDocumentURL_Proxy(
  1342. IUPnPDeviceDocumentAccess * This,
  1343. /* [retval][out] */ BSTR *pbstrDocument);
  1344. void __RPC_STUB IUPnPDeviceDocumentAccess_GetDocumentURL_Stub(
  1345. IRpcStubBuffer *This,
  1346. IRpcChannelBuffer *_pRpcChannelBuffer,
  1347. PRPC_MESSAGE _pRpcMessage,
  1348. DWORD *_pdwStubPhase);
  1349. #endif /* __IUPnPDeviceDocumentAccess_INTERFACE_DEFINED__ */
  1350. #ifndef __IUPnPDescriptionDocument_INTERFACE_DEFINED__
  1351. #define __IUPnPDescriptionDocument_INTERFACE_DEFINED__
  1352. /* interface IUPnPDescriptionDocument */
  1353. /* [nonextensible][unique][oleautomation][helpstring][dual][uuid][object] */
  1354. EXTERN_C const IID IID_IUPnPDescriptionDocument;
  1355. #if defined(__cplusplus) && !defined(CINTERFACE)
  1356. MIDL_INTERFACE("11d1c1b2-7daa-4c9e-9595-7f82ed206d1e")
  1357. IUPnPDescriptionDocument : public IDispatch
  1358. {
  1359. public:
  1360. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ReadyState(
  1361. /* [retval][out] */ LONG *plReadyState) = 0;
  1362. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Load(
  1363. /* [in] */ BSTR bstrUrl) = 0;
  1364. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE LoadAsync(
  1365. /* [in] */ BSTR bstrUrl,
  1366. /* [in] */ IUnknown *punkCallback) = 0;
  1367. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LoadResult(
  1368. /* [retval][out] */ long *phrError) = 0;
  1369. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Abort( void) = 0;
  1370. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE RootDevice(
  1371. /* [retval][out] */ IUPnPDevice **ppudRootDevice) = 0;
  1372. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE DeviceByUDN(
  1373. /* [in] */ BSTR bstrUDN,
  1374. /* [retval][out] */ IUPnPDevice **ppudDevice) = 0;
  1375. };
  1376. #else /* C style interface */
  1377. typedef struct IUPnPDescriptionDocumentVtbl
  1378. {
  1379. BEGIN_INTERFACE
  1380. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1381. IUPnPDescriptionDocument * This,
  1382. /* [in] */ REFIID riid,
  1383. /* [iid_is][out] */ void **ppvObject);
  1384. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1385. IUPnPDescriptionDocument * This);
  1386. ULONG ( STDMETHODCALLTYPE *Release )(
  1387. IUPnPDescriptionDocument * This);
  1388. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  1389. IUPnPDescriptionDocument * This,
  1390. /* [out] */ UINT *pctinfo);
  1391. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  1392. IUPnPDescriptionDocument * This,
  1393. /* [in] */ UINT iTInfo,
  1394. /* [in] */ LCID lcid,
  1395. /* [out] */ ITypeInfo **ppTInfo);
  1396. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  1397. IUPnPDescriptionDocument * This,
  1398. /* [in] */ REFIID riid,
  1399. /* [size_is][in] */ LPOLESTR *rgszNames,
  1400. /* [in] */ UINT cNames,
  1401. /* [in] */ LCID lcid,
  1402. /* [size_is][out] */ DISPID *rgDispId);
  1403. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  1404. IUPnPDescriptionDocument * This,
  1405. /* [in] */ DISPID dispIdMember,
  1406. /* [in] */ REFIID riid,
  1407. /* [in] */ LCID lcid,
  1408. /* [in] */ WORD wFlags,
  1409. /* [out][in] */ DISPPARAMS *pDispParams,
  1410. /* [out] */ VARIANT *pVarResult,
  1411. /* [out] */ EXCEPINFO *pExcepInfo,
  1412. /* [out] */ UINT *puArgErr);
  1413. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ReadyState )(
  1414. IUPnPDescriptionDocument * This,
  1415. /* [retval][out] */ LONG *plReadyState);
  1416. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Load )(
  1417. IUPnPDescriptionDocument * This,
  1418. /* [in] */ BSTR bstrUrl);
  1419. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *LoadAsync )(
  1420. IUPnPDescriptionDocument * This,
  1421. /* [in] */ BSTR bstrUrl,
  1422. /* [in] */ IUnknown *punkCallback);
  1423. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LoadResult )(
  1424. IUPnPDescriptionDocument * This,
  1425. /* [retval][out] */ long *phrError);
  1426. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Abort )(
  1427. IUPnPDescriptionDocument * This);
  1428. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *RootDevice )(
  1429. IUPnPDescriptionDocument * This,
  1430. /* [retval][out] */ IUPnPDevice **ppudRootDevice);
  1431. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *DeviceByUDN )(
  1432. IUPnPDescriptionDocument * This,
  1433. /* [in] */ BSTR bstrUDN,
  1434. /* [retval][out] */ IUPnPDevice **ppudDevice);
  1435. END_INTERFACE
  1436. } IUPnPDescriptionDocumentVtbl;
  1437. interface IUPnPDescriptionDocument
  1438. {
  1439. CONST_VTBL struct IUPnPDescriptionDocumentVtbl *lpVtbl;
  1440. };
  1441. #ifdef COBJMACROS
  1442. #define IUPnPDescriptionDocument_QueryInterface(This,riid,ppvObject) \
  1443. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1444. #define IUPnPDescriptionDocument_AddRef(This) \
  1445. (This)->lpVtbl -> AddRef(This)
  1446. #define IUPnPDescriptionDocument_Release(This) \
  1447. (This)->lpVtbl -> Release(This)
  1448. #define IUPnPDescriptionDocument_GetTypeInfoCount(This,pctinfo) \
  1449. (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1450. #define IUPnPDescriptionDocument_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  1451. (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1452. #define IUPnPDescriptionDocument_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  1453. (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1454. #define IUPnPDescriptionDocument_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  1455. (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1456. #define IUPnPDescriptionDocument_get_ReadyState(This,plReadyState) \
  1457. (This)->lpVtbl -> get_ReadyState(This,plReadyState)
  1458. #define IUPnPDescriptionDocument_Load(This,bstrUrl) \
  1459. (This)->lpVtbl -> Load(This,bstrUrl)
  1460. #define IUPnPDescriptionDocument_LoadAsync(This,bstrUrl,punkCallback) \
  1461. (This)->lpVtbl -> LoadAsync(This,bstrUrl,punkCallback)
  1462. #define IUPnPDescriptionDocument_get_LoadResult(This,phrError) \
  1463. (This)->lpVtbl -> get_LoadResult(This,phrError)
  1464. #define IUPnPDescriptionDocument_Abort(This) \
  1465. (This)->lpVtbl -> Abort(This)
  1466. #define IUPnPDescriptionDocument_RootDevice(This,ppudRootDevice) \
  1467. (This)->lpVtbl -> RootDevice(This,ppudRootDevice)
  1468. #define IUPnPDescriptionDocument_DeviceByUDN(This,bstrUDN,ppudDevice) \
  1469. (This)->lpVtbl -> DeviceByUDN(This,bstrUDN,ppudDevice)
  1470. #endif /* COBJMACROS */
  1471. #endif /* C style interface */
  1472. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUPnPDescriptionDocument_get_ReadyState_Proxy(
  1473. IUPnPDescriptionDocument * This,
  1474. /* [retval][out] */ LONG *plReadyState);
  1475. void __RPC_STUB IUPnPDescriptionDocument_get_ReadyState_Stub(
  1476. IRpcStubBuffer *This,
  1477. IRpcChannelBuffer *_pRpcChannelBuffer,
  1478. PRPC_MESSAGE _pRpcMessage,
  1479. DWORD *_pdwStubPhase);
  1480. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IUPnPDescriptionDocument_Load_Proxy(
  1481. IUPnPDescriptionDocument * This,
  1482. /* [in] */ BSTR bstrUrl);
  1483. void __RPC_STUB IUPnPDescriptionDocument_Load_Stub(
  1484. IRpcStubBuffer *This,
  1485. IRpcChannelBuffer *_pRpcChannelBuffer,
  1486. PRPC_MESSAGE _pRpcMessage,
  1487. DWORD *_pdwStubPhase);
  1488. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IUPnPDescriptionDocument_LoadAsync_Proxy(
  1489. IUPnPDescriptionDocument * This,
  1490. /* [in] */ BSTR bstrUrl,
  1491. /* [in] */ IUnknown *punkCallback);
  1492. void __RPC_STUB IUPnPDescriptionDocument_LoadAsync_Stub(
  1493. IRpcStubBuffer *This,
  1494. IRpcChannelBuffer *_pRpcChannelBuffer,
  1495. PRPC_MESSAGE _pRpcMessage,
  1496. DWORD *_pdwStubPhase);
  1497. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUPnPDescriptionDocument_get_LoadResult_Proxy(
  1498. IUPnPDescriptionDocument * This,
  1499. /* [retval][out] */ long *phrError);
  1500. void __RPC_STUB IUPnPDescriptionDocument_get_LoadResult_Stub(
  1501. IRpcStubBuffer *This,
  1502. IRpcChannelBuffer *_pRpcChannelBuffer,
  1503. PRPC_MESSAGE _pRpcMessage,
  1504. DWORD *_pdwStubPhase);
  1505. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IUPnPDescriptionDocument_Abort_Proxy(
  1506. IUPnPDescriptionDocument * This);
  1507. void __RPC_STUB IUPnPDescriptionDocument_Abort_Stub(
  1508. IRpcStubBuffer *This,
  1509. IRpcChannelBuffer *_pRpcChannelBuffer,
  1510. PRPC_MESSAGE _pRpcMessage,
  1511. DWORD *_pdwStubPhase);
  1512. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IUPnPDescriptionDocument_RootDevice_Proxy(
  1513. IUPnPDescriptionDocument * This,
  1514. /* [retval][out] */ IUPnPDevice **ppudRootDevice);
  1515. void __RPC_STUB IUPnPDescriptionDocument_RootDevice_Stub(
  1516. IRpcStubBuffer *This,
  1517. IRpcChannelBuffer *_pRpcChannelBuffer,
  1518. PRPC_MESSAGE _pRpcMessage,
  1519. DWORD *_pdwStubPhase);
  1520. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IUPnPDescriptionDocument_DeviceByUDN_Proxy(
  1521. IUPnPDescriptionDocument * This,
  1522. /* [in] */ BSTR bstrUDN,
  1523. /* [retval][out] */ IUPnPDevice **ppudDevice);
  1524. void __RPC_STUB IUPnPDescriptionDocument_DeviceByUDN_Stub(
  1525. IRpcStubBuffer *This,
  1526. IRpcChannelBuffer *_pRpcChannelBuffer,
  1527. PRPC_MESSAGE _pRpcMessage,
  1528. DWORD *_pdwStubPhase);
  1529. #endif /* __IUPnPDescriptionDocument_INTERFACE_DEFINED__ */
  1530. #ifndef __IUPnPDescriptionDocumentCallback_INTERFACE_DEFINED__
  1531. #define __IUPnPDescriptionDocumentCallback_INTERFACE_DEFINED__
  1532. /* interface IUPnPDescriptionDocumentCallback */
  1533. /* [unique][uuid][object] */
  1534. EXTERN_C const IID IID_IUPnPDescriptionDocumentCallback;
  1535. #if defined(__cplusplus) && !defined(CINTERFACE)
  1536. MIDL_INTERFACE("77394c69-5486-40d6-9bc3-4991983e02da")
  1537. IUPnPDescriptionDocumentCallback : public IUnknown
  1538. {
  1539. public:
  1540. virtual HRESULT STDMETHODCALLTYPE LoadComplete(
  1541. /* [in] */ HRESULT hrLoadResult) = 0;
  1542. };
  1543. #else /* C style interface */
  1544. typedef struct IUPnPDescriptionDocumentCallbackVtbl
  1545. {
  1546. BEGIN_INTERFACE
  1547. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1548. IUPnPDescriptionDocumentCallback * This,
  1549. /* [in] */ REFIID riid,
  1550. /* [iid_is][out] */ void **ppvObject);
  1551. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1552. IUPnPDescriptionDocumentCallback * This);
  1553. ULONG ( STDMETHODCALLTYPE *Release )(
  1554. IUPnPDescriptionDocumentCallback * This);
  1555. HRESULT ( STDMETHODCALLTYPE *LoadComplete )(
  1556. IUPnPDescriptionDocumentCallback * This,
  1557. /* [in] */ HRESULT hrLoadResult);
  1558. END_INTERFACE
  1559. } IUPnPDescriptionDocumentCallbackVtbl;
  1560. interface IUPnPDescriptionDocumentCallback
  1561. {
  1562. CONST_VTBL struct IUPnPDescriptionDocumentCallbackVtbl *lpVtbl;
  1563. };
  1564. #ifdef COBJMACROS
  1565. #define IUPnPDescriptionDocumentCallback_QueryInterface(This,riid,ppvObject) \
  1566. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1567. #define IUPnPDescriptionDocumentCallback_AddRef(This) \
  1568. (This)->lpVtbl -> AddRef(This)
  1569. #define IUPnPDescriptionDocumentCallback_Release(This) \
  1570. (This)->lpVtbl -> Release(This)
  1571. #define IUPnPDescriptionDocumentCallback_LoadComplete(This,hrLoadResult) \
  1572. (This)->lpVtbl -> LoadComplete(This,hrLoadResult)
  1573. #endif /* COBJMACROS */
  1574. #endif /* C style interface */
  1575. HRESULT STDMETHODCALLTYPE IUPnPDescriptionDocumentCallback_LoadComplete_Proxy(
  1576. IUPnPDescriptionDocumentCallback * This,
  1577. /* [in] */ HRESULT hrLoadResult);
  1578. void __RPC_STUB IUPnPDescriptionDocumentCallback_LoadComplete_Stub(
  1579. IRpcStubBuffer *This,
  1580. IRpcChannelBuffer *_pRpcChannelBuffer,
  1581. PRPC_MESSAGE _pRpcMessage,
  1582. DWORD *_pdwStubPhase);
  1583. #endif /* __IUPnPDescriptionDocumentCallback_INTERFACE_DEFINED__ */
  1584. #ifndef __UPNPLib_LIBRARY_DEFINED__
  1585. #define __UPNPLib_LIBRARY_DEFINED__
  1586. /* library UPNPLib */
  1587. /* [helpstring][version][uuid] */
  1588. EXTERN_C const IID LIBID_UPNPLib;
  1589. EXTERN_C const CLSID CLSID_UPnPDeviceFinder;
  1590. #ifdef __cplusplus
  1591. class DECLSPEC_UUID("E2085F28-FEB7-404A-B8E7-E659BDEAAA02")
  1592. UPnPDeviceFinder;
  1593. #endif
  1594. EXTERN_C const CLSID CLSID_UPnPDevices;
  1595. #ifdef __cplusplus
  1596. class DECLSPEC_UUID("B9E84FFD-AD3C-40A4-B835-0882EBCBAAA8")
  1597. UPnPDevices;
  1598. #endif
  1599. EXTERN_C const CLSID CLSID_UPnPDevice;
  1600. #ifdef __cplusplus
  1601. class DECLSPEC_UUID("A32552C5-BA61-457A-B59A-A2561E125E33")
  1602. UPnPDevice;
  1603. #endif
  1604. EXTERN_C const CLSID CLSID_UPnPServices;
  1605. #ifdef __cplusplus
  1606. class DECLSPEC_UUID("C0BC4B4A-A406-4EFC-932F-B8546B8100CC")
  1607. UPnPServices;
  1608. #endif
  1609. EXTERN_C const CLSID CLSID_UPnPService;
  1610. #ifdef __cplusplus
  1611. class DECLSPEC_UUID("C624BA95-FBCB-4409-8C03-8CCEEC533EF1")
  1612. UPnPService;
  1613. #endif
  1614. EXTERN_C const CLSID CLSID_UPnPDescriptionDocument;
  1615. #ifdef __cplusplus
  1616. class DECLSPEC_UUID("1d8a9b47-3a28-4ce2-8a4b-bd34e45bceeb")
  1617. UPnPDescriptionDocument;
  1618. #endif
  1619. #ifndef __IUPnPDeviceHostSetup_INTERFACE_DEFINED__
  1620. #define __IUPnPDeviceHostSetup_INTERFACE_DEFINED__
  1621. /* interface IUPnPDeviceHostSetup */
  1622. /* [object][unique][uuid][oleautomation] */
  1623. EXTERN_C const IID IID_IUPnPDeviceHostSetup;
  1624. #if defined(__cplusplus) && !defined(CINTERFACE)
  1625. MIDL_INTERFACE("6BD34909-54E7-4fbf-8562-7B89709A589A")
  1626. IUPnPDeviceHostSetup : public IUnknown
  1627. {
  1628. public:
  1629. virtual HRESULT STDMETHODCALLTYPE AskIfNotAlreadyEnabled(
  1630. /* [retval][out] */ VARIANT_BOOL *pbEnabled) = 0;
  1631. };
  1632. #else /* C style interface */
  1633. typedef struct IUPnPDeviceHostSetupVtbl
  1634. {
  1635. BEGIN_INTERFACE
  1636. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1637. IUPnPDeviceHostSetup * This,
  1638. /* [in] */ REFIID riid,
  1639. /* [iid_is][out] */ void **ppvObject);
  1640. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1641. IUPnPDeviceHostSetup * This);
  1642. ULONG ( STDMETHODCALLTYPE *Release )(
  1643. IUPnPDeviceHostSetup * This);
  1644. HRESULT ( STDMETHODCALLTYPE *AskIfNotAlreadyEnabled )(
  1645. IUPnPDeviceHostSetup * This,
  1646. /* [retval][out] */ VARIANT_BOOL *pbEnabled);
  1647. END_INTERFACE
  1648. } IUPnPDeviceHostSetupVtbl;
  1649. interface IUPnPDeviceHostSetup
  1650. {
  1651. CONST_VTBL struct IUPnPDeviceHostSetupVtbl *lpVtbl;
  1652. };
  1653. #ifdef COBJMACROS
  1654. #define IUPnPDeviceHostSetup_QueryInterface(This,riid,ppvObject) \
  1655. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1656. #define IUPnPDeviceHostSetup_AddRef(This) \
  1657. (This)->lpVtbl -> AddRef(This)
  1658. #define IUPnPDeviceHostSetup_Release(This) \
  1659. (This)->lpVtbl -> Release(This)
  1660. #define IUPnPDeviceHostSetup_AskIfNotAlreadyEnabled(This,pbEnabled) \
  1661. (This)->lpVtbl -> AskIfNotAlreadyEnabled(This,pbEnabled)
  1662. #endif /* COBJMACROS */
  1663. #endif /* C style interface */
  1664. HRESULT STDMETHODCALLTYPE IUPnPDeviceHostSetup_AskIfNotAlreadyEnabled_Proxy(
  1665. IUPnPDeviceHostSetup * This,
  1666. /* [retval][out] */ VARIANT_BOOL *pbEnabled);
  1667. void __RPC_STUB IUPnPDeviceHostSetup_AskIfNotAlreadyEnabled_Stub(
  1668. IRpcStubBuffer *This,
  1669. IRpcChannelBuffer *_pRpcChannelBuffer,
  1670. PRPC_MESSAGE _pRpcMessage,
  1671. DWORD *_pdwStubPhase);
  1672. #endif /* __IUPnPDeviceHostSetup_INTERFACE_DEFINED__ */
  1673. EXTERN_C const CLSID CLSID_UPnPDeviceHostSetup;
  1674. #ifdef __cplusplus
  1675. class DECLSPEC_UUID("B4609411-C81C-4cce-8C76-C6B50C9402C6")
  1676. UPnPDeviceHostSetup;
  1677. #endif
  1678. #endif /* __UPNPLib_LIBRARY_DEFINED__ */
  1679. /* Additional Prototypes for ALL interfaces */
  1680. unsigned long __RPC_USER BSTR_UserSize( unsigned long *, unsigned long , BSTR * );
  1681. unsigned char * __RPC_USER BSTR_UserMarshal( unsigned long *, unsigned char *, BSTR * );
  1682. unsigned char * __RPC_USER BSTR_UserUnmarshal(unsigned long *, unsigned char *, BSTR * );
  1683. void __RPC_USER BSTR_UserFree( unsigned long *, BSTR * );
  1684. unsigned long __RPC_USER VARIANT_UserSize( unsigned long *, unsigned long , VARIANT * );
  1685. unsigned char * __RPC_USER VARIANT_UserMarshal( unsigned long *, unsigned char *, VARIANT * );
  1686. unsigned char * __RPC_USER VARIANT_UserUnmarshal(unsigned long *, unsigned char *, VARIANT * );
  1687. void __RPC_USER VARIANT_UserFree( unsigned long *, VARIANT * );
  1688. /* end of Additional Prototypes */
  1689. #ifdef __cplusplus
  1690. }
  1691. #endif
  1692. #endif