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.

900 lines
30 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 httprequest.idl:
  4. Oicf, W1, Zp8, env=Win32 (32b run)
  5. protocol : dce , ms_ext, c_ext
  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__ 440
  16. #endif
  17. #include "rpc.h"
  18. #include "rpcndr.h"
  19. #ifndef __httprequest_h__
  20. #define __httprequest_h__
  21. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  22. #pragma once
  23. #endif
  24. /* Forward Declarations */
  25. #ifndef __IWinHttpRequest_FWD_DEFINED__
  26. #define __IWinHttpRequest_FWD_DEFINED__
  27. typedef interface IWinHttpRequest IWinHttpRequest;
  28. #endif /* __IWinHttpRequest_FWD_DEFINED__ */
  29. #ifndef __IWinHttpRequestEvents_FWD_DEFINED__
  30. #define __IWinHttpRequestEvents_FWD_DEFINED__
  31. typedef interface IWinHttpRequestEvents IWinHttpRequestEvents;
  32. #endif /* __IWinHttpRequestEvents_FWD_DEFINED__ */
  33. #ifndef __WinHttpRequest_FWD_DEFINED__
  34. #define __WinHttpRequest_FWD_DEFINED__
  35. #ifdef __cplusplus
  36. typedef class WinHttpRequest WinHttpRequest;
  37. #else
  38. typedef struct WinHttpRequest WinHttpRequest;
  39. #endif /* __cplusplus */
  40. #endif /* __WinHttpRequest_FWD_DEFINED__ */
  41. #ifdef __cplusplus
  42. extern "C"{
  43. #endif
  44. void * __RPC_USER MIDL_user_allocate(size_t);
  45. void __RPC_USER MIDL_user_free( void * );
  46. /* interface __MIDL_itf_httprequest_0000 */
  47. /* [local] */
  48. //+-------------------------------------------------------------------------
  49. //
  50. // Microsoft Windows HTTP Services (WinHTTP) version 5.1
  51. // Copyright (C) Microsoft Corporation. All rights reserved.
  52. //
  53. //--------------------------------------------------------------------------
  54. extern RPC_IF_HANDLE __MIDL_itf_httprequest_0000_v0_0_c_ifspec;
  55. extern RPC_IF_HANDLE __MIDL_itf_httprequest_0000_v0_0_s_ifspec;
  56. #ifndef __WinHttp_LIBRARY_DEFINED__
  57. #define __WinHttp_LIBRARY_DEFINED__
  58. /* library WinHttp */
  59. /* [version][lcid][helpstring][uuid] */
  60. typedef /* [public] */ long HTTPREQUEST_PROXY_SETTING;
  61. #define HTTPREQUEST_PROXYSETTING_DEFAULT ( 0 )
  62. #define HTTPREQUEST_PROXYSETTING_PRECONFIG ( 0 )
  63. #define HTTPREQUEST_PROXYSETTING_DIRECT ( 0x1 )
  64. #define HTTPREQUEST_PROXYSETTING_PROXY ( 0x2 )
  65. typedef /* [public] */ long HTTPREQUEST_SETCREDENTIALS_FLAGS;
  66. #define HTTPREQUEST_SETCREDENTIALS_FOR_SERVER ( 0 )
  67. #define HTTPREQUEST_SETCREDENTIALS_FOR_PROXY ( 0x1 )
  68. typedef /* [helpstring][uuid] */ DECLSPEC_UUID("12782009-FE90-4877-9730-E5E183669B19")
  69. enum WinHttpRequestOption
  70. { WinHttpRequestOption_UserAgentString = 0,
  71. WinHttpRequestOption_URL = WinHttpRequestOption_UserAgentString + 1,
  72. WinHttpRequestOption_URLCodePage = WinHttpRequestOption_URL + 1,
  73. WinHttpRequestOption_EscapePercentInURL = WinHttpRequestOption_URLCodePage + 1,
  74. WinHttpRequestOption_SslErrorIgnoreFlags = WinHttpRequestOption_EscapePercentInURL + 1,
  75. WinHttpRequestOption_SelectCertificate = WinHttpRequestOption_SslErrorIgnoreFlags + 1,
  76. WinHttpRequestOption_EnableRedirects = WinHttpRequestOption_SelectCertificate + 1,
  77. WinHttpRequestOption_UrlEscapeDisable = WinHttpRequestOption_EnableRedirects + 1,
  78. WinHttpRequestOption_UrlEscapeDisableQuery = WinHttpRequestOption_UrlEscapeDisable + 1,
  79. WinHttpRequestOption_SecureProtocols = WinHttpRequestOption_UrlEscapeDisableQuery + 1,
  80. WinHttpRequestOption_EnableTracing = WinHttpRequestOption_SecureProtocols + 1,
  81. WinHttpRequestOption_RevertImpersonationOverSsl = WinHttpRequestOption_EnableTracing + 1,
  82. WinHttpRequestOption_EnableHttpsToHttpRedirects = WinHttpRequestOption_RevertImpersonationOverSsl + 1,
  83. WinHttpRequestOption_EnablePassportAuthentication = WinHttpRequestOption_EnableHttpsToHttpRedirects + 1,
  84. WinHttpRequestOption_MaxAutomaticRedirects = WinHttpRequestOption_EnablePassportAuthentication + 1,
  85. WinHttpRequestOption_MaxResponseHeaderSize = WinHttpRequestOption_MaxAutomaticRedirects + 1,
  86. WinHttpRequestOption_MaxResponseDrainSize = WinHttpRequestOption_MaxResponseHeaderSize + 1,
  87. WinHttpRequestOption_EnableHttp1_1 = WinHttpRequestOption_MaxResponseDrainSize + 1,
  88. WinHttpRequestOption_EnableCertificateRevocationCheck = WinHttpRequestOption_EnableHttp1_1 + 1
  89. } WinHttpRequestOption;
  90. typedef /* [uuid] */ DECLSPEC_UUID("9d8a6df8-13de-4b1f-a330-67c719d62514")
  91. enum WinHttpRequestAutoLogonPolicy
  92. { AutoLogonPolicy_Always = 0,
  93. AutoLogonPolicy_OnlyIfBypassProxy = AutoLogonPolicy_Always + 1,
  94. AutoLogonPolicy_Never = AutoLogonPolicy_OnlyIfBypassProxy + 1
  95. } WinHttpRequestAutoLogonPolicy;
  96. typedef /* [uuid] */ DECLSPEC_UUID("152a1ca2-55a9-43a3-b187-0605bb886349")
  97. enum WinHttpRequestSslErrorFlags
  98. { SslErrorFlag_UnknownCA = 0x100,
  99. SslErrorFlag_CertWrongUsage = 0x200,
  100. SslErrorFlag_CertCNInvalid = 0x1000,
  101. SslErrorFlag_CertDateInvalid = 0x2000,
  102. SslErrorFlag_Ignore_All = 0x3300
  103. } WinHttpRequestSslErrorFlags;
  104. typedef /* [uuid] */ DECLSPEC_UUID("6b2c51c1-a8ea-46bd-b928-c9b76f9f14dd")
  105. enum WinHttpRequestSecureProtocols
  106. { SecureProtocol_SSL2 = 0x8,
  107. SecureProtocol_SSL3 = 0x20,
  108. SecureProtocol_TLS1 = 0x80,
  109. SecureProtocol_ALL = 0xa8
  110. } WinHttpRequestSecureProtocols;
  111. EXTERN_C const IID LIBID_WinHttp;
  112. #ifndef __IWinHttpRequest_INTERFACE_DEFINED__
  113. #define __IWinHttpRequest_INTERFACE_DEFINED__
  114. /* interface IWinHttpRequest */
  115. /* [unique][helpstring][nonextensible][oleautomation][dual][uuid][object] */
  116. EXTERN_C const IID IID_IWinHttpRequest;
  117. #if defined(__cplusplus) && !defined(CINTERFACE)
  118. MIDL_INTERFACE("016fe2ec-b2c8-45f8-b23b-39e53a75396b")
  119. IWinHttpRequest : public IDispatch
  120. {
  121. public:
  122. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetProxy(
  123. /* [in] */ HTTPREQUEST_PROXY_SETTING ProxySetting,
  124. /* [optional][in] */ VARIANT ProxyServer,
  125. /* [optional][in] */ VARIANT BypassList) = 0;
  126. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCredentials(
  127. /* [in] */ BSTR UserName,
  128. /* [in] */ BSTR Password,
  129. /* [in] */ HTTPREQUEST_SETCREDENTIALS_FLAGS Flags) = 0;
  130. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Open(
  131. /* [in] */ BSTR Method,
  132. /* [in] */ BSTR Url,
  133. /* [optional][in] */ VARIANT Async) = 0;
  134. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetRequestHeader(
  135. /* [in] */ BSTR Header,
  136. /* [in] */ BSTR Value) = 0;
  137. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetResponseHeader(
  138. /* [in] */ BSTR Header,
  139. /* [retval][out] */ BSTR *Value) = 0;
  140. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetAllResponseHeaders(
  141. /* [retval][out] */ BSTR *Headers) = 0;
  142. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Send(
  143. /* [optional][in] */ VARIANT Body) = 0;
  144. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Status(
  145. /* [retval][out] */ long *Status) = 0;
  146. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StatusText(
  147. /* [retval][out] */ BSTR *Status) = 0;
  148. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ResponseText(
  149. /* [retval][out] */ BSTR *Body) = 0;
  150. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ResponseBody(
  151. /* [retval][out] */ VARIANT *Body) = 0;
  152. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ResponseStream(
  153. /* [retval][out] */ VARIANT *Body) = 0;
  154. virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_Option(
  155. /* [in] */ WinHttpRequestOption Option,
  156. /* [retval][out] */ VARIANT *Value) = 0;
  157. virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_Option(
  158. /* [in] */ WinHttpRequestOption Option,
  159. /* [in] */ VARIANT Value) = 0;
  160. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE WaitForResponse(
  161. /* [optional][in] */ VARIANT Timeout,
  162. /* [retval][out] */ VARIANT_BOOL *Succeeded) = 0;
  163. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Abort( void) = 0;
  164. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetTimeouts(
  165. /* [in] */ long ResolveTimeout,
  166. /* [in] */ long ConnectTimeout,
  167. /* [in] */ long SendTimeout,
  168. /* [in] */ long ReceiveTimeout) = 0;
  169. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetClientCertificate(
  170. /* [in] */ BSTR ClientCertificate) = 0;
  171. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetAutoLogonPolicy(
  172. /* [in] */ WinHttpRequestAutoLogonPolicy AutoLogonPolicy) = 0;
  173. };
  174. #else /* C style interface */
  175. typedef struct IWinHttpRequestVtbl
  176. {
  177. BEGIN_INTERFACE
  178. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  179. IWinHttpRequest * This,
  180. /* [in] */ REFIID riid,
  181. /* [iid_is][out] */ void **ppvObject);
  182. ULONG ( STDMETHODCALLTYPE *AddRef )(
  183. IWinHttpRequest * This);
  184. ULONG ( STDMETHODCALLTYPE *Release )(
  185. IWinHttpRequest * This);
  186. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  187. IWinHttpRequest * This,
  188. /* [out] */ UINT *pctinfo);
  189. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  190. IWinHttpRequest * This,
  191. /* [in] */ UINT iTInfo,
  192. /* [in] */ LCID lcid,
  193. /* [out] */ ITypeInfo **ppTInfo);
  194. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  195. IWinHttpRequest * This,
  196. /* [in] */ REFIID riid,
  197. /* [size_is][in] */ LPOLESTR *rgszNames,
  198. /* [in] */ UINT cNames,
  199. /* [in] */ LCID lcid,
  200. /* [size_is][out] */ DISPID *rgDispId);
  201. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  202. IWinHttpRequest * This,
  203. /* [in] */ DISPID dispIdMember,
  204. /* [in] */ REFIID riid,
  205. /* [in] */ LCID lcid,
  206. /* [in] */ WORD wFlags,
  207. /* [out][in] */ DISPPARAMS *pDispParams,
  208. /* [out] */ VARIANT *pVarResult,
  209. /* [out] */ EXCEPINFO *pExcepInfo,
  210. /* [out] */ UINT *puArgErr);
  211. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetProxy )(
  212. IWinHttpRequest * This,
  213. /* [in] */ HTTPREQUEST_PROXY_SETTING ProxySetting,
  214. /* [optional][in] */ VARIANT ProxyServer,
  215. /* [optional][in] */ VARIANT BypassList);
  216. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetCredentials )(
  217. IWinHttpRequest * This,
  218. /* [in] */ BSTR UserName,
  219. /* [in] */ BSTR Password,
  220. /* [in] */ HTTPREQUEST_SETCREDENTIALS_FLAGS Flags);
  221. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Open )(
  222. IWinHttpRequest * This,
  223. /* [in] */ BSTR Method,
  224. /* [in] */ BSTR Url,
  225. /* [optional][in] */ VARIANT Async);
  226. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetRequestHeader )(
  227. IWinHttpRequest * This,
  228. /* [in] */ BSTR Header,
  229. /* [in] */ BSTR Value);
  230. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetResponseHeader )(
  231. IWinHttpRequest * This,
  232. /* [in] */ BSTR Header,
  233. /* [retval][out] */ BSTR *Value);
  234. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetAllResponseHeaders )(
  235. IWinHttpRequest * This,
  236. /* [retval][out] */ BSTR *Headers);
  237. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Send )(
  238. IWinHttpRequest * This,
  239. /* [optional][in] */ VARIANT Body);
  240. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Status )(
  241. IWinHttpRequest * This,
  242. /* [retval][out] */ long *Status);
  243. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StatusText )(
  244. IWinHttpRequest * This,
  245. /* [retval][out] */ BSTR *Status);
  246. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ResponseText )(
  247. IWinHttpRequest * This,
  248. /* [retval][out] */ BSTR *Body);
  249. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ResponseBody )(
  250. IWinHttpRequest * This,
  251. /* [retval][out] */ VARIANT *Body);
  252. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ResponseStream )(
  253. IWinHttpRequest * This,
  254. /* [retval][out] */ VARIANT *Body);
  255. /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Option )(
  256. IWinHttpRequest * This,
  257. /* [in] */ WinHttpRequestOption Option,
  258. /* [retval][out] */ VARIANT *Value);
  259. /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Option )(
  260. IWinHttpRequest * This,
  261. /* [in] */ WinHttpRequestOption Option,
  262. /* [in] */ VARIANT Value);
  263. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *WaitForResponse )(
  264. IWinHttpRequest * This,
  265. /* [optional][in] */ VARIANT Timeout,
  266. /* [retval][out] */ VARIANT_BOOL *Succeeded);
  267. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Abort )(
  268. IWinHttpRequest * This);
  269. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetTimeouts )(
  270. IWinHttpRequest * This,
  271. /* [in] */ long ResolveTimeout,
  272. /* [in] */ long ConnectTimeout,
  273. /* [in] */ long SendTimeout,
  274. /* [in] */ long ReceiveTimeout);
  275. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetClientCertificate )(
  276. IWinHttpRequest * This,
  277. /* [in] */ BSTR ClientCertificate);
  278. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetAutoLogonPolicy )(
  279. IWinHttpRequest * This,
  280. /* [in] */ WinHttpRequestAutoLogonPolicy AutoLogonPolicy);
  281. END_INTERFACE
  282. } IWinHttpRequestVtbl;
  283. interface IWinHttpRequest
  284. {
  285. CONST_VTBL struct IWinHttpRequestVtbl *lpVtbl;
  286. };
  287. #ifdef COBJMACROS
  288. #define IWinHttpRequest_QueryInterface(This,riid,ppvObject) \
  289. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  290. #define IWinHttpRequest_AddRef(This) \
  291. (This)->lpVtbl -> AddRef(This)
  292. #define IWinHttpRequest_Release(This) \
  293. (This)->lpVtbl -> Release(This)
  294. #define IWinHttpRequest_GetTypeInfoCount(This,pctinfo) \
  295. (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  296. #define IWinHttpRequest_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  297. (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  298. #define IWinHttpRequest_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  299. (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  300. #define IWinHttpRequest_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  301. (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  302. #define IWinHttpRequest_SetProxy(This,ProxySetting,ProxyServer,BypassList) \
  303. (This)->lpVtbl -> SetProxy(This,ProxySetting,ProxyServer,BypassList)
  304. #define IWinHttpRequest_SetCredentials(This,UserName,Password,Flags) \
  305. (This)->lpVtbl -> SetCredentials(This,UserName,Password,Flags)
  306. #define IWinHttpRequest_Open(This,Method,Url,Async) \
  307. (This)->lpVtbl -> Open(This,Method,Url,Async)
  308. #define IWinHttpRequest_SetRequestHeader(This,Header,Value) \
  309. (This)->lpVtbl -> SetRequestHeader(This,Header,Value)
  310. #define IWinHttpRequest_GetResponseHeader(This,Header,Value) \
  311. (This)->lpVtbl -> GetResponseHeader(This,Header,Value)
  312. #define IWinHttpRequest_GetAllResponseHeaders(This,Headers) \
  313. (This)->lpVtbl -> GetAllResponseHeaders(This,Headers)
  314. #define IWinHttpRequest_Send(This,Body) \
  315. (This)->lpVtbl -> Send(This,Body)
  316. #define IWinHttpRequest_get_Status(This,Status) \
  317. (This)->lpVtbl -> get_Status(This,Status)
  318. #define IWinHttpRequest_get_StatusText(This,Status) \
  319. (This)->lpVtbl -> get_StatusText(This,Status)
  320. #define IWinHttpRequest_get_ResponseText(This,Body) \
  321. (This)->lpVtbl -> get_ResponseText(This,Body)
  322. #define IWinHttpRequest_get_ResponseBody(This,Body) \
  323. (This)->lpVtbl -> get_ResponseBody(This,Body)
  324. #define IWinHttpRequest_get_ResponseStream(This,Body) \
  325. (This)->lpVtbl -> get_ResponseStream(This,Body)
  326. #define IWinHttpRequest_get_Option(This,Option,Value) \
  327. (This)->lpVtbl -> get_Option(This,Option,Value)
  328. #define IWinHttpRequest_put_Option(This,Option,Value) \
  329. (This)->lpVtbl -> put_Option(This,Option,Value)
  330. #define IWinHttpRequest_WaitForResponse(This,Timeout,Succeeded) \
  331. (This)->lpVtbl -> WaitForResponse(This,Timeout,Succeeded)
  332. #define IWinHttpRequest_Abort(This) \
  333. (This)->lpVtbl -> Abort(This)
  334. #define IWinHttpRequest_SetTimeouts(This,ResolveTimeout,ConnectTimeout,SendTimeout,ReceiveTimeout) \
  335. (This)->lpVtbl -> SetTimeouts(This,ResolveTimeout,ConnectTimeout,SendTimeout,ReceiveTimeout)
  336. #define IWinHttpRequest_SetClientCertificate(This,ClientCertificate) \
  337. (This)->lpVtbl -> SetClientCertificate(This,ClientCertificate)
  338. #define IWinHttpRequest_SetAutoLogonPolicy(This,AutoLogonPolicy) \
  339. (This)->lpVtbl -> SetAutoLogonPolicy(This,AutoLogonPolicy)
  340. #endif /* COBJMACROS */
  341. #endif /* C style interface */
  342. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IWinHttpRequest_SetProxy_Proxy(
  343. IWinHttpRequest * This,
  344. /* [in] */ HTTPREQUEST_PROXY_SETTING ProxySetting,
  345. /* [optional][in] */ VARIANT ProxyServer,
  346. /* [optional][in] */ VARIANT BypassList);
  347. void __RPC_STUB IWinHttpRequest_SetProxy_Stub(
  348. IRpcStubBuffer *This,
  349. IRpcChannelBuffer *_pRpcChannelBuffer,
  350. PRPC_MESSAGE _pRpcMessage,
  351. DWORD *_pdwStubPhase);
  352. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IWinHttpRequest_SetCredentials_Proxy(
  353. IWinHttpRequest * This,
  354. /* [in] */ BSTR UserName,
  355. /* [in] */ BSTR Password,
  356. /* [in] */ HTTPREQUEST_SETCREDENTIALS_FLAGS Flags);
  357. void __RPC_STUB IWinHttpRequest_SetCredentials_Stub(
  358. IRpcStubBuffer *This,
  359. IRpcChannelBuffer *_pRpcChannelBuffer,
  360. PRPC_MESSAGE _pRpcMessage,
  361. DWORD *_pdwStubPhase);
  362. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IWinHttpRequest_Open_Proxy(
  363. IWinHttpRequest * This,
  364. /* [in] */ BSTR Method,
  365. /* [in] */ BSTR Url,
  366. /* [optional][in] */ VARIANT Async);
  367. void __RPC_STUB IWinHttpRequest_Open_Stub(
  368. IRpcStubBuffer *This,
  369. IRpcChannelBuffer *_pRpcChannelBuffer,
  370. PRPC_MESSAGE _pRpcMessage,
  371. DWORD *_pdwStubPhase);
  372. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IWinHttpRequest_SetRequestHeader_Proxy(
  373. IWinHttpRequest * This,
  374. /* [in] */ BSTR Header,
  375. /* [in] */ BSTR Value);
  376. void __RPC_STUB IWinHttpRequest_SetRequestHeader_Stub(
  377. IRpcStubBuffer *This,
  378. IRpcChannelBuffer *_pRpcChannelBuffer,
  379. PRPC_MESSAGE _pRpcMessage,
  380. DWORD *_pdwStubPhase);
  381. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IWinHttpRequest_GetResponseHeader_Proxy(
  382. IWinHttpRequest * This,
  383. /* [in] */ BSTR Header,
  384. /* [retval][out] */ BSTR *Value);
  385. void __RPC_STUB IWinHttpRequest_GetResponseHeader_Stub(
  386. IRpcStubBuffer *This,
  387. IRpcChannelBuffer *_pRpcChannelBuffer,
  388. PRPC_MESSAGE _pRpcMessage,
  389. DWORD *_pdwStubPhase);
  390. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IWinHttpRequest_GetAllResponseHeaders_Proxy(
  391. IWinHttpRequest * This,
  392. /* [retval][out] */ BSTR *Headers);
  393. void __RPC_STUB IWinHttpRequest_GetAllResponseHeaders_Stub(
  394. IRpcStubBuffer *This,
  395. IRpcChannelBuffer *_pRpcChannelBuffer,
  396. PRPC_MESSAGE _pRpcMessage,
  397. DWORD *_pdwStubPhase);
  398. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IWinHttpRequest_Send_Proxy(
  399. IWinHttpRequest * This,
  400. /* [optional][in] */ VARIANT Body);
  401. void __RPC_STUB IWinHttpRequest_Send_Stub(
  402. IRpcStubBuffer *This,
  403. IRpcChannelBuffer *_pRpcChannelBuffer,
  404. PRPC_MESSAGE _pRpcMessage,
  405. DWORD *_pdwStubPhase);
  406. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IWinHttpRequest_get_Status_Proxy(
  407. IWinHttpRequest * This,
  408. /* [retval][out] */ long *Status);
  409. void __RPC_STUB IWinHttpRequest_get_Status_Stub(
  410. IRpcStubBuffer *This,
  411. IRpcChannelBuffer *_pRpcChannelBuffer,
  412. PRPC_MESSAGE _pRpcMessage,
  413. DWORD *_pdwStubPhase);
  414. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IWinHttpRequest_get_StatusText_Proxy(
  415. IWinHttpRequest * This,
  416. /* [retval][out] */ BSTR *Status);
  417. void __RPC_STUB IWinHttpRequest_get_StatusText_Stub(
  418. IRpcStubBuffer *This,
  419. IRpcChannelBuffer *_pRpcChannelBuffer,
  420. PRPC_MESSAGE _pRpcMessage,
  421. DWORD *_pdwStubPhase);
  422. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IWinHttpRequest_get_ResponseText_Proxy(
  423. IWinHttpRequest * This,
  424. /* [retval][out] */ BSTR *Body);
  425. void __RPC_STUB IWinHttpRequest_get_ResponseText_Stub(
  426. IRpcStubBuffer *This,
  427. IRpcChannelBuffer *_pRpcChannelBuffer,
  428. PRPC_MESSAGE _pRpcMessage,
  429. DWORD *_pdwStubPhase);
  430. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IWinHttpRequest_get_ResponseBody_Proxy(
  431. IWinHttpRequest * This,
  432. /* [retval][out] */ VARIANT *Body);
  433. void __RPC_STUB IWinHttpRequest_get_ResponseBody_Stub(
  434. IRpcStubBuffer *This,
  435. IRpcChannelBuffer *_pRpcChannelBuffer,
  436. PRPC_MESSAGE _pRpcMessage,
  437. DWORD *_pdwStubPhase);
  438. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IWinHttpRequest_get_ResponseStream_Proxy(
  439. IWinHttpRequest * This,
  440. /* [retval][out] */ VARIANT *Body);
  441. void __RPC_STUB IWinHttpRequest_get_ResponseStream_Stub(
  442. IRpcStubBuffer *This,
  443. IRpcChannelBuffer *_pRpcChannelBuffer,
  444. PRPC_MESSAGE _pRpcMessage,
  445. DWORD *_pdwStubPhase);
  446. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IWinHttpRequest_get_Option_Proxy(
  447. IWinHttpRequest * This,
  448. /* [in] */ WinHttpRequestOption Option,
  449. /* [retval][out] */ VARIANT *Value);
  450. void __RPC_STUB IWinHttpRequest_get_Option_Stub(
  451. IRpcStubBuffer *This,
  452. IRpcChannelBuffer *_pRpcChannelBuffer,
  453. PRPC_MESSAGE _pRpcMessage,
  454. DWORD *_pdwStubPhase);
  455. /* [id][propput] */ HRESULT STDMETHODCALLTYPE IWinHttpRequest_put_Option_Proxy(
  456. IWinHttpRequest * This,
  457. /* [in] */ WinHttpRequestOption Option,
  458. /* [in] */ VARIANT Value);
  459. void __RPC_STUB IWinHttpRequest_put_Option_Stub(
  460. IRpcStubBuffer *This,
  461. IRpcChannelBuffer *_pRpcChannelBuffer,
  462. PRPC_MESSAGE _pRpcMessage,
  463. DWORD *_pdwStubPhase);
  464. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IWinHttpRequest_WaitForResponse_Proxy(
  465. IWinHttpRequest * This,
  466. /* [optional][in] */ VARIANT Timeout,
  467. /* [retval][out] */ VARIANT_BOOL *Succeeded);
  468. void __RPC_STUB IWinHttpRequest_WaitForResponse_Stub(
  469. IRpcStubBuffer *This,
  470. IRpcChannelBuffer *_pRpcChannelBuffer,
  471. PRPC_MESSAGE _pRpcMessage,
  472. DWORD *_pdwStubPhase);
  473. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IWinHttpRequest_Abort_Proxy(
  474. IWinHttpRequest * This);
  475. void __RPC_STUB IWinHttpRequest_Abort_Stub(
  476. IRpcStubBuffer *This,
  477. IRpcChannelBuffer *_pRpcChannelBuffer,
  478. PRPC_MESSAGE _pRpcMessage,
  479. DWORD *_pdwStubPhase);
  480. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IWinHttpRequest_SetTimeouts_Proxy(
  481. IWinHttpRequest * This,
  482. /* [in] */ long ResolveTimeout,
  483. /* [in] */ long ConnectTimeout,
  484. /* [in] */ long SendTimeout,
  485. /* [in] */ long ReceiveTimeout);
  486. void __RPC_STUB IWinHttpRequest_SetTimeouts_Stub(
  487. IRpcStubBuffer *This,
  488. IRpcChannelBuffer *_pRpcChannelBuffer,
  489. PRPC_MESSAGE _pRpcMessage,
  490. DWORD *_pdwStubPhase);
  491. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IWinHttpRequest_SetClientCertificate_Proxy(
  492. IWinHttpRequest * This,
  493. /* [in] */ BSTR ClientCertificate);
  494. void __RPC_STUB IWinHttpRequest_SetClientCertificate_Stub(
  495. IRpcStubBuffer *This,
  496. IRpcChannelBuffer *_pRpcChannelBuffer,
  497. PRPC_MESSAGE _pRpcMessage,
  498. DWORD *_pdwStubPhase);
  499. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IWinHttpRequest_SetAutoLogonPolicy_Proxy(
  500. IWinHttpRequest * This,
  501. /* [in] */ WinHttpRequestAutoLogonPolicy AutoLogonPolicy);
  502. void __RPC_STUB IWinHttpRequest_SetAutoLogonPolicy_Stub(
  503. IRpcStubBuffer *This,
  504. IRpcChannelBuffer *_pRpcChannelBuffer,
  505. PRPC_MESSAGE _pRpcMessage,
  506. DWORD *_pdwStubPhase);
  507. #endif /* __IWinHttpRequest_INTERFACE_DEFINED__ */
  508. #ifndef __IWinHttpRequestEvents_INTERFACE_DEFINED__
  509. #define __IWinHttpRequestEvents_INTERFACE_DEFINED__
  510. /* interface IWinHttpRequestEvents */
  511. /* [unique][helpstring][nonextensible][oleautomation][uuid][object] */
  512. EXTERN_C const IID IID_IWinHttpRequestEvents;
  513. #if defined(__cplusplus) && !defined(CINTERFACE)
  514. MIDL_INTERFACE("f97f4e15-b787-4212-80d1-d380cbbf982e")
  515. IWinHttpRequestEvents : public IUnknown
  516. {
  517. public:
  518. virtual void STDMETHODCALLTYPE OnResponseStart(
  519. /* [in] */ long Status,
  520. /* [in] */ BSTR ContentType) = 0;
  521. virtual void STDMETHODCALLTYPE OnResponseDataAvailable(
  522. /* [in] */ SAFEARRAY * *Data) = 0;
  523. virtual void STDMETHODCALLTYPE OnResponseFinished( void) = 0;
  524. virtual void STDMETHODCALLTYPE OnError(
  525. /* [in] */ long ErrorNumber,
  526. /* [in] */ BSTR ErrorDescription) = 0;
  527. };
  528. #else /* C style interface */
  529. typedef struct IWinHttpRequestEventsVtbl
  530. {
  531. BEGIN_INTERFACE
  532. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  533. IWinHttpRequestEvents * This,
  534. /* [in] */ REFIID riid,
  535. /* [iid_is][out] */ void **ppvObject);
  536. ULONG ( STDMETHODCALLTYPE *AddRef )(
  537. IWinHttpRequestEvents * This);
  538. ULONG ( STDMETHODCALLTYPE *Release )(
  539. IWinHttpRequestEvents * This);
  540. void ( STDMETHODCALLTYPE *OnResponseStart )(
  541. IWinHttpRequestEvents * This,
  542. /* [in] */ long Status,
  543. /* [in] */ BSTR ContentType);
  544. void ( STDMETHODCALLTYPE *OnResponseDataAvailable )(
  545. IWinHttpRequestEvents * This,
  546. /* [in] */ SAFEARRAY * *Data);
  547. void ( STDMETHODCALLTYPE *OnResponseFinished )(
  548. IWinHttpRequestEvents * This);
  549. void ( STDMETHODCALLTYPE *OnError )(
  550. IWinHttpRequestEvents * This,
  551. /* [in] */ long ErrorNumber,
  552. /* [in] */ BSTR ErrorDescription);
  553. END_INTERFACE
  554. } IWinHttpRequestEventsVtbl;
  555. interface IWinHttpRequestEvents
  556. {
  557. CONST_VTBL struct IWinHttpRequestEventsVtbl *lpVtbl;
  558. };
  559. #ifdef COBJMACROS
  560. #define IWinHttpRequestEvents_QueryInterface(This,riid,ppvObject) \
  561. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  562. #define IWinHttpRequestEvents_AddRef(This) \
  563. (This)->lpVtbl -> AddRef(This)
  564. #define IWinHttpRequestEvents_Release(This) \
  565. (This)->lpVtbl -> Release(This)
  566. #define IWinHttpRequestEvents_OnResponseStart(This,Status,ContentType) \
  567. (This)->lpVtbl -> OnResponseStart(This,Status,ContentType)
  568. #define IWinHttpRequestEvents_OnResponseDataAvailable(This,Data) \
  569. (This)->lpVtbl -> OnResponseDataAvailable(This,Data)
  570. #define IWinHttpRequestEvents_OnResponseFinished(This) \
  571. (This)->lpVtbl -> OnResponseFinished(This)
  572. #define IWinHttpRequestEvents_OnError(This,ErrorNumber,ErrorDescription) \
  573. (This)->lpVtbl -> OnError(This,ErrorNumber,ErrorDescription)
  574. #endif /* COBJMACROS */
  575. #endif /* C style interface */
  576. void STDMETHODCALLTYPE IWinHttpRequestEvents_OnResponseStart_Proxy(
  577. IWinHttpRequestEvents * This,
  578. /* [in] */ long Status,
  579. /* [in] */ BSTR ContentType);
  580. void __RPC_STUB IWinHttpRequestEvents_OnResponseStart_Stub(
  581. IRpcStubBuffer *This,
  582. IRpcChannelBuffer *_pRpcChannelBuffer,
  583. PRPC_MESSAGE _pRpcMessage,
  584. DWORD *_pdwStubPhase);
  585. void STDMETHODCALLTYPE IWinHttpRequestEvents_OnResponseDataAvailable_Proxy(
  586. IWinHttpRequestEvents * This,
  587. /* [in] */ SAFEARRAY * *Data);
  588. void __RPC_STUB IWinHttpRequestEvents_OnResponseDataAvailable_Stub(
  589. IRpcStubBuffer *This,
  590. IRpcChannelBuffer *_pRpcChannelBuffer,
  591. PRPC_MESSAGE _pRpcMessage,
  592. DWORD *_pdwStubPhase);
  593. void STDMETHODCALLTYPE IWinHttpRequestEvents_OnResponseFinished_Proxy(
  594. IWinHttpRequestEvents * This);
  595. void __RPC_STUB IWinHttpRequestEvents_OnResponseFinished_Stub(
  596. IRpcStubBuffer *This,
  597. IRpcChannelBuffer *_pRpcChannelBuffer,
  598. PRPC_MESSAGE _pRpcMessage,
  599. DWORD *_pdwStubPhase);
  600. void STDMETHODCALLTYPE IWinHttpRequestEvents_OnError_Proxy(
  601. IWinHttpRequestEvents * This,
  602. /* [in] */ long ErrorNumber,
  603. /* [in] */ BSTR ErrorDescription);
  604. void __RPC_STUB IWinHttpRequestEvents_OnError_Stub(
  605. IRpcStubBuffer *This,
  606. IRpcChannelBuffer *_pRpcChannelBuffer,
  607. PRPC_MESSAGE _pRpcMessage,
  608. DWORD *_pdwStubPhase);
  609. #endif /* __IWinHttpRequestEvents_INTERFACE_DEFINED__ */
  610. EXTERN_C const CLSID CLSID_WinHttpRequest;
  611. #ifdef __cplusplus
  612. class DECLSPEC_UUID("2087c2f4-2cef-4953-a8ab-66779b670495")
  613. WinHttpRequest;
  614. #endif
  615. #endif /* __WinHttp_LIBRARY_DEFINED__ */
  616. /* Additional Prototypes for ALL interfaces */
  617. /* end of Additional Prototypes */
  618. #ifdef __cplusplus
  619. }
  620. #endif
  621. #endif