wsddisco.h 48 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139
  1. /*** Autogenerated by WIDL 7.7 from include/wsddisco.idl - Do not edit ***/
  2. #ifdef _WIN32
  3. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  4. #define __REQUIRED_RPCNDR_H_VERSION__ 475
  5. #endif
  6. #include <rpc.h>
  7. #include <rpcndr.h>
  8. #endif
  9. #ifndef COM_NO_WINDOWS_H
  10. #include <windows.h>
  11. #include <ole2.h>
  12. #endif
  13. #ifndef __wsddisco_h__
  14. #define __wsddisco_h__
  15. /* Forward declarations */
  16. #ifndef __IWSDScopeMatchingRule_FWD_DEFINED__
  17. #define __IWSDScopeMatchingRule_FWD_DEFINED__
  18. typedef interface IWSDScopeMatchingRule IWSDScopeMatchingRule;
  19. #ifdef __cplusplus
  20. interface IWSDScopeMatchingRule;
  21. #endif /* __cplusplus */
  22. #endif
  23. #ifndef __IWSDiscoveryProviderNotify_FWD_DEFINED__
  24. #define __IWSDiscoveryProviderNotify_FWD_DEFINED__
  25. typedef interface IWSDiscoveryProviderNotify IWSDiscoveryProviderNotify;
  26. #ifdef __cplusplus
  27. interface IWSDiscoveryProviderNotify;
  28. #endif /* __cplusplus */
  29. #endif
  30. #ifndef __IWSDiscoveryProvider_FWD_DEFINED__
  31. #define __IWSDiscoveryProvider_FWD_DEFINED__
  32. typedef interface IWSDiscoveryProvider IWSDiscoveryProvider;
  33. #ifdef __cplusplus
  34. interface IWSDiscoveryProvider;
  35. #endif /* __cplusplus */
  36. #endif
  37. #ifndef __IWSDiscoveredService_FWD_DEFINED__
  38. #define __IWSDiscoveredService_FWD_DEFINED__
  39. typedef interface IWSDiscoveredService IWSDiscoveredService;
  40. #ifdef __cplusplus
  41. interface IWSDiscoveredService;
  42. #endif /* __cplusplus */
  43. #endif
  44. #ifndef __IWSDiscoveryPublisherNotify_FWD_DEFINED__
  45. #define __IWSDiscoveryPublisherNotify_FWD_DEFINED__
  46. typedef interface IWSDiscoveryPublisherNotify IWSDiscoveryPublisherNotify;
  47. #ifdef __cplusplus
  48. interface IWSDiscoveryPublisherNotify;
  49. #endif /* __cplusplus */
  50. #endif
  51. #ifndef __IWSDiscoveryPublisher_FWD_DEFINED__
  52. #define __IWSDiscoveryPublisher_FWD_DEFINED__
  53. typedef interface IWSDiscoveryPublisher IWSDiscoveryPublisher;
  54. #ifdef __cplusplus
  55. interface IWSDiscoveryPublisher;
  56. #endif /* __cplusplus */
  57. #endif
  58. /* Headers for imported files */
  59. #include <objidl.h>
  60. #include <wsdxmldom.h>
  61. #include <wsdtypes.h>
  62. #ifdef __cplusplus
  63. extern "C" {
  64. #endif
  65. #include <winapifamily.h>
  66. #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
  67. #ifndef __IWSDXMLContext_FWD_DEFINED__
  68. #define __IWSDXMLContext_FWD_DEFINED__
  69. typedef interface IWSDXMLContext IWSDXMLContext;
  70. #ifdef __cplusplus
  71. interface IWSDXMLContext;
  72. #endif /* __cplusplus */
  73. #endif
  74. #ifndef __IWSDiscoveryProvider_FWD_DEFINED__
  75. #define __IWSDiscoveryProvider_FWD_DEFINED__
  76. typedef interface IWSDiscoveryProvider IWSDiscoveryProvider;
  77. #ifdef __cplusplus
  78. interface IWSDiscoveryProvider;
  79. #endif /* __cplusplus */
  80. #endif
  81. #ifndef __IWSDiscoveryProviderNotify_FWD_DEFINED__
  82. #define __IWSDiscoveryProviderNotify_FWD_DEFINED__
  83. typedef interface IWSDiscoveryProviderNotify IWSDiscoveryProviderNotify;
  84. #ifdef __cplusplus
  85. interface IWSDiscoveryProviderNotify;
  86. #endif /* __cplusplus */
  87. #endif
  88. #ifndef __IWSDiscoveredService_FWD_DEFINED__
  89. #define __IWSDiscoveredService_FWD_DEFINED__
  90. typedef interface IWSDiscoveredService IWSDiscoveredService;
  91. #ifdef __cplusplus
  92. interface IWSDiscoveredService;
  93. #endif /* __cplusplus */
  94. #endif
  95. #ifndef __IWSDiscoveryPublisher_FWD_DEFINED__
  96. #define __IWSDiscoveryPublisher_FWD_DEFINED__
  97. typedef interface IWSDiscoveryPublisher IWSDiscoveryPublisher;
  98. #ifdef __cplusplus
  99. interface IWSDiscoveryPublisher;
  100. #endif /* __cplusplus */
  101. #endif
  102. #ifndef __IWSDiscoveryPublisherNotify_FWD_DEFINED__
  103. #define __IWSDiscoveryPublisherNotify_FWD_DEFINED__
  104. typedef interface IWSDiscoveryPublisherNotify IWSDiscoveryPublisherNotify;
  105. #ifdef __cplusplus
  106. interface IWSDiscoveryPublisherNotify;
  107. #endif /* __cplusplus */
  108. #endif
  109. #ifndef __IWSDScopeMatchingRule_FWD_DEFINED__
  110. #define __IWSDScopeMatchingRule_FWD_DEFINED__
  111. typedef interface IWSDScopeMatchingRule IWSDScopeMatchingRule;
  112. #ifdef __cplusplus
  113. interface IWSDScopeMatchingRule;
  114. #endif /* __cplusplus */
  115. #endif
  116. /*****************************************************************************
  117. * IWSDScopeMatchingRule interface
  118. */
  119. #ifndef __IWSDScopeMatchingRule_INTERFACE_DEFINED__
  120. #define __IWSDScopeMatchingRule_INTERFACE_DEFINED__
  121. DEFINE_GUID(IID_IWSDScopeMatchingRule, 0xfcafe424, 0xfef5, 0x481a, 0xbd,0x9f, 0x33,0xce,0x05,0x74,0x25,0x6f);
  122. #if defined(__cplusplus) && !defined(CINTERFACE)
  123. MIDL_INTERFACE("fcafe424-fef5-481a-bd9f-33ce0574256f")
  124. IWSDScopeMatchingRule : public IUnknown
  125. {
  126. virtual HRESULT STDMETHODCALLTYPE GetScopeRule(
  127. LPCWSTR *ppszScopeMatchingRule) = 0;
  128. virtual HRESULT STDMETHODCALLTYPE MatchScopes(
  129. LPCWSTR pszScope1,
  130. LPCWSTR pszScope2,
  131. WINBOOL *pfMatch) = 0;
  132. };
  133. #ifdef __CRT_UUID_DECL
  134. __CRT_UUID_DECL(IWSDScopeMatchingRule, 0xfcafe424, 0xfef5, 0x481a, 0xbd,0x9f, 0x33,0xce,0x05,0x74,0x25,0x6f)
  135. #endif
  136. #else
  137. typedef struct IWSDScopeMatchingRuleVtbl {
  138. BEGIN_INTERFACE
  139. /*** IUnknown methods ***/
  140. HRESULT (STDMETHODCALLTYPE *QueryInterface)(
  141. IWSDScopeMatchingRule *This,
  142. REFIID riid,
  143. void **ppvObject);
  144. ULONG (STDMETHODCALLTYPE *AddRef)(
  145. IWSDScopeMatchingRule *This);
  146. ULONG (STDMETHODCALLTYPE *Release)(
  147. IWSDScopeMatchingRule *This);
  148. /*** IWSDScopeMatchingRule methods ***/
  149. HRESULT (STDMETHODCALLTYPE *GetScopeRule)(
  150. IWSDScopeMatchingRule *This,
  151. LPCWSTR *ppszScopeMatchingRule);
  152. HRESULT (STDMETHODCALLTYPE *MatchScopes)(
  153. IWSDScopeMatchingRule *This,
  154. LPCWSTR pszScope1,
  155. LPCWSTR pszScope2,
  156. WINBOOL *pfMatch);
  157. END_INTERFACE
  158. } IWSDScopeMatchingRuleVtbl;
  159. interface IWSDScopeMatchingRule {
  160. CONST_VTBL IWSDScopeMatchingRuleVtbl* lpVtbl;
  161. };
  162. #ifdef COBJMACROS
  163. #ifndef WIDL_C_INLINE_WRAPPERS
  164. /*** IUnknown methods ***/
  165. #define IWSDScopeMatchingRule_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  166. #define IWSDScopeMatchingRule_AddRef(This) (This)->lpVtbl->AddRef(This)
  167. #define IWSDScopeMatchingRule_Release(This) (This)->lpVtbl->Release(This)
  168. /*** IWSDScopeMatchingRule methods ***/
  169. #define IWSDScopeMatchingRule_GetScopeRule(This,ppszScopeMatchingRule) (This)->lpVtbl->GetScopeRule(This,ppszScopeMatchingRule)
  170. #define IWSDScopeMatchingRule_MatchScopes(This,pszScope1,pszScope2,pfMatch) (This)->lpVtbl->MatchScopes(This,pszScope1,pszScope2,pfMatch)
  171. #else
  172. /*** IUnknown methods ***/
  173. static FORCEINLINE HRESULT IWSDScopeMatchingRule_QueryInterface(IWSDScopeMatchingRule* This,REFIID riid,void **ppvObject) {
  174. return This->lpVtbl->QueryInterface(This,riid,ppvObject);
  175. }
  176. static FORCEINLINE ULONG IWSDScopeMatchingRule_AddRef(IWSDScopeMatchingRule* This) {
  177. return This->lpVtbl->AddRef(This);
  178. }
  179. static FORCEINLINE ULONG IWSDScopeMatchingRule_Release(IWSDScopeMatchingRule* This) {
  180. return This->lpVtbl->Release(This);
  181. }
  182. /*** IWSDScopeMatchingRule methods ***/
  183. static FORCEINLINE HRESULT IWSDScopeMatchingRule_GetScopeRule(IWSDScopeMatchingRule* This,LPCWSTR *ppszScopeMatchingRule) {
  184. return This->lpVtbl->GetScopeRule(This,ppszScopeMatchingRule);
  185. }
  186. static FORCEINLINE HRESULT IWSDScopeMatchingRule_MatchScopes(IWSDScopeMatchingRule* This,LPCWSTR pszScope1,LPCWSTR pszScope2,WINBOOL *pfMatch) {
  187. return This->lpVtbl->MatchScopes(This,pszScope1,pszScope2,pfMatch);
  188. }
  189. #endif
  190. #endif
  191. #endif
  192. #endif /* __IWSDScopeMatchingRule_INTERFACE_DEFINED__ */
  193. /*****************************************************************************
  194. * IWSDiscoveryProviderNotify interface
  195. */
  196. #ifndef __IWSDiscoveryProviderNotify_INTERFACE_DEFINED__
  197. #define __IWSDiscoveryProviderNotify_INTERFACE_DEFINED__
  198. DEFINE_GUID(IID_IWSDiscoveryProviderNotify, 0x73ee3ced, 0xb6e6, 0x4329, 0xa5,0x46, 0x3e,0x8a,0xd4,0x65,0x63,0xd2);
  199. #if defined(__cplusplus) && !defined(CINTERFACE)
  200. MIDL_INTERFACE("73ee3ced-b6e6-4329-a546-3e8ad46563d2")
  201. IWSDiscoveryProviderNotify : public IUnknown
  202. {
  203. virtual HRESULT STDMETHODCALLTYPE Add(
  204. IWSDiscoveredService *pService) = 0;
  205. virtual HRESULT STDMETHODCALLTYPE Remove(
  206. IWSDiscoveredService *pService) = 0;
  207. virtual HRESULT STDMETHODCALLTYPE SearchFailed(
  208. HRESULT hr,
  209. LPCWSTR pszTag) = 0;
  210. virtual HRESULT STDMETHODCALLTYPE SearchComplete(
  211. LPCWSTR pszTag) = 0;
  212. };
  213. #ifdef __CRT_UUID_DECL
  214. __CRT_UUID_DECL(IWSDiscoveryProviderNotify, 0x73ee3ced, 0xb6e6, 0x4329, 0xa5,0x46, 0x3e,0x8a,0xd4,0x65,0x63,0xd2)
  215. #endif
  216. #else
  217. typedef struct IWSDiscoveryProviderNotifyVtbl {
  218. BEGIN_INTERFACE
  219. /*** IUnknown methods ***/
  220. HRESULT (STDMETHODCALLTYPE *QueryInterface)(
  221. IWSDiscoveryProviderNotify *This,
  222. REFIID riid,
  223. void **ppvObject);
  224. ULONG (STDMETHODCALLTYPE *AddRef)(
  225. IWSDiscoveryProviderNotify *This);
  226. ULONG (STDMETHODCALLTYPE *Release)(
  227. IWSDiscoveryProviderNotify *This);
  228. /*** IWSDiscoveryProviderNotify methods ***/
  229. HRESULT (STDMETHODCALLTYPE *Add)(
  230. IWSDiscoveryProviderNotify *This,
  231. IWSDiscoveredService *pService);
  232. HRESULT (STDMETHODCALLTYPE *Remove)(
  233. IWSDiscoveryProviderNotify *This,
  234. IWSDiscoveredService *pService);
  235. HRESULT (STDMETHODCALLTYPE *SearchFailed)(
  236. IWSDiscoveryProviderNotify *This,
  237. HRESULT hr,
  238. LPCWSTR pszTag);
  239. HRESULT (STDMETHODCALLTYPE *SearchComplete)(
  240. IWSDiscoveryProviderNotify *This,
  241. LPCWSTR pszTag);
  242. END_INTERFACE
  243. } IWSDiscoveryProviderNotifyVtbl;
  244. interface IWSDiscoveryProviderNotify {
  245. CONST_VTBL IWSDiscoveryProviderNotifyVtbl* lpVtbl;
  246. };
  247. #ifdef COBJMACROS
  248. #ifndef WIDL_C_INLINE_WRAPPERS
  249. /*** IUnknown methods ***/
  250. #define IWSDiscoveryProviderNotify_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  251. #define IWSDiscoveryProviderNotify_AddRef(This) (This)->lpVtbl->AddRef(This)
  252. #define IWSDiscoveryProviderNotify_Release(This) (This)->lpVtbl->Release(This)
  253. /*** IWSDiscoveryProviderNotify methods ***/
  254. #define IWSDiscoveryProviderNotify_Add(This,pService) (This)->lpVtbl->Add(This,pService)
  255. #define IWSDiscoveryProviderNotify_Remove(This,pService) (This)->lpVtbl->Remove(This,pService)
  256. #define IWSDiscoveryProviderNotify_SearchFailed(This,hr,pszTag) (This)->lpVtbl->SearchFailed(This,hr,pszTag)
  257. #define IWSDiscoveryProviderNotify_SearchComplete(This,pszTag) (This)->lpVtbl->SearchComplete(This,pszTag)
  258. #else
  259. /*** IUnknown methods ***/
  260. static FORCEINLINE HRESULT IWSDiscoveryProviderNotify_QueryInterface(IWSDiscoveryProviderNotify* This,REFIID riid,void **ppvObject) {
  261. return This->lpVtbl->QueryInterface(This,riid,ppvObject);
  262. }
  263. static FORCEINLINE ULONG IWSDiscoveryProviderNotify_AddRef(IWSDiscoveryProviderNotify* This) {
  264. return This->lpVtbl->AddRef(This);
  265. }
  266. static FORCEINLINE ULONG IWSDiscoveryProviderNotify_Release(IWSDiscoveryProviderNotify* This) {
  267. return This->lpVtbl->Release(This);
  268. }
  269. /*** IWSDiscoveryProviderNotify methods ***/
  270. static FORCEINLINE HRESULT IWSDiscoveryProviderNotify_Add(IWSDiscoveryProviderNotify* This,IWSDiscoveredService *pService) {
  271. return This->lpVtbl->Add(This,pService);
  272. }
  273. static FORCEINLINE HRESULT IWSDiscoveryProviderNotify_Remove(IWSDiscoveryProviderNotify* This,IWSDiscoveredService *pService) {
  274. return This->lpVtbl->Remove(This,pService);
  275. }
  276. static FORCEINLINE HRESULT IWSDiscoveryProviderNotify_SearchFailed(IWSDiscoveryProviderNotify* This,HRESULT hr,LPCWSTR pszTag) {
  277. return This->lpVtbl->SearchFailed(This,hr,pszTag);
  278. }
  279. static FORCEINLINE HRESULT IWSDiscoveryProviderNotify_SearchComplete(IWSDiscoveryProviderNotify* This,LPCWSTR pszTag) {
  280. return This->lpVtbl->SearchComplete(This,pszTag);
  281. }
  282. #endif
  283. #endif
  284. #endif
  285. #endif /* __IWSDiscoveryProviderNotify_INTERFACE_DEFINED__ */
  286. /*****************************************************************************
  287. * IWSDiscoveryProvider interface
  288. */
  289. #ifndef __IWSDiscoveryProvider_INTERFACE_DEFINED__
  290. #define __IWSDiscoveryProvider_INTERFACE_DEFINED__
  291. DEFINE_GUID(IID_IWSDiscoveryProvider, 0x8ffc8e55, 0xf0eb, 0x480f, 0x88,0xb7, 0xb4,0x35,0xdd,0x28,0x1d,0x45);
  292. #if defined(__cplusplus) && !defined(CINTERFACE)
  293. MIDL_INTERFACE("8ffc8e55-f0eb-480f-88b7-b435dd281d45")
  294. IWSDiscoveryProvider : public IUnknown
  295. {
  296. virtual HRESULT STDMETHODCALLTYPE SetAddressFamily(
  297. DWORD dwAddressFamily) = 0;
  298. virtual HRESULT STDMETHODCALLTYPE Attach(
  299. IWSDiscoveryProviderNotify *pSink) = 0;
  300. virtual HRESULT STDMETHODCALLTYPE Detach(
  301. ) = 0;
  302. virtual HRESULT STDMETHODCALLTYPE SearchById(
  303. LPCWSTR pszId,
  304. LPCWSTR pszTag) = 0;
  305. virtual HRESULT STDMETHODCALLTYPE SearchByAddress(
  306. LPCWSTR pszAddress,
  307. LPCWSTR pszTag) = 0;
  308. virtual HRESULT STDMETHODCALLTYPE SearchByType(
  309. const WSD_NAME_LIST *pTypesList,
  310. const WSD_URI_LIST *pScopesList,
  311. LPCWSTR pszMatchBy,
  312. LPCWSTR pszTag) = 0;
  313. virtual HRESULT STDMETHODCALLTYPE GetXMLContext(
  314. IWSDXMLContext **ppContext) = 0;
  315. };
  316. #ifdef __CRT_UUID_DECL
  317. __CRT_UUID_DECL(IWSDiscoveryProvider, 0x8ffc8e55, 0xf0eb, 0x480f, 0x88,0xb7, 0xb4,0x35,0xdd,0x28,0x1d,0x45)
  318. #endif
  319. #else
  320. typedef struct IWSDiscoveryProviderVtbl {
  321. BEGIN_INTERFACE
  322. /*** IUnknown methods ***/
  323. HRESULT (STDMETHODCALLTYPE *QueryInterface)(
  324. IWSDiscoveryProvider *This,
  325. REFIID riid,
  326. void **ppvObject);
  327. ULONG (STDMETHODCALLTYPE *AddRef)(
  328. IWSDiscoveryProvider *This);
  329. ULONG (STDMETHODCALLTYPE *Release)(
  330. IWSDiscoveryProvider *This);
  331. /*** IWSDiscoveryProvider methods ***/
  332. HRESULT (STDMETHODCALLTYPE *SetAddressFamily)(
  333. IWSDiscoveryProvider *This,
  334. DWORD dwAddressFamily);
  335. HRESULT (STDMETHODCALLTYPE *Attach)(
  336. IWSDiscoveryProvider *This,
  337. IWSDiscoveryProviderNotify *pSink);
  338. HRESULT (STDMETHODCALLTYPE *Detach)(
  339. IWSDiscoveryProvider *This);
  340. HRESULT (STDMETHODCALLTYPE *SearchById)(
  341. IWSDiscoveryProvider *This,
  342. LPCWSTR pszId,
  343. LPCWSTR pszTag);
  344. HRESULT (STDMETHODCALLTYPE *SearchByAddress)(
  345. IWSDiscoveryProvider *This,
  346. LPCWSTR pszAddress,
  347. LPCWSTR pszTag);
  348. HRESULT (STDMETHODCALLTYPE *SearchByType)(
  349. IWSDiscoveryProvider *This,
  350. const WSD_NAME_LIST *pTypesList,
  351. const WSD_URI_LIST *pScopesList,
  352. LPCWSTR pszMatchBy,
  353. LPCWSTR pszTag);
  354. HRESULT (STDMETHODCALLTYPE *GetXMLContext)(
  355. IWSDiscoveryProvider *This,
  356. IWSDXMLContext **ppContext);
  357. END_INTERFACE
  358. } IWSDiscoveryProviderVtbl;
  359. interface IWSDiscoveryProvider {
  360. CONST_VTBL IWSDiscoveryProviderVtbl* lpVtbl;
  361. };
  362. #ifdef COBJMACROS
  363. #ifndef WIDL_C_INLINE_WRAPPERS
  364. /*** IUnknown methods ***/
  365. #define IWSDiscoveryProvider_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  366. #define IWSDiscoveryProvider_AddRef(This) (This)->lpVtbl->AddRef(This)
  367. #define IWSDiscoveryProvider_Release(This) (This)->lpVtbl->Release(This)
  368. /*** IWSDiscoveryProvider methods ***/
  369. #define IWSDiscoveryProvider_SetAddressFamily(This,dwAddressFamily) (This)->lpVtbl->SetAddressFamily(This,dwAddressFamily)
  370. #define IWSDiscoveryProvider_Attach(This,pSink) (This)->lpVtbl->Attach(This,pSink)
  371. #define IWSDiscoveryProvider_Detach(This) (This)->lpVtbl->Detach(This)
  372. #define IWSDiscoveryProvider_SearchById(This,pszId,pszTag) (This)->lpVtbl->SearchById(This,pszId,pszTag)
  373. #define IWSDiscoveryProvider_SearchByAddress(This,pszAddress,pszTag) (This)->lpVtbl->SearchByAddress(This,pszAddress,pszTag)
  374. #define IWSDiscoveryProvider_SearchByType(This,pTypesList,pScopesList,pszMatchBy,pszTag) (This)->lpVtbl->SearchByType(This,pTypesList,pScopesList,pszMatchBy,pszTag)
  375. #define IWSDiscoveryProvider_GetXMLContext(This,ppContext) (This)->lpVtbl->GetXMLContext(This,ppContext)
  376. #else
  377. /*** IUnknown methods ***/
  378. static FORCEINLINE HRESULT IWSDiscoveryProvider_QueryInterface(IWSDiscoveryProvider* This,REFIID riid,void **ppvObject) {
  379. return This->lpVtbl->QueryInterface(This,riid,ppvObject);
  380. }
  381. static FORCEINLINE ULONG IWSDiscoveryProvider_AddRef(IWSDiscoveryProvider* This) {
  382. return This->lpVtbl->AddRef(This);
  383. }
  384. static FORCEINLINE ULONG IWSDiscoveryProvider_Release(IWSDiscoveryProvider* This) {
  385. return This->lpVtbl->Release(This);
  386. }
  387. /*** IWSDiscoveryProvider methods ***/
  388. static FORCEINLINE HRESULT IWSDiscoveryProvider_SetAddressFamily(IWSDiscoveryProvider* This,DWORD dwAddressFamily) {
  389. return This->lpVtbl->SetAddressFamily(This,dwAddressFamily);
  390. }
  391. static FORCEINLINE HRESULT IWSDiscoveryProvider_Attach(IWSDiscoveryProvider* This,IWSDiscoveryProviderNotify *pSink) {
  392. return This->lpVtbl->Attach(This,pSink);
  393. }
  394. static FORCEINLINE HRESULT IWSDiscoveryProvider_Detach(IWSDiscoveryProvider* This) {
  395. return This->lpVtbl->Detach(This);
  396. }
  397. static FORCEINLINE HRESULT IWSDiscoveryProvider_SearchById(IWSDiscoveryProvider* This,LPCWSTR pszId,LPCWSTR pszTag) {
  398. return This->lpVtbl->SearchById(This,pszId,pszTag);
  399. }
  400. static FORCEINLINE HRESULT IWSDiscoveryProvider_SearchByAddress(IWSDiscoveryProvider* This,LPCWSTR pszAddress,LPCWSTR pszTag) {
  401. return This->lpVtbl->SearchByAddress(This,pszAddress,pszTag);
  402. }
  403. static FORCEINLINE HRESULT IWSDiscoveryProvider_SearchByType(IWSDiscoveryProvider* This,const WSD_NAME_LIST *pTypesList,const WSD_URI_LIST *pScopesList,LPCWSTR pszMatchBy,LPCWSTR pszTag) {
  404. return This->lpVtbl->SearchByType(This,pTypesList,pScopesList,pszMatchBy,pszTag);
  405. }
  406. static FORCEINLINE HRESULT IWSDiscoveryProvider_GetXMLContext(IWSDiscoveryProvider* This,IWSDXMLContext **ppContext) {
  407. return This->lpVtbl->GetXMLContext(This,ppContext);
  408. }
  409. #endif
  410. #endif
  411. #endif
  412. #endif /* __IWSDiscoveryProvider_INTERFACE_DEFINED__ */
  413. /*****************************************************************************
  414. * IWSDiscoveredService interface
  415. */
  416. #ifndef __IWSDiscoveredService_INTERFACE_DEFINED__
  417. #define __IWSDiscoveredService_INTERFACE_DEFINED__
  418. DEFINE_GUID(IID_IWSDiscoveredService, 0x4bad8a3b, 0xb374, 0x4420, 0x96,0x32, 0xaa,0xc9,0x45,0xb3,0x74,0xaa);
  419. #if defined(__cplusplus) && !defined(CINTERFACE)
  420. MIDL_INTERFACE("4bad8a3b-b374-4420-9632-aac945b374aa")
  421. IWSDiscoveredService : public IUnknown
  422. {
  423. virtual HRESULT STDMETHODCALLTYPE GetEndpointReference(
  424. WSD_ENDPOINT_REFERENCE **ppEndpointReference) = 0;
  425. virtual HRESULT STDMETHODCALLTYPE GetTypes(
  426. WSD_NAME_LIST **ppTypesList) = 0;
  427. virtual HRESULT STDMETHODCALLTYPE GetScopes(
  428. WSD_URI_LIST **ppScopesList) = 0;
  429. virtual HRESULT STDMETHODCALLTYPE GetXAddrs(
  430. WSD_URI_LIST **ppXAddrsList) = 0;
  431. virtual HRESULT STDMETHODCALLTYPE GetMetadataVersion(
  432. ULONGLONG *pullMetadataVersion) = 0;
  433. virtual HRESULT STDMETHODCALLTYPE GetExtendedDiscoXML(
  434. WSDXML_ELEMENT **ppHeaderAny,
  435. WSDXML_ELEMENT **ppBodyAny) = 0;
  436. virtual HRESULT STDMETHODCALLTYPE GetProbeResolveTag(
  437. LPCWSTR *ppszTag) = 0;
  438. virtual HRESULT STDMETHODCALLTYPE GetRemoteTransportAddress(
  439. LPCWSTR *ppszRemoteTransportAddress) = 0;
  440. virtual HRESULT STDMETHODCALLTYPE GetLocalTransportAddress(
  441. LPCWSTR *ppszLocalTransportAddress) = 0;
  442. virtual HRESULT STDMETHODCALLTYPE GetLocalInterfaceGUID(
  443. GUID *pGuid) = 0;
  444. virtual HRESULT STDMETHODCALLTYPE GetInstanceId(
  445. ULONGLONG *pullInstanceId) = 0;
  446. };
  447. #ifdef __CRT_UUID_DECL
  448. __CRT_UUID_DECL(IWSDiscoveredService, 0x4bad8a3b, 0xb374, 0x4420, 0x96,0x32, 0xaa,0xc9,0x45,0xb3,0x74,0xaa)
  449. #endif
  450. #else
  451. typedef struct IWSDiscoveredServiceVtbl {
  452. BEGIN_INTERFACE
  453. /*** IUnknown methods ***/
  454. HRESULT (STDMETHODCALLTYPE *QueryInterface)(
  455. IWSDiscoveredService *This,
  456. REFIID riid,
  457. void **ppvObject);
  458. ULONG (STDMETHODCALLTYPE *AddRef)(
  459. IWSDiscoveredService *This);
  460. ULONG (STDMETHODCALLTYPE *Release)(
  461. IWSDiscoveredService *This);
  462. /*** IWSDiscoveredService methods ***/
  463. HRESULT (STDMETHODCALLTYPE *GetEndpointReference)(
  464. IWSDiscoveredService *This,
  465. WSD_ENDPOINT_REFERENCE **ppEndpointReference);
  466. HRESULT (STDMETHODCALLTYPE *GetTypes)(
  467. IWSDiscoveredService *This,
  468. WSD_NAME_LIST **ppTypesList);
  469. HRESULT (STDMETHODCALLTYPE *GetScopes)(
  470. IWSDiscoveredService *This,
  471. WSD_URI_LIST **ppScopesList);
  472. HRESULT (STDMETHODCALLTYPE *GetXAddrs)(
  473. IWSDiscoveredService *This,
  474. WSD_URI_LIST **ppXAddrsList);
  475. HRESULT (STDMETHODCALLTYPE *GetMetadataVersion)(
  476. IWSDiscoveredService *This,
  477. ULONGLONG *pullMetadataVersion);
  478. HRESULT (STDMETHODCALLTYPE *GetExtendedDiscoXML)(
  479. IWSDiscoveredService *This,
  480. WSDXML_ELEMENT **ppHeaderAny,
  481. WSDXML_ELEMENT **ppBodyAny);
  482. HRESULT (STDMETHODCALLTYPE *GetProbeResolveTag)(
  483. IWSDiscoveredService *This,
  484. LPCWSTR *ppszTag);
  485. HRESULT (STDMETHODCALLTYPE *GetRemoteTransportAddress)(
  486. IWSDiscoveredService *This,
  487. LPCWSTR *ppszRemoteTransportAddress);
  488. HRESULT (STDMETHODCALLTYPE *GetLocalTransportAddress)(
  489. IWSDiscoveredService *This,
  490. LPCWSTR *ppszLocalTransportAddress);
  491. HRESULT (STDMETHODCALLTYPE *GetLocalInterfaceGUID)(
  492. IWSDiscoveredService *This,
  493. GUID *pGuid);
  494. HRESULT (STDMETHODCALLTYPE *GetInstanceId)(
  495. IWSDiscoveredService *This,
  496. ULONGLONG *pullInstanceId);
  497. END_INTERFACE
  498. } IWSDiscoveredServiceVtbl;
  499. interface IWSDiscoveredService {
  500. CONST_VTBL IWSDiscoveredServiceVtbl* lpVtbl;
  501. };
  502. #ifdef COBJMACROS
  503. #ifndef WIDL_C_INLINE_WRAPPERS
  504. /*** IUnknown methods ***/
  505. #define IWSDiscoveredService_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  506. #define IWSDiscoveredService_AddRef(This) (This)->lpVtbl->AddRef(This)
  507. #define IWSDiscoveredService_Release(This) (This)->lpVtbl->Release(This)
  508. /*** IWSDiscoveredService methods ***/
  509. #define IWSDiscoveredService_GetEndpointReference(This,ppEndpointReference) (This)->lpVtbl->GetEndpointReference(This,ppEndpointReference)
  510. #define IWSDiscoveredService_GetTypes(This,ppTypesList) (This)->lpVtbl->GetTypes(This,ppTypesList)
  511. #define IWSDiscoveredService_GetScopes(This,ppScopesList) (This)->lpVtbl->GetScopes(This,ppScopesList)
  512. #define IWSDiscoveredService_GetXAddrs(This,ppXAddrsList) (This)->lpVtbl->GetXAddrs(This,ppXAddrsList)
  513. #define IWSDiscoveredService_GetMetadataVersion(This,pullMetadataVersion) (This)->lpVtbl->GetMetadataVersion(This,pullMetadataVersion)
  514. #define IWSDiscoveredService_GetExtendedDiscoXML(This,ppHeaderAny,ppBodyAny) (This)->lpVtbl->GetExtendedDiscoXML(This,ppHeaderAny,ppBodyAny)
  515. #define IWSDiscoveredService_GetProbeResolveTag(This,ppszTag) (This)->lpVtbl->GetProbeResolveTag(This,ppszTag)
  516. #define IWSDiscoveredService_GetRemoteTransportAddress(This,ppszRemoteTransportAddress) (This)->lpVtbl->GetRemoteTransportAddress(This,ppszRemoteTransportAddress)
  517. #define IWSDiscoveredService_GetLocalTransportAddress(This,ppszLocalTransportAddress) (This)->lpVtbl->GetLocalTransportAddress(This,ppszLocalTransportAddress)
  518. #define IWSDiscoveredService_GetLocalInterfaceGUID(This,pGuid) (This)->lpVtbl->GetLocalInterfaceGUID(This,pGuid)
  519. #define IWSDiscoveredService_GetInstanceId(This,pullInstanceId) (This)->lpVtbl->GetInstanceId(This,pullInstanceId)
  520. #else
  521. /*** IUnknown methods ***/
  522. static FORCEINLINE HRESULT IWSDiscoveredService_QueryInterface(IWSDiscoveredService* This,REFIID riid,void **ppvObject) {
  523. return This->lpVtbl->QueryInterface(This,riid,ppvObject);
  524. }
  525. static FORCEINLINE ULONG IWSDiscoveredService_AddRef(IWSDiscoveredService* This) {
  526. return This->lpVtbl->AddRef(This);
  527. }
  528. static FORCEINLINE ULONG IWSDiscoveredService_Release(IWSDiscoveredService* This) {
  529. return This->lpVtbl->Release(This);
  530. }
  531. /*** IWSDiscoveredService methods ***/
  532. static FORCEINLINE HRESULT IWSDiscoveredService_GetEndpointReference(IWSDiscoveredService* This,WSD_ENDPOINT_REFERENCE **ppEndpointReference) {
  533. return This->lpVtbl->GetEndpointReference(This,ppEndpointReference);
  534. }
  535. static FORCEINLINE HRESULT IWSDiscoveredService_GetTypes(IWSDiscoveredService* This,WSD_NAME_LIST **ppTypesList) {
  536. return This->lpVtbl->GetTypes(This,ppTypesList);
  537. }
  538. static FORCEINLINE HRESULT IWSDiscoveredService_GetScopes(IWSDiscoveredService* This,WSD_URI_LIST **ppScopesList) {
  539. return This->lpVtbl->GetScopes(This,ppScopesList);
  540. }
  541. static FORCEINLINE HRESULT IWSDiscoveredService_GetXAddrs(IWSDiscoveredService* This,WSD_URI_LIST **ppXAddrsList) {
  542. return This->lpVtbl->GetXAddrs(This,ppXAddrsList);
  543. }
  544. static FORCEINLINE HRESULT IWSDiscoveredService_GetMetadataVersion(IWSDiscoveredService* This,ULONGLONG *pullMetadataVersion) {
  545. return This->lpVtbl->GetMetadataVersion(This,pullMetadataVersion);
  546. }
  547. static FORCEINLINE HRESULT IWSDiscoveredService_GetExtendedDiscoXML(IWSDiscoveredService* This,WSDXML_ELEMENT **ppHeaderAny,WSDXML_ELEMENT **ppBodyAny) {
  548. return This->lpVtbl->GetExtendedDiscoXML(This,ppHeaderAny,ppBodyAny);
  549. }
  550. static FORCEINLINE HRESULT IWSDiscoveredService_GetProbeResolveTag(IWSDiscoveredService* This,LPCWSTR *ppszTag) {
  551. return This->lpVtbl->GetProbeResolveTag(This,ppszTag);
  552. }
  553. static FORCEINLINE HRESULT IWSDiscoveredService_GetRemoteTransportAddress(IWSDiscoveredService* This,LPCWSTR *ppszRemoteTransportAddress) {
  554. return This->lpVtbl->GetRemoteTransportAddress(This,ppszRemoteTransportAddress);
  555. }
  556. static FORCEINLINE HRESULT IWSDiscoveredService_GetLocalTransportAddress(IWSDiscoveredService* This,LPCWSTR *ppszLocalTransportAddress) {
  557. return This->lpVtbl->GetLocalTransportAddress(This,ppszLocalTransportAddress);
  558. }
  559. static FORCEINLINE HRESULT IWSDiscoveredService_GetLocalInterfaceGUID(IWSDiscoveredService* This,GUID *pGuid) {
  560. return This->lpVtbl->GetLocalInterfaceGUID(This,pGuid);
  561. }
  562. static FORCEINLINE HRESULT IWSDiscoveredService_GetInstanceId(IWSDiscoveredService* This,ULONGLONG *pullInstanceId) {
  563. return This->lpVtbl->GetInstanceId(This,pullInstanceId);
  564. }
  565. #endif
  566. #endif
  567. #endif
  568. #endif /* __IWSDiscoveredService_INTERFACE_DEFINED__ */
  569. /*****************************************************************************
  570. * IWSDiscoveryPublisherNotify interface
  571. */
  572. #ifndef __IWSDiscoveryPublisherNotify_INTERFACE_DEFINED__
  573. #define __IWSDiscoveryPublisherNotify_INTERFACE_DEFINED__
  574. DEFINE_GUID(IID_IWSDiscoveryPublisherNotify, 0xe67651b0, 0x337a, 0x4b3c, 0x97,0x58, 0x73,0x33,0x88,0x56,0x82,0x51);
  575. #if defined(__cplusplus) && !defined(CINTERFACE)
  576. MIDL_INTERFACE("e67651b0-337a-4b3c-9758-733388568251")
  577. IWSDiscoveryPublisherNotify : public IUnknown
  578. {
  579. virtual HRESULT STDMETHODCALLTYPE ProbeHandler(
  580. const WSD_SOAP_MESSAGE *pSoap,
  581. IWSDMessageParameters *pMessageParameters) = 0;
  582. virtual HRESULT STDMETHODCALLTYPE ResolveHandler(
  583. const WSD_SOAP_MESSAGE *pSoap,
  584. IWSDMessageParameters *pMessageParameters) = 0;
  585. };
  586. #ifdef __CRT_UUID_DECL
  587. __CRT_UUID_DECL(IWSDiscoveryPublisherNotify, 0xe67651b0, 0x337a, 0x4b3c, 0x97,0x58, 0x73,0x33,0x88,0x56,0x82,0x51)
  588. #endif
  589. #else
  590. typedef struct IWSDiscoveryPublisherNotifyVtbl {
  591. BEGIN_INTERFACE
  592. /*** IUnknown methods ***/
  593. HRESULT (STDMETHODCALLTYPE *QueryInterface)(
  594. IWSDiscoveryPublisherNotify *This,
  595. REFIID riid,
  596. void **ppvObject);
  597. ULONG (STDMETHODCALLTYPE *AddRef)(
  598. IWSDiscoveryPublisherNotify *This);
  599. ULONG (STDMETHODCALLTYPE *Release)(
  600. IWSDiscoveryPublisherNotify *This);
  601. /*** IWSDiscoveryPublisherNotify methods ***/
  602. HRESULT (STDMETHODCALLTYPE *ProbeHandler)(
  603. IWSDiscoveryPublisherNotify *This,
  604. const WSD_SOAP_MESSAGE *pSoap,
  605. IWSDMessageParameters *pMessageParameters);
  606. HRESULT (STDMETHODCALLTYPE *ResolveHandler)(
  607. IWSDiscoveryPublisherNotify *This,
  608. const WSD_SOAP_MESSAGE *pSoap,
  609. IWSDMessageParameters *pMessageParameters);
  610. END_INTERFACE
  611. } IWSDiscoveryPublisherNotifyVtbl;
  612. interface IWSDiscoveryPublisherNotify {
  613. CONST_VTBL IWSDiscoveryPublisherNotifyVtbl* lpVtbl;
  614. };
  615. #ifdef COBJMACROS
  616. #ifndef WIDL_C_INLINE_WRAPPERS
  617. /*** IUnknown methods ***/
  618. #define IWSDiscoveryPublisherNotify_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  619. #define IWSDiscoveryPublisherNotify_AddRef(This) (This)->lpVtbl->AddRef(This)
  620. #define IWSDiscoveryPublisherNotify_Release(This) (This)->lpVtbl->Release(This)
  621. /*** IWSDiscoveryPublisherNotify methods ***/
  622. #define IWSDiscoveryPublisherNotify_ProbeHandler(This,pSoap,pMessageParameters) (This)->lpVtbl->ProbeHandler(This,pSoap,pMessageParameters)
  623. #define IWSDiscoveryPublisherNotify_ResolveHandler(This,pSoap,pMessageParameters) (This)->lpVtbl->ResolveHandler(This,pSoap,pMessageParameters)
  624. #else
  625. /*** IUnknown methods ***/
  626. static FORCEINLINE HRESULT IWSDiscoveryPublisherNotify_QueryInterface(IWSDiscoveryPublisherNotify* This,REFIID riid,void **ppvObject) {
  627. return This->lpVtbl->QueryInterface(This,riid,ppvObject);
  628. }
  629. static FORCEINLINE ULONG IWSDiscoveryPublisherNotify_AddRef(IWSDiscoveryPublisherNotify* This) {
  630. return This->lpVtbl->AddRef(This);
  631. }
  632. static FORCEINLINE ULONG IWSDiscoveryPublisherNotify_Release(IWSDiscoveryPublisherNotify* This) {
  633. return This->lpVtbl->Release(This);
  634. }
  635. /*** IWSDiscoveryPublisherNotify methods ***/
  636. static FORCEINLINE HRESULT IWSDiscoveryPublisherNotify_ProbeHandler(IWSDiscoveryPublisherNotify* This,const WSD_SOAP_MESSAGE *pSoap,IWSDMessageParameters *pMessageParameters) {
  637. return This->lpVtbl->ProbeHandler(This,pSoap,pMessageParameters);
  638. }
  639. static FORCEINLINE HRESULT IWSDiscoveryPublisherNotify_ResolveHandler(IWSDiscoveryPublisherNotify* This,const WSD_SOAP_MESSAGE *pSoap,IWSDMessageParameters *pMessageParameters) {
  640. return This->lpVtbl->ResolveHandler(This,pSoap,pMessageParameters);
  641. }
  642. #endif
  643. #endif
  644. #endif
  645. #endif /* __IWSDiscoveryPublisherNotify_INTERFACE_DEFINED__ */
  646. /*****************************************************************************
  647. * IWSDiscoveryPublisher interface
  648. */
  649. #ifndef __IWSDiscoveryPublisher_INTERFACE_DEFINED__
  650. #define __IWSDiscoveryPublisher_INTERFACE_DEFINED__
  651. DEFINE_GUID(IID_IWSDiscoveryPublisher, 0xae01e1a8, 0x3ff9, 0x4148, 0x81,0x16, 0x05,0x7c,0xc6,0x16,0xfe,0x13);
  652. #if defined(__cplusplus) && !defined(CINTERFACE)
  653. MIDL_INTERFACE("ae01e1a8-3ff9-4148-8116-057cc616fe13")
  654. IWSDiscoveryPublisher : public IUnknown
  655. {
  656. virtual HRESULT STDMETHODCALLTYPE SetAddressFamily(
  657. DWORD dwAddressFamily) = 0;
  658. virtual HRESULT STDMETHODCALLTYPE RegisterNotificationSink(
  659. IWSDiscoveryPublisherNotify *pSink) = 0;
  660. virtual HRESULT STDMETHODCALLTYPE UnRegisterNotificationSink(
  661. IWSDiscoveryPublisherNotify *pSink) = 0;
  662. virtual HRESULT STDMETHODCALLTYPE Publish(
  663. LPCWSTR pszId,
  664. ULONGLONG ullMetadataVersion,
  665. ULONGLONG ullInstanceId,
  666. ULONGLONG ullMessageNumber,
  667. LPCWSTR pszSessionId,
  668. const WSD_NAME_LIST *pTypesList,
  669. const WSD_URI_LIST *pScopesList,
  670. const WSD_URI_LIST *pXAddrsList) = 0;
  671. virtual HRESULT STDMETHODCALLTYPE UnPublish(
  672. LPCWSTR pszId,
  673. ULONGLONG ullInstanceId,
  674. ULONGLONG ullMessageNumber,
  675. LPCWSTR pszSessionId,
  676. const WSDXML_ELEMENT *pAny) = 0;
  677. virtual HRESULT STDMETHODCALLTYPE MatchProbe(
  678. const WSD_SOAP_MESSAGE *pProbeMessage,
  679. IWSDMessageParameters *pMessageParameters,
  680. LPCWSTR pszId,
  681. ULONGLONG ullMetadataVersion,
  682. ULONGLONG ullInstanceId,
  683. ULONGLONG ullMessageNumber,
  684. LPCWSTR pszSessionId,
  685. const WSD_NAME_LIST *pTypesList,
  686. const WSD_URI_LIST *pScopesList,
  687. const WSD_URI_LIST *pXAddrsList) = 0;
  688. virtual HRESULT STDMETHODCALLTYPE MatchResolve(
  689. const WSD_SOAP_MESSAGE *pResolveMessage,
  690. IWSDMessageParameters *pMessageParameters,
  691. LPCWSTR pszId,
  692. ULONGLONG ullMetadataVersion,
  693. ULONGLONG ullInstanceId,
  694. ULONGLONG ullMessageNumber,
  695. LPCWSTR pszSessionId,
  696. const WSD_NAME_LIST *pTypesList,
  697. const WSD_URI_LIST *pScopesList,
  698. const WSD_URI_LIST *pXAddrsList) = 0;
  699. virtual HRESULT STDMETHODCALLTYPE PublishEx(
  700. LPCWSTR pszId,
  701. ULONGLONG ullMetadataVersion,
  702. ULONGLONG ullInstanceId,
  703. ULONGLONG ullMessageNumber,
  704. LPCWSTR pszSessionId,
  705. const WSD_NAME_LIST *pTypesList,
  706. const WSD_URI_LIST *pScopesList,
  707. const WSD_URI_LIST *pXAddrsList,
  708. const WSDXML_ELEMENT *pHeaderAny,
  709. const WSDXML_ELEMENT *pReferenceParameterAny,
  710. const WSDXML_ELEMENT *pPolicyAny,
  711. const WSDXML_ELEMENT *pEndpointReferenceAny,
  712. const WSDXML_ELEMENT *pAny) = 0;
  713. virtual HRESULT STDMETHODCALLTYPE MatchProbeEx(
  714. const WSD_SOAP_MESSAGE *pProbeMessage,
  715. IWSDMessageParameters *pMessageParameters,
  716. LPCWSTR pszId,
  717. ULONGLONG ullMetadataVersion,
  718. ULONGLONG ullInstanceId,
  719. ULONGLONG ullMessageNumber,
  720. LPCWSTR pszSessionId,
  721. const WSD_NAME_LIST *pTypesList,
  722. const WSD_URI_LIST *pScopesList,
  723. const WSD_URI_LIST *pXAddrsList,
  724. const WSDXML_ELEMENT *pHeaderAny,
  725. const WSDXML_ELEMENT *pReferenceParameterAny,
  726. const WSDXML_ELEMENT *pPolicyAny,
  727. const WSDXML_ELEMENT *pEndpointReferenceAny,
  728. const WSDXML_ELEMENT *pAny) = 0;
  729. virtual HRESULT STDMETHODCALLTYPE MatchResolveEx(
  730. const WSD_SOAP_MESSAGE *pResolveMessage,
  731. IWSDMessageParameters *pMessageParameters,
  732. LPCWSTR pszId,
  733. ULONGLONG ullMetadataVersion,
  734. ULONGLONG ullInstanceId,
  735. ULONGLONG ullMessageNumber,
  736. LPCWSTR pszSessionId,
  737. const WSD_NAME_LIST *pTypesList,
  738. const WSD_URI_LIST *pScopesList,
  739. const WSD_URI_LIST *pXAddrsList,
  740. const WSDXML_ELEMENT *pHeaderAny,
  741. const WSDXML_ELEMENT *pReferenceParameterAny,
  742. const WSDXML_ELEMENT *pPolicyAny,
  743. const WSDXML_ELEMENT *pEndpointReferenceAny,
  744. const WSDXML_ELEMENT *pAny) = 0;
  745. virtual HRESULT STDMETHODCALLTYPE RegisterScopeMatchingRule(
  746. IWSDScopeMatchingRule *pScopeMatchingRule) = 0;
  747. virtual HRESULT STDMETHODCALLTYPE UnRegisterScopeMatchingRule(
  748. IWSDScopeMatchingRule *pScopeMatchingRule) = 0;
  749. virtual HRESULT STDMETHODCALLTYPE GetXMLContext(
  750. IWSDXMLContext **ppContext) = 0;
  751. };
  752. #ifdef __CRT_UUID_DECL
  753. __CRT_UUID_DECL(IWSDiscoveryPublisher, 0xae01e1a8, 0x3ff9, 0x4148, 0x81,0x16, 0x05,0x7c,0xc6,0x16,0xfe,0x13)
  754. #endif
  755. #else
  756. typedef struct IWSDiscoveryPublisherVtbl {
  757. BEGIN_INTERFACE
  758. /*** IUnknown methods ***/
  759. HRESULT (STDMETHODCALLTYPE *QueryInterface)(
  760. IWSDiscoveryPublisher *This,
  761. REFIID riid,
  762. void **ppvObject);
  763. ULONG (STDMETHODCALLTYPE *AddRef)(
  764. IWSDiscoveryPublisher *This);
  765. ULONG (STDMETHODCALLTYPE *Release)(
  766. IWSDiscoveryPublisher *This);
  767. /*** IWSDiscoveryPublisher methods ***/
  768. HRESULT (STDMETHODCALLTYPE *SetAddressFamily)(
  769. IWSDiscoveryPublisher *This,
  770. DWORD dwAddressFamily);
  771. HRESULT (STDMETHODCALLTYPE *RegisterNotificationSink)(
  772. IWSDiscoveryPublisher *This,
  773. IWSDiscoveryPublisherNotify *pSink);
  774. HRESULT (STDMETHODCALLTYPE *UnRegisterNotificationSink)(
  775. IWSDiscoveryPublisher *This,
  776. IWSDiscoveryPublisherNotify *pSink);
  777. HRESULT (STDMETHODCALLTYPE *Publish)(
  778. IWSDiscoveryPublisher *This,
  779. LPCWSTR pszId,
  780. ULONGLONG ullMetadataVersion,
  781. ULONGLONG ullInstanceId,
  782. ULONGLONG ullMessageNumber,
  783. LPCWSTR pszSessionId,
  784. const WSD_NAME_LIST *pTypesList,
  785. const WSD_URI_LIST *pScopesList,
  786. const WSD_URI_LIST *pXAddrsList);
  787. HRESULT (STDMETHODCALLTYPE *UnPublish)(
  788. IWSDiscoveryPublisher *This,
  789. LPCWSTR pszId,
  790. ULONGLONG ullInstanceId,
  791. ULONGLONG ullMessageNumber,
  792. LPCWSTR pszSessionId,
  793. const WSDXML_ELEMENT *pAny);
  794. HRESULT (STDMETHODCALLTYPE *MatchProbe)(
  795. IWSDiscoveryPublisher *This,
  796. const WSD_SOAP_MESSAGE *pProbeMessage,
  797. IWSDMessageParameters *pMessageParameters,
  798. LPCWSTR pszId,
  799. ULONGLONG ullMetadataVersion,
  800. ULONGLONG ullInstanceId,
  801. ULONGLONG ullMessageNumber,
  802. LPCWSTR pszSessionId,
  803. const WSD_NAME_LIST *pTypesList,
  804. const WSD_URI_LIST *pScopesList,
  805. const WSD_URI_LIST *pXAddrsList);
  806. HRESULT (STDMETHODCALLTYPE *MatchResolve)(
  807. IWSDiscoveryPublisher *This,
  808. const WSD_SOAP_MESSAGE *pResolveMessage,
  809. IWSDMessageParameters *pMessageParameters,
  810. LPCWSTR pszId,
  811. ULONGLONG ullMetadataVersion,
  812. ULONGLONG ullInstanceId,
  813. ULONGLONG ullMessageNumber,
  814. LPCWSTR pszSessionId,
  815. const WSD_NAME_LIST *pTypesList,
  816. const WSD_URI_LIST *pScopesList,
  817. const WSD_URI_LIST *pXAddrsList);
  818. HRESULT (STDMETHODCALLTYPE *PublishEx)(
  819. IWSDiscoveryPublisher *This,
  820. LPCWSTR pszId,
  821. ULONGLONG ullMetadataVersion,
  822. ULONGLONG ullInstanceId,
  823. ULONGLONG ullMessageNumber,
  824. LPCWSTR pszSessionId,
  825. const WSD_NAME_LIST *pTypesList,
  826. const WSD_URI_LIST *pScopesList,
  827. const WSD_URI_LIST *pXAddrsList,
  828. const WSDXML_ELEMENT *pHeaderAny,
  829. const WSDXML_ELEMENT *pReferenceParameterAny,
  830. const WSDXML_ELEMENT *pPolicyAny,
  831. const WSDXML_ELEMENT *pEndpointReferenceAny,
  832. const WSDXML_ELEMENT *pAny);
  833. HRESULT (STDMETHODCALLTYPE *MatchProbeEx)(
  834. IWSDiscoveryPublisher *This,
  835. const WSD_SOAP_MESSAGE *pProbeMessage,
  836. IWSDMessageParameters *pMessageParameters,
  837. LPCWSTR pszId,
  838. ULONGLONG ullMetadataVersion,
  839. ULONGLONG ullInstanceId,
  840. ULONGLONG ullMessageNumber,
  841. LPCWSTR pszSessionId,
  842. const WSD_NAME_LIST *pTypesList,
  843. const WSD_URI_LIST *pScopesList,
  844. const WSD_URI_LIST *pXAddrsList,
  845. const WSDXML_ELEMENT *pHeaderAny,
  846. const WSDXML_ELEMENT *pReferenceParameterAny,
  847. const WSDXML_ELEMENT *pPolicyAny,
  848. const WSDXML_ELEMENT *pEndpointReferenceAny,
  849. const WSDXML_ELEMENT *pAny);
  850. HRESULT (STDMETHODCALLTYPE *MatchResolveEx)(
  851. IWSDiscoveryPublisher *This,
  852. const WSD_SOAP_MESSAGE *pResolveMessage,
  853. IWSDMessageParameters *pMessageParameters,
  854. LPCWSTR pszId,
  855. ULONGLONG ullMetadataVersion,
  856. ULONGLONG ullInstanceId,
  857. ULONGLONG ullMessageNumber,
  858. LPCWSTR pszSessionId,
  859. const WSD_NAME_LIST *pTypesList,
  860. const WSD_URI_LIST *pScopesList,
  861. const WSD_URI_LIST *pXAddrsList,
  862. const WSDXML_ELEMENT *pHeaderAny,
  863. const WSDXML_ELEMENT *pReferenceParameterAny,
  864. const WSDXML_ELEMENT *pPolicyAny,
  865. const WSDXML_ELEMENT *pEndpointReferenceAny,
  866. const WSDXML_ELEMENT *pAny);
  867. HRESULT (STDMETHODCALLTYPE *RegisterScopeMatchingRule)(
  868. IWSDiscoveryPublisher *This,
  869. IWSDScopeMatchingRule *pScopeMatchingRule);
  870. HRESULT (STDMETHODCALLTYPE *UnRegisterScopeMatchingRule)(
  871. IWSDiscoveryPublisher *This,
  872. IWSDScopeMatchingRule *pScopeMatchingRule);
  873. HRESULT (STDMETHODCALLTYPE *GetXMLContext)(
  874. IWSDiscoveryPublisher *This,
  875. IWSDXMLContext **ppContext);
  876. END_INTERFACE
  877. } IWSDiscoveryPublisherVtbl;
  878. interface IWSDiscoveryPublisher {
  879. CONST_VTBL IWSDiscoveryPublisherVtbl* lpVtbl;
  880. };
  881. #ifdef COBJMACROS
  882. #ifndef WIDL_C_INLINE_WRAPPERS
  883. /*** IUnknown methods ***/
  884. #define IWSDiscoveryPublisher_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  885. #define IWSDiscoveryPublisher_AddRef(This) (This)->lpVtbl->AddRef(This)
  886. #define IWSDiscoveryPublisher_Release(This) (This)->lpVtbl->Release(This)
  887. /*** IWSDiscoveryPublisher methods ***/
  888. #define IWSDiscoveryPublisher_SetAddressFamily(This,dwAddressFamily) (This)->lpVtbl->SetAddressFamily(This,dwAddressFamily)
  889. #define IWSDiscoveryPublisher_RegisterNotificationSink(This,pSink) (This)->lpVtbl->RegisterNotificationSink(This,pSink)
  890. #define IWSDiscoveryPublisher_UnRegisterNotificationSink(This,pSink) (This)->lpVtbl->UnRegisterNotificationSink(This,pSink)
  891. #define IWSDiscoveryPublisher_Publish(This,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList) (This)->lpVtbl->Publish(This,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList)
  892. #define IWSDiscoveryPublisher_UnPublish(This,pszId,ullInstanceId,ullMessageNumber,pszSessionId,pAny) (This)->lpVtbl->UnPublish(This,pszId,ullInstanceId,ullMessageNumber,pszSessionId,pAny)
  893. #define IWSDiscoveryPublisher_MatchProbe(This,pProbeMessage,pMessageParameters,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList) (This)->lpVtbl->MatchProbe(This,pProbeMessage,pMessageParameters,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList)
  894. #define IWSDiscoveryPublisher_MatchResolve(This,pResolveMessage,pMessageParameters,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList) (This)->lpVtbl->MatchResolve(This,pResolveMessage,pMessageParameters,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList)
  895. #define IWSDiscoveryPublisher_PublishEx(This,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList,pHeaderAny,pReferenceParameterAny,pPolicyAny,pEndpointReferenceAny,pAny) (This)->lpVtbl->PublishEx(This,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList,pHeaderAny,pReferenceParameterAny,pPolicyAny,pEndpointReferenceAny,pAny)
  896. #define IWSDiscoveryPublisher_MatchProbeEx(This,pProbeMessage,pMessageParameters,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList,pHeaderAny,pReferenceParameterAny,pPolicyAny,pEndpointReferenceAny,pAny) (This)->lpVtbl->MatchProbeEx(This,pProbeMessage,pMessageParameters,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList,pHeaderAny,pReferenceParameterAny,pPolicyAny,pEndpointReferenceAny,pAny)
  897. #define IWSDiscoveryPublisher_MatchResolveEx(This,pResolveMessage,pMessageParameters,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList,pHeaderAny,pReferenceParameterAny,pPolicyAny,pEndpointReferenceAny,pAny) (This)->lpVtbl->MatchResolveEx(This,pResolveMessage,pMessageParameters,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList,pHeaderAny,pReferenceParameterAny,pPolicyAny,pEndpointReferenceAny,pAny)
  898. #define IWSDiscoveryPublisher_RegisterScopeMatchingRule(This,pScopeMatchingRule) (This)->lpVtbl->RegisterScopeMatchingRule(This,pScopeMatchingRule)
  899. #define IWSDiscoveryPublisher_UnRegisterScopeMatchingRule(This,pScopeMatchingRule) (This)->lpVtbl->UnRegisterScopeMatchingRule(This,pScopeMatchingRule)
  900. #define IWSDiscoveryPublisher_GetXMLContext(This,ppContext) (This)->lpVtbl->GetXMLContext(This,ppContext)
  901. #else
  902. /*** IUnknown methods ***/
  903. static FORCEINLINE HRESULT IWSDiscoveryPublisher_QueryInterface(IWSDiscoveryPublisher* This,REFIID riid,void **ppvObject) {
  904. return This->lpVtbl->QueryInterface(This,riid,ppvObject);
  905. }
  906. static FORCEINLINE ULONG IWSDiscoveryPublisher_AddRef(IWSDiscoveryPublisher* This) {
  907. return This->lpVtbl->AddRef(This);
  908. }
  909. static FORCEINLINE ULONG IWSDiscoveryPublisher_Release(IWSDiscoveryPublisher* This) {
  910. return This->lpVtbl->Release(This);
  911. }
  912. /*** IWSDiscoveryPublisher methods ***/
  913. static FORCEINLINE HRESULT IWSDiscoveryPublisher_SetAddressFamily(IWSDiscoveryPublisher* This,DWORD dwAddressFamily) {
  914. return This->lpVtbl->SetAddressFamily(This,dwAddressFamily);
  915. }
  916. static FORCEINLINE HRESULT IWSDiscoveryPublisher_RegisterNotificationSink(IWSDiscoveryPublisher* This,IWSDiscoveryPublisherNotify *pSink) {
  917. return This->lpVtbl->RegisterNotificationSink(This,pSink);
  918. }
  919. static FORCEINLINE HRESULT IWSDiscoveryPublisher_UnRegisterNotificationSink(IWSDiscoveryPublisher* This,IWSDiscoveryPublisherNotify *pSink) {
  920. return This->lpVtbl->UnRegisterNotificationSink(This,pSink);
  921. }
  922. static FORCEINLINE HRESULT IWSDiscoveryPublisher_Publish(IWSDiscoveryPublisher* This,LPCWSTR pszId,ULONGLONG ullMetadataVersion,ULONGLONG ullInstanceId,ULONGLONG ullMessageNumber,LPCWSTR pszSessionId,const WSD_NAME_LIST *pTypesList,const WSD_URI_LIST *pScopesList,const WSD_URI_LIST *pXAddrsList) {
  923. return This->lpVtbl->Publish(This,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList);
  924. }
  925. static FORCEINLINE HRESULT IWSDiscoveryPublisher_UnPublish(IWSDiscoveryPublisher* This,LPCWSTR pszId,ULONGLONG ullInstanceId,ULONGLONG ullMessageNumber,LPCWSTR pszSessionId,const WSDXML_ELEMENT *pAny) {
  926. return This->lpVtbl->UnPublish(This,pszId,ullInstanceId,ullMessageNumber,pszSessionId,pAny);
  927. }
  928. static FORCEINLINE HRESULT IWSDiscoveryPublisher_MatchProbe(IWSDiscoveryPublisher* This,const WSD_SOAP_MESSAGE *pProbeMessage,IWSDMessageParameters *pMessageParameters,LPCWSTR pszId,ULONGLONG ullMetadataVersion,ULONGLONG ullInstanceId,ULONGLONG ullMessageNumber,LPCWSTR pszSessionId,const WSD_NAME_LIST *pTypesList,const WSD_URI_LIST *pScopesList,const WSD_URI_LIST *pXAddrsList) {
  929. return This->lpVtbl->MatchProbe(This,pProbeMessage,pMessageParameters,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList);
  930. }
  931. static FORCEINLINE HRESULT IWSDiscoveryPublisher_MatchResolve(IWSDiscoveryPublisher* This,const WSD_SOAP_MESSAGE *pResolveMessage,IWSDMessageParameters *pMessageParameters,LPCWSTR pszId,ULONGLONG ullMetadataVersion,ULONGLONG ullInstanceId,ULONGLONG ullMessageNumber,LPCWSTR pszSessionId,const WSD_NAME_LIST *pTypesList,const WSD_URI_LIST *pScopesList,const WSD_URI_LIST *pXAddrsList) {
  932. return This->lpVtbl->MatchResolve(This,pResolveMessage,pMessageParameters,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList);
  933. }
  934. static FORCEINLINE HRESULT IWSDiscoveryPublisher_PublishEx(IWSDiscoveryPublisher* This,LPCWSTR pszId,ULONGLONG ullMetadataVersion,ULONGLONG ullInstanceId,ULONGLONG ullMessageNumber,LPCWSTR pszSessionId,const WSD_NAME_LIST *pTypesList,const WSD_URI_LIST *pScopesList,const WSD_URI_LIST *pXAddrsList,const WSDXML_ELEMENT *pHeaderAny,const WSDXML_ELEMENT *pReferenceParameterAny,const WSDXML_ELEMENT *pPolicyAny,const WSDXML_ELEMENT *pEndpointReferenceAny,const WSDXML_ELEMENT *pAny) {
  935. return This->lpVtbl->PublishEx(This,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList,pHeaderAny,pReferenceParameterAny,pPolicyAny,pEndpointReferenceAny,pAny);
  936. }
  937. static FORCEINLINE HRESULT IWSDiscoveryPublisher_MatchProbeEx(IWSDiscoveryPublisher* This,const WSD_SOAP_MESSAGE *pProbeMessage,IWSDMessageParameters *pMessageParameters,LPCWSTR pszId,ULONGLONG ullMetadataVersion,ULONGLONG ullInstanceId,ULONGLONG ullMessageNumber,LPCWSTR pszSessionId,const WSD_NAME_LIST *pTypesList,const WSD_URI_LIST *pScopesList,const WSD_URI_LIST *pXAddrsList,const WSDXML_ELEMENT *pHeaderAny,const WSDXML_ELEMENT *pReferenceParameterAny,const WSDXML_ELEMENT *pPolicyAny,const WSDXML_ELEMENT *pEndpointReferenceAny,const WSDXML_ELEMENT *pAny) {
  938. return This->lpVtbl->MatchProbeEx(This,pProbeMessage,pMessageParameters,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList,pHeaderAny,pReferenceParameterAny,pPolicyAny,pEndpointReferenceAny,pAny);
  939. }
  940. static FORCEINLINE HRESULT IWSDiscoveryPublisher_MatchResolveEx(IWSDiscoveryPublisher* This,const WSD_SOAP_MESSAGE *pResolveMessage,IWSDMessageParameters *pMessageParameters,LPCWSTR pszId,ULONGLONG ullMetadataVersion,ULONGLONG ullInstanceId,ULONGLONG ullMessageNumber,LPCWSTR pszSessionId,const WSD_NAME_LIST *pTypesList,const WSD_URI_LIST *pScopesList,const WSD_URI_LIST *pXAddrsList,const WSDXML_ELEMENT *pHeaderAny,const WSDXML_ELEMENT *pReferenceParameterAny,const WSDXML_ELEMENT *pPolicyAny,const WSDXML_ELEMENT *pEndpointReferenceAny,const WSDXML_ELEMENT *pAny) {
  941. return This->lpVtbl->MatchResolveEx(This,pResolveMessage,pMessageParameters,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList,pHeaderAny,pReferenceParameterAny,pPolicyAny,pEndpointReferenceAny,pAny);
  942. }
  943. static FORCEINLINE HRESULT IWSDiscoveryPublisher_RegisterScopeMatchingRule(IWSDiscoveryPublisher* This,IWSDScopeMatchingRule *pScopeMatchingRule) {
  944. return This->lpVtbl->RegisterScopeMatchingRule(This,pScopeMatchingRule);
  945. }
  946. static FORCEINLINE HRESULT IWSDiscoveryPublisher_UnRegisterScopeMatchingRule(IWSDiscoveryPublisher* This,IWSDScopeMatchingRule *pScopeMatchingRule) {
  947. return This->lpVtbl->UnRegisterScopeMatchingRule(This,pScopeMatchingRule);
  948. }
  949. static FORCEINLINE HRESULT IWSDiscoveryPublisher_GetXMLContext(IWSDiscoveryPublisher* This,IWSDXMLContext **ppContext) {
  950. return This->lpVtbl->GetXMLContext(This,ppContext);
  951. }
  952. #endif
  953. #endif
  954. #endif
  955. #endif /* __IWSDiscoveryPublisher_INTERFACE_DEFINED__ */
  956. HRESULT WINAPI WSDCreateDiscoveryProvider(IWSDXMLContext *pContext, IWSDiscoveryProvider **ppProvider);
  957. HRESULT WINAPI WSDCreateDiscoveryPublisher(IWSDXMLContext* pContext, IWSDiscoveryPublisher **ppPublisher);
  958. #if WINVER >= 0x601
  959. HRESULT WINAPI WSDCreateDiscoveryProvider2(IWSDXMLContext *pContext, WSD_CONFIG_PARAM *pConfigParams, DWORD dwConfigParamCount, IWSDiscoveryProvider **ppProvider);
  960. HRESULT WINAPI WSDCreateDiscoveryPublisher2(IWSDXMLContext *pContext, WSD_CONFIG_PARAM *pConfigParams, DWORD dwConfigParamCount, IWSDiscoveryPublisher **ppPublisher);
  961. #endif
  962. #endif
  963. /* Begin additional prototypes for all interfaces */
  964. /* End additional prototypes */
  965. #ifdef __cplusplus
  966. }
  967. #endif
  968. #endif /* __wsddisco_h__ */