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

15233 lines
409 KiB

  1. #pragma warning( disable: 4049 ) /* more than 64k source lines */
  2. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  3. /* File created by MIDL compiler version 6.00.0347 */
  4. /* Compiler settings for objidl.idl:
  5. Oicf, W1, Zp8, env=Win32 (32b run)
  6. protocol : dce , ms_ext, c_ext, robust
  7. error checks: allocation ref bounds_check enum stub_data
  8. VC __declspec() decoration level:
  9. __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  10. DECLSPEC_UUID(), MIDL_INTERFACE()
  11. */
  12. //@@MIDL_FILE_HEADING( )
  13. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  14. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  15. #define __REQUIRED_RPCNDR_H_VERSION__ 475
  16. #endif
  17. #include "rpc.h"
  18. #include "rpcndr.h"
  19. #ifndef __RPCNDR_H_VERSION__
  20. #error this stub requires an updated version of <rpcndr.h>
  21. #endif // __RPCNDR_H_VERSION__
  22. #ifndef COM_NO_WINDOWS_H
  23. #include "windows.h"
  24. #include "ole2.h"
  25. #endif /*COM_NO_WINDOWS_H*/
  26. #ifndef __objidl_h__
  27. #define __objidl_h__
  28. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  29. #pragma once
  30. #endif
  31. /* Forward Declarations */
  32. #ifndef __IMarshal_FWD_DEFINED__
  33. #define __IMarshal_FWD_DEFINED__
  34. typedef interface IMarshal IMarshal;
  35. #endif /* __IMarshal_FWD_DEFINED__ */
  36. #ifndef __IMarshal2_FWD_DEFINED__
  37. #define __IMarshal2_FWD_DEFINED__
  38. typedef interface IMarshal2 IMarshal2;
  39. #endif /* __IMarshal2_FWD_DEFINED__ */
  40. #ifndef __IMalloc_FWD_DEFINED__
  41. #define __IMalloc_FWD_DEFINED__
  42. typedef interface IMalloc IMalloc;
  43. #endif /* __IMalloc_FWD_DEFINED__ */
  44. #ifndef __IMallocSpy_FWD_DEFINED__
  45. #define __IMallocSpy_FWD_DEFINED__
  46. typedef interface IMallocSpy IMallocSpy;
  47. #endif /* __IMallocSpy_FWD_DEFINED__ */
  48. #ifndef __IStdMarshalInfo_FWD_DEFINED__
  49. #define __IStdMarshalInfo_FWD_DEFINED__
  50. typedef interface IStdMarshalInfo IStdMarshalInfo;
  51. #endif /* __IStdMarshalInfo_FWD_DEFINED__ */
  52. #ifndef __IExternalConnection_FWD_DEFINED__
  53. #define __IExternalConnection_FWD_DEFINED__
  54. typedef interface IExternalConnection IExternalConnection;
  55. #endif /* __IExternalConnection_FWD_DEFINED__ */
  56. #ifndef __IMultiQI_FWD_DEFINED__
  57. #define __IMultiQI_FWD_DEFINED__
  58. typedef interface IMultiQI IMultiQI;
  59. #endif /* __IMultiQI_FWD_DEFINED__ */
  60. #ifndef __AsyncIMultiQI_FWD_DEFINED__
  61. #define __AsyncIMultiQI_FWD_DEFINED__
  62. typedef interface AsyncIMultiQI AsyncIMultiQI;
  63. #endif /* __AsyncIMultiQI_FWD_DEFINED__ */
  64. #ifndef __IInternalUnknown_FWD_DEFINED__
  65. #define __IInternalUnknown_FWD_DEFINED__
  66. typedef interface IInternalUnknown IInternalUnknown;
  67. #endif /* __IInternalUnknown_FWD_DEFINED__ */
  68. #ifndef __IEnumUnknown_FWD_DEFINED__
  69. #define __IEnumUnknown_FWD_DEFINED__
  70. typedef interface IEnumUnknown IEnumUnknown;
  71. #endif /* __IEnumUnknown_FWD_DEFINED__ */
  72. #ifndef __IBindCtx_FWD_DEFINED__
  73. #define __IBindCtx_FWD_DEFINED__
  74. typedef interface IBindCtx IBindCtx;
  75. #endif /* __IBindCtx_FWD_DEFINED__ */
  76. #ifndef __IEnumMoniker_FWD_DEFINED__
  77. #define __IEnumMoniker_FWD_DEFINED__
  78. typedef interface IEnumMoniker IEnumMoniker;
  79. #endif /* __IEnumMoniker_FWD_DEFINED__ */
  80. #ifndef __IRunnableObject_FWD_DEFINED__
  81. #define __IRunnableObject_FWD_DEFINED__
  82. typedef interface IRunnableObject IRunnableObject;
  83. #endif /* __IRunnableObject_FWD_DEFINED__ */
  84. #ifndef __IRunningObjectTable_FWD_DEFINED__
  85. #define __IRunningObjectTable_FWD_DEFINED__
  86. typedef interface IRunningObjectTable IRunningObjectTable;
  87. #endif /* __IRunningObjectTable_FWD_DEFINED__ */
  88. #ifndef __IPersist_FWD_DEFINED__
  89. #define __IPersist_FWD_DEFINED__
  90. typedef interface IPersist IPersist;
  91. #endif /* __IPersist_FWD_DEFINED__ */
  92. #ifndef __IPersistStream_FWD_DEFINED__
  93. #define __IPersistStream_FWD_DEFINED__
  94. typedef interface IPersistStream IPersistStream;
  95. #endif /* __IPersistStream_FWD_DEFINED__ */
  96. #ifndef __IMoniker_FWD_DEFINED__
  97. #define __IMoniker_FWD_DEFINED__
  98. typedef interface IMoniker IMoniker;
  99. #endif /* __IMoniker_FWD_DEFINED__ */
  100. #ifndef __IROTData_FWD_DEFINED__
  101. #define __IROTData_FWD_DEFINED__
  102. typedef interface IROTData IROTData;
  103. #endif /* __IROTData_FWD_DEFINED__ */
  104. #ifndef __IEnumString_FWD_DEFINED__
  105. #define __IEnumString_FWD_DEFINED__
  106. typedef interface IEnumString IEnumString;
  107. #endif /* __IEnumString_FWD_DEFINED__ */
  108. #ifndef __ISequentialStream_FWD_DEFINED__
  109. #define __ISequentialStream_FWD_DEFINED__
  110. typedef interface ISequentialStream ISequentialStream;
  111. #endif /* __ISequentialStream_FWD_DEFINED__ */
  112. #ifndef __IStream_FWD_DEFINED__
  113. #define __IStream_FWD_DEFINED__
  114. typedef interface IStream IStream;
  115. #endif /* __IStream_FWD_DEFINED__ */
  116. #ifndef __IEnumSTATSTG_FWD_DEFINED__
  117. #define __IEnumSTATSTG_FWD_DEFINED__
  118. typedef interface IEnumSTATSTG IEnumSTATSTG;
  119. #endif /* __IEnumSTATSTG_FWD_DEFINED__ */
  120. #ifndef __IStorage_FWD_DEFINED__
  121. #define __IStorage_FWD_DEFINED__
  122. typedef interface IStorage IStorage;
  123. #endif /* __IStorage_FWD_DEFINED__ */
  124. #ifndef __IPersistFile_FWD_DEFINED__
  125. #define __IPersistFile_FWD_DEFINED__
  126. typedef interface IPersistFile IPersistFile;
  127. #endif /* __IPersistFile_FWD_DEFINED__ */
  128. #ifndef __IPersistStorage_FWD_DEFINED__
  129. #define __IPersistStorage_FWD_DEFINED__
  130. typedef interface IPersistStorage IPersistStorage;
  131. #endif /* __IPersistStorage_FWD_DEFINED__ */
  132. #ifndef __ILockBytes_FWD_DEFINED__
  133. #define __ILockBytes_FWD_DEFINED__
  134. typedef interface ILockBytes ILockBytes;
  135. #endif /* __ILockBytes_FWD_DEFINED__ */
  136. #ifndef __IEnumFORMATETC_FWD_DEFINED__
  137. #define __IEnumFORMATETC_FWD_DEFINED__
  138. typedef interface IEnumFORMATETC IEnumFORMATETC;
  139. #endif /* __IEnumFORMATETC_FWD_DEFINED__ */
  140. #ifndef __IEnumSTATDATA_FWD_DEFINED__
  141. #define __IEnumSTATDATA_FWD_DEFINED__
  142. typedef interface IEnumSTATDATA IEnumSTATDATA;
  143. #endif /* __IEnumSTATDATA_FWD_DEFINED__ */
  144. #ifndef __IRootStorage_FWD_DEFINED__
  145. #define __IRootStorage_FWD_DEFINED__
  146. typedef interface IRootStorage IRootStorage;
  147. #endif /* __IRootStorage_FWD_DEFINED__ */
  148. #ifndef __IAdviseSink_FWD_DEFINED__
  149. #define __IAdviseSink_FWD_DEFINED__
  150. typedef interface IAdviseSink IAdviseSink;
  151. #endif /* __IAdviseSink_FWD_DEFINED__ */
  152. #ifndef __AsyncIAdviseSink_FWD_DEFINED__
  153. #define __AsyncIAdviseSink_FWD_DEFINED__
  154. typedef interface AsyncIAdviseSink AsyncIAdviseSink;
  155. #endif /* __AsyncIAdviseSink_FWD_DEFINED__ */
  156. #ifndef __IAdviseSink2_FWD_DEFINED__
  157. #define __IAdviseSink2_FWD_DEFINED__
  158. typedef interface IAdviseSink2 IAdviseSink2;
  159. #endif /* __IAdviseSink2_FWD_DEFINED__ */
  160. #ifndef __AsyncIAdviseSink2_FWD_DEFINED__
  161. #define __AsyncIAdviseSink2_FWD_DEFINED__
  162. typedef interface AsyncIAdviseSink2 AsyncIAdviseSink2;
  163. #endif /* __AsyncIAdviseSink2_FWD_DEFINED__ */
  164. #ifndef __IDataObject_FWD_DEFINED__
  165. #define __IDataObject_FWD_DEFINED__
  166. typedef interface IDataObject IDataObject;
  167. #endif /* __IDataObject_FWD_DEFINED__ */
  168. #ifndef __IDataAdviseHolder_FWD_DEFINED__
  169. #define __IDataAdviseHolder_FWD_DEFINED__
  170. typedef interface IDataAdviseHolder IDataAdviseHolder;
  171. #endif /* __IDataAdviseHolder_FWD_DEFINED__ */
  172. #ifndef __IMessageFilter_FWD_DEFINED__
  173. #define __IMessageFilter_FWD_DEFINED__
  174. typedef interface IMessageFilter IMessageFilter;
  175. #endif /* __IMessageFilter_FWD_DEFINED__ */
  176. #ifndef __IRpcChannelBuffer_FWD_DEFINED__
  177. #define __IRpcChannelBuffer_FWD_DEFINED__
  178. typedef interface IRpcChannelBuffer IRpcChannelBuffer;
  179. #endif /* __IRpcChannelBuffer_FWD_DEFINED__ */
  180. #ifndef __IRpcChannelBuffer2_FWD_DEFINED__
  181. #define __IRpcChannelBuffer2_FWD_DEFINED__
  182. typedef interface IRpcChannelBuffer2 IRpcChannelBuffer2;
  183. #endif /* __IRpcChannelBuffer2_FWD_DEFINED__ */
  184. #ifndef __IAsyncRpcChannelBuffer_FWD_DEFINED__
  185. #define __IAsyncRpcChannelBuffer_FWD_DEFINED__
  186. typedef interface IAsyncRpcChannelBuffer IAsyncRpcChannelBuffer;
  187. #endif /* __IAsyncRpcChannelBuffer_FWD_DEFINED__ */
  188. #ifndef __IRpcChannelBuffer3_FWD_DEFINED__
  189. #define __IRpcChannelBuffer3_FWD_DEFINED__
  190. typedef interface IRpcChannelBuffer3 IRpcChannelBuffer3;
  191. #endif /* __IRpcChannelBuffer3_FWD_DEFINED__ */
  192. #ifndef __IRpcSyntaxNegotiate_FWD_DEFINED__
  193. #define __IRpcSyntaxNegotiate_FWD_DEFINED__
  194. typedef interface IRpcSyntaxNegotiate IRpcSyntaxNegotiate;
  195. #endif /* __IRpcSyntaxNegotiate_FWD_DEFINED__ */
  196. #ifndef __IRpcProxyBuffer_FWD_DEFINED__
  197. #define __IRpcProxyBuffer_FWD_DEFINED__
  198. typedef interface IRpcProxyBuffer IRpcProxyBuffer;
  199. #endif /* __IRpcProxyBuffer_FWD_DEFINED__ */
  200. #ifndef __IRpcStubBuffer_FWD_DEFINED__
  201. #define __IRpcStubBuffer_FWD_DEFINED__
  202. typedef interface IRpcStubBuffer IRpcStubBuffer;
  203. #endif /* __IRpcStubBuffer_FWD_DEFINED__ */
  204. #ifndef __IPSFactoryBuffer_FWD_DEFINED__
  205. #define __IPSFactoryBuffer_FWD_DEFINED__
  206. typedef interface IPSFactoryBuffer IPSFactoryBuffer;
  207. #endif /* __IPSFactoryBuffer_FWD_DEFINED__ */
  208. #ifndef __IChannelHook_FWD_DEFINED__
  209. #define __IChannelHook_FWD_DEFINED__
  210. typedef interface IChannelHook IChannelHook;
  211. #endif /* __IChannelHook_FWD_DEFINED__ */
  212. #ifndef __IClientSecurity_FWD_DEFINED__
  213. #define __IClientSecurity_FWD_DEFINED__
  214. typedef interface IClientSecurity IClientSecurity;
  215. #endif /* __IClientSecurity_FWD_DEFINED__ */
  216. #ifndef __IServerSecurity_FWD_DEFINED__
  217. #define __IServerSecurity_FWD_DEFINED__
  218. typedef interface IServerSecurity IServerSecurity;
  219. #endif /* __IServerSecurity_FWD_DEFINED__ */
  220. #ifndef __IClassActivator_FWD_DEFINED__
  221. #define __IClassActivator_FWD_DEFINED__
  222. typedef interface IClassActivator IClassActivator;
  223. #endif /* __IClassActivator_FWD_DEFINED__ */
  224. #ifndef __IRpcOptions_FWD_DEFINED__
  225. #define __IRpcOptions_FWD_DEFINED__
  226. typedef interface IRpcOptions IRpcOptions;
  227. #endif /* __IRpcOptions_FWD_DEFINED__ */
  228. #ifndef __IFillLockBytes_FWD_DEFINED__
  229. #define __IFillLockBytes_FWD_DEFINED__
  230. typedef interface IFillLockBytes IFillLockBytes;
  231. #endif /* __IFillLockBytes_FWD_DEFINED__ */
  232. #ifndef __IProgressNotify_FWD_DEFINED__
  233. #define __IProgressNotify_FWD_DEFINED__
  234. typedef interface IProgressNotify IProgressNotify;
  235. #endif /* __IProgressNotify_FWD_DEFINED__ */
  236. #ifndef __ILayoutStorage_FWD_DEFINED__
  237. #define __ILayoutStorage_FWD_DEFINED__
  238. typedef interface ILayoutStorage ILayoutStorage;
  239. #endif /* __ILayoutStorage_FWD_DEFINED__ */
  240. #ifndef __IBlockingLock_FWD_DEFINED__
  241. #define __IBlockingLock_FWD_DEFINED__
  242. typedef interface IBlockingLock IBlockingLock;
  243. #endif /* __IBlockingLock_FWD_DEFINED__ */
  244. #ifndef __ITimeAndNoticeControl_FWD_DEFINED__
  245. #define __ITimeAndNoticeControl_FWD_DEFINED__
  246. typedef interface ITimeAndNoticeControl ITimeAndNoticeControl;
  247. #endif /* __ITimeAndNoticeControl_FWD_DEFINED__ */
  248. #ifndef __IOplockStorage_FWD_DEFINED__
  249. #define __IOplockStorage_FWD_DEFINED__
  250. typedef interface IOplockStorage IOplockStorage;
  251. #endif /* __IOplockStorage_FWD_DEFINED__ */
  252. #ifndef __ISurrogate_FWD_DEFINED__
  253. #define __ISurrogate_FWD_DEFINED__
  254. typedef interface ISurrogate ISurrogate;
  255. #endif /* __ISurrogate_FWD_DEFINED__ */
  256. #ifndef __IGlobalInterfaceTable_FWD_DEFINED__
  257. #define __IGlobalInterfaceTable_FWD_DEFINED__
  258. typedef interface IGlobalInterfaceTable IGlobalInterfaceTable;
  259. #endif /* __IGlobalInterfaceTable_FWD_DEFINED__ */
  260. #ifndef __IDirectWriterLock_FWD_DEFINED__
  261. #define __IDirectWriterLock_FWD_DEFINED__
  262. typedef interface IDirectWriterLock IDirectWriterLock;
  263. #endif /* __IDirectWriterLock_FWD_DEFINED__ */
  264. #ifndef __ISynchronize_FWD_DEFINED__
  265. #define __ISynchronize_FWD_DEFINED__
  266. typedef interface ISynchronize ISynchronize;
  267. #endif /* __ISynchronize_FWD_DEFINED__ */
  268. #ifndef __ISynchronizeHandle_FWD_DEFINED__
  269. #define __ISynchronizeHandle_FWD_DEFINED__
  270. typedef interface ISynchronizeHandle ISynchronizeHandle;
  271. #endif /* __ISynchronizeHandle_FWD_DEFINED__ */
  272. #ifndef __ISynchronizeEvent_FWD_DEFINED__
  273. #define __ISynchronizeEvent_FWD_DEFINED__
  274. typedef interface ISynchronizeEvent ISynchronizeEvent;
  275. #endif /* __ISynchronizeEvent_FWD_DEFINED__ */
  276. #ifndef __ISynchronizeContainer_FWD_DEFINED__
  277. #define __ISynchronizeContainer_FWD_DEFINED__
  278. typedef interface ISynchronizeContainer ISynchronizeContainer;
  279. #endif /* __ISynchronizeContainer_FWD_DEFINED__ */
  280. #ifndef __ISynchronizeMutex_FWD_DEFINED__
  281. #define __ISynchronizeMutex_FWD_DEFINED__
  282. typedef interface ISynchronizeMutex ISynchronizeMutex;
  283. #endif /* __ISynchronizeMutex_FWD_DEFINED__ */
  284. #ifndef __ICancelMethodCalls_FWD_DEFINED__
  285. #define __ICancelMethodCalls_FWD_DEFINED__
  286. typedef interface ICancelMethodCalls ICancelMethodCalls;
  287. #endif /* __ICancelMethodCalls_FWD_DEFINED__ */
  288. #ifndef __IAsyncManager_FWD_DEFINED__
  289. #define __IAsyncManager_FWD_DEFINED__
  290. typedef interface IAsyncManager IAsyncManager;
  291. #endif /* __IAsyncManager_FWD_DEFINED__ */
  292. #ifndef __ICallFactory_FWD_DEFINED__
  293. #define __ICallFactory_FWD_DEFINED__
  294. typedef interface ICallFactory ICallFactory;
  295. #endif /* __ICallFactory_FWD_DEFINED__ */
  296. #ifndef __IRpcHelper_FWD_DEFINED__
  297. #define __IRpcHelper_FWD_DEFINED__
  298. typedef interface IRpcHelper IRpcHelper;
  299. #endif /* __IRpcHelper_FWD_DEFINED__ */
  300. #ifndef __IReleaseMarshalBuffers_FWD_DEFINED__
  301. #define __IReleaseMarshalBuffers_FWD_DEFINED__
  302. typedef interface IReleaseMarshalBuffers IReleaseMarshalBuffers;
  303. #endif /* __IReleaseMarshalBuffers_FWD_DEFINED__ */
  304. #ifndef __IWaitMultiple_FWD_DEFINED__
  305. #define __IWaitMultiple_FWD_DEFINED__
  306. typedef interface IWaitMultiple IWaitMultiple;
  307. #endif /* __IWaitMultiple_FWD_DEFINED__ */
  308. #ifndef __IUrlMon_FWD_DEFINED__
  309. #define __IUrlMon_FWD_DEFINED__
  310. typedef interface IUrlMon IUrlMon;
  311. #endif /* __IUrlMon_FWD_DEFINED__ */
  312. #ifndef __IForegroundTransfer_FWD_DEFINED__
  313. #define __IForegroundTransfer_FWD_DEFINED__
  314. typedef interface IForegroundTransfer IForegroundTransfer;
  315. #endif /* __IForegroundTransfer_FWD_DEFINED__ */
  316. #ifndef __IAddrTrackingControl_FWD_DEFINED__
  317. #define __IAddrTrackingControl_FWD_DEFINED__
  318. typedef interface IAddrTrackingControl IAddrTrackingControl;
  319. #endif /* __IAddrTrackingControl_FWD_DEFINED__ */
  320. #ifndef __IAddrExclusionControl_FWD_DEFINED__
  321. #define __IAddrExclusionControl_FWD_DEFINED__
  322. typedef interface IAddrExclusionControl IAddrExclusionControl;
  323. #endif /* __IAddrExclusionControl_FWD_DEFINED__ */
  324. #ifndef __IPipeByte_FWD_DEFINED__
  325. #define __IPipeByte_FWD_DEFINED__
  326. typedef interface IPipeByte IPipeByte;
  327. #endif /* __IPipeByte_FWD_DEFINED__ */
  328. #ifndef __AsyncIPipeByte_FWD_DEFINED__
  329. #define __AsyncIPipeByte_FWD_DEFINED__
  330. typedef interface AsyncIPipeByte AsyncIPipeByte;
  331. #endif /* __AsyncIPipeByte_FWD_DEFINED__ */
  332. #ifndef __IPipeLong_FWD_DEFINED__
  333. #define __IPipeLong_FWD_DEFINED__
  334. typedef interface IPipeLong IPipeLong;
  335. #endif /* __IPipeLong_FWD_DEFINED__ */
  336. #ifndef __AsyncIPipeLong_FWD_DEFINED__
  337. #define __AsyncIPipeLong_FWD_DEFINED__
  338. typedef interface AsyncIPipeLong AsyncIPipeLong;
  339. #endif /* __AsyncIPipeLong_FWD_DEFINED__ */
  340. #ifndef __IPipeDouble_FWD_DEFINED__
  341. #define __IPipeDouble_FWD_DEFINED__
  342. typedef interface IPipeDouble IPipeDouble;
  343. #endif /* __IPipeDouble_FWD_DEFINED__ */
  344. #ifndef __AsyncIPipeDouble_FWD_DEFINED__
  345. #define __AsyncIPipeDouble_FWD_DEFINED__
  346. typedef interface AsyncIPipeDouble AsyncIPipeDouble;
  347. #endif /* __AsyncIPipeDouble_FWD_DEFINED__ */
  348. #ifndef __IThumbnailExtractor_FWD_DEFINED__
  349. #define __IThumbnailExtractor_FWD_DEFINED__
  350. typedef interface IThumbnailExtractor IThumbnailExtractor;
  351. #endif /* __IThumbnailExtractor_FWD_DEFINED__ */
  352. #ifndef __IDummyHICONIncluder_FWD_DEFINED__
  353. #define __IDummyHICONIncluder_FWD_DEFINED__
  354. typedef interface IDummyHICONIncluder IDummyHICONIncluder;
  355. #endif /* __IDummyHICONIncluder_FWD_DEFINED__ */
  356. #ifndef __IComThreadingInfo_FWD_DEFINED__
  357. #define __IComThreadingInfo_FWD_DEFINED__
  358. typedef interface IComThreadingInfo IComThreadingInfo;
  359. #endif /* __IComThreadingInfo_FWD_DEFINED__ */
  360. #ifndef __IProcessInitControl_FWD_DEFINED__
  361. #define __IProcessInitControl_FWD_DEFINED__
  362. typedef interface IProcessInitControl IProcessInitControl;
  363. #endif /* __IProcessInitControl_FWD_DEFINED__ */
  364. #ifndef __IInitializeSpy_FWD_DEFINED__
  365. #define __IInitializeSpy_FWD_DEFINED__
  366. typedef interface IInitializeSpy IInitializeSpy;
  367. #endif /* __IInitializeSpy_FWD_DEFINED__ */
  368. /* header files for imported files */
  369. #include "unknwn.h"
  370. #ifdef __cplusplus
  371. extern "C"{
  372. #endif
  373. void * __RPC_USER MIDL_user_allocate(size_t);
  374. void __RPC_USER MIDL_user_free( void * );
  375. /* interface __MIDL_itf_objidl_0000 */
  376. /* [local] */
  377. //+-------------------------------------------------------------------------
  378. //+-------------------------------------------------------------------------
  379. //
  380. // Microsoft Windows
  381. // Copyright (c) Microsoft Corporation. All rights reserved.
  382. //
  383. //--------------------------------------------------------------------------
  384. #if ( _MSC_VER >= 800 )
  385. #if _MSC_VER >= 1200
  386. #pragma warning(push)
  387. #endif
  388. #pragma warning(disable:4201)
  389. #endif
  390. #if ( _MSC_VER >= 1020 )
  391. #pragma once
  392. #endif
  393. typedef struct _COSERVERINFO
  394. {
  395. DWORD dwReserved1;
  396. LPWSTR pwszName;
  397. COAUTHINFO *pAuthInfo;
  398. DWORD dwReserved2;
  399. } COSERVERINFO;
  400. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_v0_0_c_ifspec;
  401. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_v0_0_s_ifspec;
  402. #ifndef __IMarshal_INTERFACE_DEFINED__
  403. #define __IMarshal_INTERFACE_DEFINED__
  404. /* interface IMarshal */
  405. /* [uuid][object][local] */
  406. typedef /* [unique] */ IMarshal *LPMARSHAL;
  407. EXTERN_C const IID IID_IMarshal;
  408. #if defined(__cplusplus) && !defined(CINTERFACE)
  409. MIDL_INTERFACE("00000003-0000-0000-C000-000000000046")
  410. IMarshal : public IUnknown
  411. {
  412. public:
  413. virtual HRESULT STDMETHODCALLTYPE GetUnmarshalClass(
  414. /* [in] */ REFIID riid,
  415. /* [unique][in] */ void *pv,
  416. /* [in] */ DWORD dwDestContext,
  417. /* [unique][in] */ void *pvDestContext,
  418. /* [in] */ DWORD mshlflags,
  419. /* [out] */ CLSID *pCid) = 0;
  420. virtual HRESULT STDMETHODCALLTYPE GetMarshalSizeMax(
  421. /* [in] */ REFIID riid,
  422. /* [unique][in] */ void *pv,
  423. /* [in] */ DWORD dwDestContext,
  424. /* [unique][in] */ void *pvDestContext,
  425. /* [in] */ DWORD mshlflags,
  426. /* [out] */ DWORD *pSize) = 0;
  427. virtual HRESULT STDMETHODCALLTYPE MarshalInterface(
  428. /* [unique][in] */ IStream *pStm,
  429. /* [in] */ REFIID riid,
  430. /* [unique][in] */ void *pv,
  431. /* [in] */ DWORD dwDestContext,
  432. /* [unique][in] */ void *pvDestContext,
  433. /* [in] */ DWORD mshlflags) = 0;
  434. virtual HRESULT STDMETHODCALLTYPE UnmarshalInterface(
  435. /* [unique][in] */ IStream *pStm,
  436. /* [in] */ REFIID riid,
  437. /* [out] */ void **ppv) = 0;
  438. virtual HRESULT STDMETHODCALLTYPE ReleaseMarshalData(
  439. /* [unique][in] */ IStream *pStm) = 0;
  440. virtual HRESULT STDMETHODCALLTYPE DisconnectObject(
  441. /* [in] */ DWORD dwReserved) = 0;
  442. };
  443. #else /* C style interface */
  444. typedef struct IMarshalVtbl
  445. {
  446. BEGIN_INTERFACE
  447. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  448. IMarshal * This,
  449. /* [in] */ REFIID riid,
  450. /* [iid_is][out] */ void **ppvObject);
  451. ULONG ( STDMETHODCALLTYPE *AddRef )(
  452. IMarshal * This);
  453. ULONG ( STDMETHODCALLTYPE *Release )(
  454. IMarshal * This);
  455. HRESULT ( STDMETHODCALLTYPE *GetUnmarshalClass )(
  456. IMarshal * This,
  457. /* [in] */ REFIID riid,
  458. /* [unique][in] */ void *pv,
  459. /* [in] */ DWORD dwDestContext,
  460. /* [unique][in] */ void *pvDestContext,
  461. /* [in] */ DWORD mshlflags,
  462. /* [out] */ CLSID *pCid);
  463. HRESULT ( STDMETHODCALLTYPE *GetMarshalSizeMax )(
  464. IMarshal * This,
  465. /* [in] */ REFIID riid,
  466. /* [unique][in] */ void *pv,
  467. /* [in] */ DWORD dwDestContext,
  468. /* [unique][in] */ void *pvDestContext,
  469. /* [in] */ DWORD mshlflags,
  470. /* [out] */ DWORD *pSize);
  471. HRESULT ( STDMETHODCALLTYPE *MarshalInterface )(
  472. IMarshal * This,
  473. /* [unique][in] */ IStream *pStm,
  474. /* [in] */ REFIID riid,
  475. /* [unique][in] */ void *pv,
  476. /* [in] */ DWORD dwDestContext,
  477. /* [unique][in] */ void *pvDestContext,
  478. /* [in] */ DWORD mshlflags);
  479. HRESULT ( STDMETHODCALLTYPE *UnmarshalInterface )(
  480. IMarshal * This,
  481. /* [unique][in] */ IStream *pStm,
  482. /* [in] */ REFIID riid,
  483. /* [out] */ void **ppv);
  484. HRESULT ( STDMETHODCALLTYPE *ReleaseMarshalData )(
  485. IMarshal * This,
  486. /* [unique][in] */ IStream *pStm);
  487. HRESULT ( STDMETHODCALLTYPE *DisconnectObject )(
  488. IMarshal * This,
  489. /* [in] */ DWORD dwReserved);
  490. END_INTERFACE
  491. } IMarshalVtbl;
  492. interface IMarshal
  493. {
  494. CONST_VTBL struct IMarshalVtbl *lpVtbl;
  495. };
  496. #ifdef COBJMACROS
  497. #define IMarshal_QueryInterface(This,riid,ppvObject) \
  498. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  499. #define IMarshal_AddRef(This) \
  500. (This)->lpVtbl -> AddRef(This)
  501. #define IMarshal_Release(This) \
  502. (This)->lpVtbl -> Release(This)
  503. #define IMarshal_GetUnmarshalClass(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pCid) \
  504. (This)->lpVtbl -> GetUnmarshalClass(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pCid)
  505. #define IMarshal_GetMarshalSizeMax(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pSize) \
  506. (This)->lpVtbl -> GetMarshalSizeMax(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pSize)
  507. #define IMarshal_MarshalInterface(This,pStm,riid,pv,dwDestContext,pvDestContext,mshlflags) \
  508. (This)->lpVtbl -> MarshalInterface(This,pStm,riid,pv,dwDestContext,pvDestContext,mshlflags)
  509. #define IMarshal_UnmarshalInterface(This,pStm,riid,ppv) \
  510. (This)->lpVtbl -> UnmarshalInterface(This,pStm,riid,ppv)
  511. #define IMarshal_ReleaseMarshalData(This,pStm) \
  512. (This)->lpVtbl -> ReleaseMarshalData(This,pStm)
  513. #define IMarshal_DisconnectObject(This,dwReserved) \
  514. (This)->lpVtbl -> DisconnectObject(This,dwReserved)
  515. #endif /* COBJMACROS */
  516. #endif /* C style interface */
  517. HRESULT STDMETHODCALLTYPE IMarshal_GetUnmarshalClass_Proxy(
  518. IMarshal * This,
  519. /* [in] */ REFIID riid,
  520. /* [unique][in] */ void *pv,
  521. /* [in] */ DWORD dwDestContext,
  522. /* [unique][in] */ void *pvDestContext,
  523. /* [in] */ DWORD mshlflags,
  524. /* [out] */ CLSID *pCid);
  525. void __RPC_STUB IMarshal_GetUnmarshalClass_Stub(
  526. IRpcStubBuffer *This,
  527. IRpcChannelBuffer *_pRpcChannelBuffer,
  528. PRPC_MESSAGE _pRpcMessage,
  529. DWORD *_pdwStubPhase);
  530. HRESULT STDMETHODCALLTYPE IMarshal_GetMarshalSizeMax_Proxy(
  531. IMarshal * This,
  532. /* [in] */ REFIID riid,
  533. /* [unique][in] */ void *pv,
  534. /* [in] */ DWORD dwDestContext,
  535. /* [unique][in] */ void *pvDestContext,
  536. /* [in] */ DWORD mshlflags,
  537. /* [out] */ DWORD *pSize);
  538. void __RPC_STUB IMarshal_GetMarshalSizeMax_Stub(
  539. IRpcStubBuffer *This,
  540. IRpcChannelBuffer *_pRpcChannelBuffer,
  541. PRPC_MESSAGE _pRpcMessage,
  542. DWORD *_pdwStubPhase);
  543. HRESULT STDMETHODCALLTYPE IMarshal_MarshalInterface_Proxy(
  544. IMarshal * This,
  545. /* [unique][in] */ IStream *pStm,
  546. /* [in] */ REFIID riid,
  547. /* [unique][in] */ void *pv,
  548. /* [in] */ DWORD dwDestContext,
  549. /* [unique][in] */ void *pvDestContext,
  550. /* [in] */ DWORD mshlflags);
  551. void __RPC_STUB IMarshal_MarshalInterface_Stub(
  552. IRpcStubBuffer *This,
  553. IRpcChannelBuffer *_pRpcChannelBuffer,
  554. PRPC_MESSAGE _pRpcMessage,
  555. DWORD *_pdwStubPhase);
  556. HRESULT STDMETHODCALLTYPE IMarshal_UnmarshalInterface_Proxy(
  557. IMarshal * This,
  558. /* [unique][in] */ IStream *pStm,
  559. /* [in] */ REFIID riid,
  560. /* [out] */ void **ppv);
  561. void __RPC_STUB IMarshal_UnmarshalInterface_Stub(
  562. IRpcStubBuffer *This,
  563. IRpcChannelBuffer *_pRpcChannelBuffer,
  564. PRPC_MESSAGE _pRpcMessage,
  565. DWORD *_pdwStubPhase);
  566. HRESULT STDMETHODCALLTYPE IMarshal_ReleaseMarshalData_Proxy(
  567. IMarshal * This,
  568. /* [unique][in] */ IStream *pStm);
  569. void __RPC_STUB IMarshal_ReleaseMarshalData_Stub(
  570. IRpcStubBuffer *This,
  571. IRpcChannelBuffer *_pRpcChannelBuffer,
  572. PRPC_MESSAGE _pRpcMessage,
  573. DWORD *_pdwStubPhase);
  574. HRESULT STDMETHODCALLTYPE IMarshal_DisconnectObject_Proxy(
  575. IMarshal * This,
  576. /* [in] */ DWORD dwReserved);
  577. void __RPC_STUB IMarshal_DisconnectObject_Stub(
  578. IRpcStubBuffer *This,
  579. IRpcChannelBuffer *_pRpcChannelBuffer,
  580. PRPC_MESSAGE _pRpcMessage,
  581. DWORD *_pdwStubPhase);
  582. #endif /* __IMarshal_INTERFACE_DEFINED__ */
  583. #ifndef __IMarshal2_INTERFACE_DEFINED__
  584. #define __IMarshal2_INTERFACE_DEFINED__
  585. /* interface IMarshal2 */
  586. /* [uuid][object][local] */
  587. typedef /* [unique] */ IMarshal2 *LPMARSHAL2;
  588. EXTERN_C const IID IID_IMarshal2;
  589. #if defined(__cplusplus) && !defined(CINTERFACE)
  590. MIDL_INTERFACE("000001cf-0000-0000-C000-000000000046")
  591. IMarshal2 : public IMarshal
  592. {
  593. public:
  594. };
  595. #else /* C style interface */
  596. typedef struct IMarshal2Vtbl
  597. {
  598. BEGIN_INTERFACE
  599. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  600. IMarshal2 * This,
  601. /* [in] */ REFIID riid,
  602. /* [iid_is][out] */ void **ppvObject);
  603. ULONG ( STDMETHODCALLTYPE *AddRef )(
  604. IMarshal2 * This);
  605. ULONG ( STDMETHODCALLTYPE *Release )(
  606. IMarshal2 * This);
  607. HRESULT ( STDMETHODCALLTYPE *GetUnmarshalClass )(
  608. IMarshal2 * This,
  609. /* [in] */ REFIID riid,
  610. /* [unique][in] */ void *pv,
  611. /* [in] */ DWORD dwDestContext,
  612. /* [unique][in] */ void *pvDestContext,
  613. /* [in] */ DWORD mshlflags,
  614. /* [out] */ CLSID *pCid);
  615. HRESULT ( STDMETHODCALLTYPE *GetMarshalSizeMax )(
  616. IMarshal2 * This,
  617. /* [in] */ REFIID riid,
  618. /* [unique][in] */ void *pv,
  619. /* [in] */ DWORD dwDestContext,
  620. /* [unique][in] */ void *pvDestContext,
  621. /* [in] */ DWORD mshlflags,
  622. /* [out] */ DWORD *pSize);
  623. HRESULT ( STDMETHODCALLTYPE *MarshalInterface )(
  624. IMarshal2 * This,
  625. /* [unique][in] */ IStream *pStm,
  626. /* [in] */ REFIID riid,
  627. /* [unique][in] */ void *pv,
  628. /* [in] */ DWORD dwDestContext,
  629. /* [unique][in] */ void *pvDestContext,
  630. /* [in] */ DWORD mshlflags);
  631. HRESULT ( STDMETHODCALLTYPE *UnmarshalInterface )(
  632. IMarshal2 * This,
  633. /* [unique][in] */ IStream *pStm,
  634. /* [in] */ REFIID riid,
  635. /* [out] */ void **ppv);
  636. HRESULT ( STDMETHODCALLTYPE *ReleaseMarshalData )(
  637. IMarshal2 * This,
  638. /* [unique][in] */ IStream *pStm);
  639. HRESULT ( STDMETHODCALLTYPE *DisconnectObject )(
  640. IMarshal2 * This,
  641. /* [in] */ DWORD dwReserved);
  642. END_INTERFACE
  643. } IMarshal2Vtbl;
  644. interface IMarshal2
  645. {
  646. CONST_VTBL struct IMarshal2Vtbl *lpVtbl;
  647. };
  648. #ifdef COBJMACROS
  649. #define IMarshal2_QueryInterface(This,riid,ppvObject) \
  650. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  651. #define IMarshal2_AddRef(This) \
  652. (This)->lpVtbl -> AddRef(This)
  653. #define IMarshal2_Release(This) \
  654. (This)->lpVtbl -> Release(This)
  655. #define IMarshal2_GetUnmarshalClass(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pCid) \
  656. (This)->lpVtbl -> GetUnmarshalClass(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pCid)
  657. #define IMarshal2_GetMarshalSizeMax(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pSize) \
  658. (This)->lpVtbl -> GetMarshalSizeMax(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pSize)
  659. #define IMarshal2_MarshalInterface(This,pStm,riid,pv,dwDestContext,pvDestContext,mshlflags) \
  660. (This)->lpVtbl -> MarshalInterface(This,pStm,riid,pv,dwDestContext,pvDestContext,mshlflags)
  661. #define IMarshal2_UnmarshalInterface(This,pStm,riid,ppv) \
  662. (This)->lpVtbl -> UnmarshalInterface(This,pStm,riid,ppv)
  663. #define IMarshal2_ReleaseMarshalData(This,pStm) \
  664. (This)->lpVtbl -> ReleaseMarshalData(This,pStm)
  665. #define IMarshal2_DisconnectObject(This,dwReserved) \
  666. (This)->lpVtbl -> DisconnectObject(This,dwReserved)
  667. #endif /* COBJMACROS */
  668. #endif /* C style interface */
  669. #endif /* __IMarshal2_INTERFACE_DEFINED__ */
  670. #ifndef __IMalloc_INTERFACE_DEFINED__
  671. #define __IMalloc_INTERFACE_DEFINED__
  672. /* interface IMalloc */
  673. /* [uuid][object][local] */
  674. typedef /* [unique] */ IMalloc *LPMALLOC;
  675. EXTERN_C const IID IID_IMalloc;
  676. #if defined(__cplusplus) && !defined(CINTERFACE)
  677. MIDL_INTERFACE("00000002-0000-0000-C000-000000000046")
  678. IMalloc : public IUnknown
  679. {
  680. public:
  681. virtual void *STDMETHODCALLTYPE Alloc(
  682. /* [in] */ SIZE_T cb) = 0;
  683. virtual void *STDMETHODCALLTYPE Realloc(
  684. /* [in] */ void *pv,
  685. /* [in] */ SIZE_T cb) = 0;
  686. virtual void STDMETHODCALLTYPE Free(
  687. /* [in] */ void *pv) = 0;
  688. virtual SIZE_T STDMETHODCALLTYPE GetSize(
  689. /* [in] */ void *pv) = 0;
  690. virtual int STDMETHODCALLTYPE DidAlloc(
  691. void *pv) = 0;
  692. virtual void STDMETHODCALLTYPE HeapMinimize( void) = 0;
  693. };
  694. #else /* C style interface */
  695. typedef struct IMallocVtbl
  696. {
  697. BEGIN_INTERFACE
  698. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  699. IMalloc * This,
  700. /* [in] */ REFIID riid,
  701. /* [iid_is][out] */ void **ppvObject);
  702. ULONG ( STDMETHODCALLTYPE *AddRef )(
  703. IMalloc * This);
  704. ULONG ( STDMETHODCALLTYPE *Release )(
  705. IMalloc * This);
  706. void *( STDMETHODCALLTYPE *Alloc )(
  707. IMalloc * This,
  708. /* [in] */ SIZE_T cb);
  709. void *( STDMETHODCALLTYPE *Realloc )(
  710. IMalloc * This,
  711. /* [in] */ void *pv,
  712. /* [in] */ SIZE_T cb);
  713. void ( STDMETHODCALLTYPE *Free )(
  714. IMalloc * This,
  715. /* [in] */ void *pv);
  716. SIZE_T ( STDMETHODCALLTYPE *GetSize )(
  717. IMalloc * This,
  718. /* [in] */ void *pv);
  719. int ( STDMETHODCALLTYPE *DidAlloc )(
  720. IMalloc * This,
  721. void *pv);
  722. void ( STDMETHODCALLTYPE *HeapMinimize )(
  723. IMalloc * This);
  724. END_INTERFACE
  725. } IMallocVtbl;
  726. interface IMalloc
  727. {
  728. CONST_VTBL struct IMallocVtbl *lpVtbl;
  729. };
  730. #ifdef COBJMACROS
  731. #define IMalloc_QueryInterface(This,riid,ppvObject) \
  732. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  733. #define IMalloc_AddRef(This) \
  734. (This)->lpVtbl -> AddRef(This)
  735. #define IMalloc_Release(This) \
  736. (This)->lpVtbl -> Release(This)
  737. #define IMalloc_Alloc(This,cb) \
  738. (This)->lpVtbl -> Alloc(This,cb)
  739. #define IMalloc_Realloc(This,pv,cb) \
  740. (This)->lpVtbl -> Realloc(This,pv,cb)
  741. #define IMalloc_Free(This,pv) \
  742. (This)->lpVtbl -> Free(This,pv)
  743. #define IMalloc_GetSize(This,pv) \
  744. (This)->lpVtbl -> GetSize(This,pv)
  745. #define IMalloc_DidAlloc(This,pv) \
  746. (This)->lpVtbl -> DidAlloc(This,pv)
  747. #define IMalloc_HeapMinimize(This) \
  748. (This)->lpVtbl -> HeapMinimize(This)
  749. #endif /* COBJMACROS */
  750. #endif /* C style interface */
  751. void *STDMETHODCALLTYPE IMalloc_Alloc_Proxy(
  752. IMalloc * This,
  753. /* [in] */ SIZE_T cb);
  754. void __RPC_STUB IMalloc_Alloc_Stub(
  755. IRpcStubBuffer *This,
  756. IRpcChannelBuffer *_pRpcChannelBuffer,
  757. PRPC_MESSAGE _pRpcMessage,
  758. DWORD *_pdwStubPhase);
  759. void *STDMETHODCALLTYPE IMalloc_Realloc_Proxy(
  760. IMalloc * This,
  761. /* [in] */ void *pv,
  762. /* [in] */ SIZE_T cb);
  763. void __RPC_STUB IMalloc_Realloc_Stub(
  764. IRpcStubBuffer *This,
  765. IRpcChannelBuffer *_pRpcChannelBuffer,
  766. PRPC_MESSAGE _pRpcMessage,
  767. DWORD *_pdwStubPhase);
  768. void STDMETHODCALLTYPE IMalloc_Free_Proxy(
  769. IMalloc * This,
  770. /* [in] */ void *pv);
  771. void __RPC_STUB IMalloc_Free_Stub(
  772. IRpcStubBuffer *This,
  773. IRpcChannelBuffer *_pRpcChannelBuffer,
  774. PRPC_MESSAGE _pRpcMessage,
  775. DWORD *_pdwStubPhase);
  776. SIZE_T STDMETHODCALLTYPE IMalloc_GetSize_Proxy(
  777. IMalloc * This,
  778. /* [in] */ void *pv);
  779. void __RPC_STUB IMalloc_GetSize_Stub(
  780. IRpcStubBuffer *This,
  781. IRpcChannelBuffer *_pRpcChannelBuffer,
  782. PRPC_MESSAGE _pRpcMessage,
  783. DWORD *_pdwStubPhase);
  784. int STDMETHODCALLTYPE IMalloc_DidAlloc_Proxy(
  785. IMalloc * This,
  786. void *pv);
  787. void __RPC_STUB IMalloc_DidAlloc_Stub(
  788. IRpcStubBuffer *This,
  789. IRpcChannelBuffer *_pRpcChannelBuffer,
  790. PRPC_MESSAGE _pRpcMessage,
  791. DWORD *_pdwStubPhase);
  792. void STDMETHODCALLTYPE IMalloc_HeapMinimize_Proxy(
  793. IMalloc * This);
  794. void __RPC_STUB IMalloc_HeapMinimize_Stub(
  795. IRpcStubBuffer *This,
  796. IRpcChannelBuffer *_pRpcChannelBuffer,
  797. PRPC_MESSAGE _pRpcMessage,
  798. DWORD *_pdwStubPhase);
  799. #endif /* __IMalloc_INTERFACE_DEFINED__ */
  800. #ifndef __IMallocSpy_INTERFACE_DEFINED__
  801. #define __IMallocSpy_INTERFACE_DEFINED__
  802. /* interface IMallocSpy */
  803. /* [uuid][object][local] */
  804. typedef /* [unique] */ IMallocSpy *LPMALLOCSPY;
  805. EXTERN_C const IID IID_IMallocSpy;
  806. #if defined(__cplusplus) && !defined(CINTERFACE)
  807. MIDL_INTERFACE("0000001d-0000-0000-C000-000000000046")
  808. IMallocSpy : public IUnknown
  809. {
  810. public:
  811. virtual SIZE_T STDMETHODCALLTYPE PreAlloc(
  812. /* [in] */ SIZE_T cbRequest) = 0;
  813. virtual void *STDMETHODCALLTYPE PostAlloc(
  814. /* [in] */ void *pActual) = 0;
  815. virtual void *STDMETHODCALLTYPE PreFree(
  816. /* [in] */ void *pRequest,
  817. /* [in] */ BOOL fSpyed) = 0;
  818. virtual void STDMETHODCALLTYPE PostFree(
  819. /* [in] */ BOOL fSpyed) = 0;
  820. virtual SIZE_T STDMETHODCALLTYPE PreRealloc(
  821. /* [in] */ void *pRequest,
  822. /* [in] */ SIZE_T cbRequest,
  823. /* [out] */ void **ppNewRequest,
  824. /* [in] */ BOOL fSpyed) = 0;
  825. virtual void *STDMETHODCALLTYPE PostRealloc(
  826. /* [in] */ void *pActual,
  827. /* [in] */ BOOL fSpyed) = 0;
  828. virtual void *STDMETHODCALLTYPE PreGetSize(
  829. /* [in] */ void *pRequest,
  830. /* [in] */ BOOL fSpyed) = 0;
  831. virtual SIZE_T STDMETHODCALLTYPE PostGetSize(
  832. /* [in] */ SIZE_T cbActual,
  833. /* [in] */ BOOL fSpyed) = 0;
  834. virtual void *STDMETHODCALLTYPE PreDidAlloc(
  835. /* [in] */ void *pRequest,
  836. /* [in] */ BOOL fSpyed) = 0;
  837. virtual int STDMETHODCALLTYPE PostDidAlloc(
  838. /* [in] */ void *pRequest,
  839. /* [in] */ BOOL fSpyed,
  840. /* [in] */ int fActual) = 0;
  841. virtual void STDMETHODCALLTYPE PreHeapMinimize( void) = 0;
  842. virtual void STDMETHODCALLTYPE PostHeapMinimize( void) = 0;
  843. };
  844. #else /* C style interface */
  845. typedef struct IMallocSpyVtbl
  846. {
  847. BEGIN_INTERFACE
  848. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  849. IMallocSpy * This,
  850. /* [in] */ REFIID riid,
  851. /* [iid_is][out] */ void **ppvObject);
  852. ULONG ( STDMETHODCALLTYPE *AddRef )(
  853. IMallocSpy * This);
  854. ULONG ( STDMETHODCALLTYPE *Release )(
  855. IMallocSpy * This);
  856. SIZE_T ( STDMETHODCALLTYPE *PreAlloc )(
  857. IMallocSpy * This,
  858. /* [in] */ SIZE_T cbRequest);
  859. void *( STDMETHODCALLTYPE *PostAlloc )(
  860. IMallocSpy * This,
  861. /* [in] */ void *pActual);
  862. void *( STDMETHODCALLTYPE *PreFree )(
  863. IMallocSpy * This,
  864. /* [in] */ void *pRequest,
  865. /* [in] */ BOOL fSpyed);
  866. void ( STDMETHODCALLTYPE *PostFree )(
  867. IMallocSpy * This,
  868. /* [in] */ BOOL fSpyed);
  869. SIZE_T ( STDMETHODCALLTYPE *PreRealloc )(
  870. IMallocSpy * This,
  871. /* [in] */ void *pRequest,
  872. /* [in] */ SIZE_T cbRequest,
  873. /* [out] */ void **ppNewRequest,
  874. /* [in] */ BOOL fSpyed);
  875. void *( STDMETHODCALLTYPE *PostRealloc )(
  876. IMallocSpy * This,
  877. /* [in] */ void *pActual,
  878. /* [in] */ BOOL fSpyed);
  879. void *( STDMETHODCALLTYPE *PreGetSize )(
  880. IMallocSpy * This,
  881. /* [in] */ void *pRequest,
  882. /* [in] */ BOOL fSpyed);
  883. SIZE_T ( STDMETHODCALLTYPE *PostGetSize )(
  884. IMallocSpy * This,
  885. /* [in] */ SIZE_T cbActual,
  886. /* [in] */ BOOL fSpyed);
  887. void *( STDMETHODCALLTYPE *PreDidAlloc )(
  888. IMallocSpy * This,
  889. /* [in] */ void *pRequest,
  890. /* [in] */ BOOL fSpyed);
  891. int ( STDMETHODCALLTYPE *PostDidAlloc )(
  892. IMallocSpy * This,
  893. /* [in] */ void *pRequest,
  894. /* [in] */ BOOL fSpyed,
  895. /* [in] */ int fActual);
  896. void ( STDMETHODCALLTYPE *PreHeapMinimize )(
  897. IMallocSpy * This);
  898. void ( STDMETHODCALLTYPE *PostHeapMinimize )(
  899. IMallocSpy * This);
  900. END_INTERFACE
  901. } IMallocSpyVtbl;
  902. interface IMallocSpy
  903. {
  904. CONST_VTBL struct IMallocSpyVtbl *lpVtbl;
  905. };
  906. #ifdef COBJMACROS
  907. #define IMallocSpy_QueryInterface(This,riid,ppvObject) \
  908. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  909. #define IMallocSpy_AddRef(This) \
  910. (This)->lpVtbl -> AddRef(This)
  911. #define IMallocSpy_Release(This) \
  912. (This)->lpVtbl -> Release(This)
  913. #define IMallocSpy_PreAlloc(This,cbRequest) \
  914. (This)->lpVtbl -> PreAlloc(This,cbRequest)
  915. #define IMallocSpy_PostAlloc(This,pActual) \
  916. (This)->lpVtbl -> PostAlloc(This,pActual)
  917. #define IMallocSpy_PreFree(This,pRequest,fSpyed) \
  918. (This)->lpVtbl -> PreFree(This,pRequest,fSpyed)
  919. #define IMallocSpy_PostFree(This,fSpyed) \
  920. (This)->lpVtbl -> PostFree(This,fSpyed)
  921. #define IMallocSpy_PreRealloc(This,pRequest,cbRequest,ppNewRequest,fSpyed) \
  922. (This)->lpVtbl -> PreRealloc(This,pRequest,cbRequest,ppNewRequest,fSpyed)
  923. #define IMallocSpy_PostRealloc(This,pActual,fSpyed) \
  924. (This)->lpVtbl -> PostRealloc(This,pActual,fSpyed)
  925. #define IMallocSpy_PreGetSize(This,pRequest,fSpyed) \
  926. (This)->lpVtbl -> PreGetSize(This,pRequest,fSpyed)
  927. #define IMallocSpy_PostGetSize(This,cbActual,fSpyed) \
  928. (This)->lpVtbl -> PostGetSize(This,cbActual,fSpyed)
  929. #define IMallocSpy_PreDidAlloc(This,pRequest,fSpyed) \
  930. (This)->lpVtbl -> PreDidAlloc(This,pRequest,fSpyed)
  931. #define IMallocSpy_PostDidAlloc(This,pRequest,fSpyed,fActual) \
  932. (This)->lpVtbl -> PostDidAlloc(This,pRequest,fSpyed,fActual)
  933. #define IMallocSpy_PreHeapMinimize(This) \
  934. (This)->lpVtbl -> PreHeapMinimize(This)
  935. #define IMallocSpy_PostHeapMinimize(This) \
  936. (This)->lpVtbl -> PostHeapMinimize(This)
  937. #endif /* COBJMACROS */
  938. #endif /* C style interface */
  939. SIZE_T STDMETHODCALLTYPE IMallocSpy_PreAlloc_Proxy(
  940. IMallocSpy * This,
  941. /* [in] */ SIZE_T cbRequest);
  942. void __RPC_STUB IMallocSpy_PreAlloc_Stub(
  943. IRpcStubBuffer *This,
  944. IRpcChannelBuffer *_pRpcChannelBuffer,
  945. PRPC_MESSAGE _pRpcMessage,
  946. DWORD *_pdwStubPhase);
  947. void *STDMETHODCALLTYPE IMallocSpy_PostAlloc_Proxy(
  948. IMallocSpy * This,
  949. /* [in] */ void *pActual);
  950. void __RPC_STUB IMallocSpy_PostAlloc_Stub(
  951. IRpcStubBuffer *This,
  952. IRpcChannelBuffer *_pRpcChannelBuffer,
  953. PRPC_MESSAGE _pRpcMessage,
  954. DWORD *_pdwStubPhase);
  955. void *STDMETHODCALLTYPE IMallocSpy_PreFree_Proxy(
  956. IMallocSpy * This,
  957. /* [in] */ void *pRequest,
  958. /* [in] */ BOOL fSpyed);
  959. void __RPC_STUB IMallocSpy_PreFree_Stub(
  960. IRpcStubBuffer *This,
  961. IRpcChannelBuffer *_pRpcChannelBuffer,
  962. PRPC_MESSAGE _pRpcMessage,
  963. DWORD *_pdwStubPhase);
  964. void STDMETHODCALLTYPE IMallocSpy_PostFree_Proxy(
  965. IMallocSpy * This,
  966. /* [in] */ BOOL fSpyed);
  967. void __RPC_STUB IMallocSpy_PostFree_Stub(
  968. IRpcStubBuffer *This,
  969. IRpcChannelBuffer *_pRpcChannelBuffer,
  970. PRPC_MESSAGE _pRpcMessage,
  971. DWORD *_pdwStubPhase);
  972. SIZE_T STDMETHODCALLTYPE IMallocSpy_PreRealloc_Proxy(
  973. IMallocSpy * This,
  974. /* [in] */ void *pRequest,
  975. /* [in] */ SIZE_T cbRequest,
  976. /* [out] */ void **ppNewRequest,
  977. /* [in] */ BOOL fSpyed);
  978. void __RPC_STUB IMallocSpy_PreRealloc_Stub(
  979. IRpcStubBuffer *This,
  980. IRpcChannelBuffer *_pRpcChannelBuffer,
  981. PRPC_MESSAGE _pRpcMessage,
  982. DWORD *_pdwStubPhase);
  983. void *STDMETHODCALLTYPE IMallocSpy_PostRealloc_Proxy(
  984. IMallocSpy * This,
  985. /* [in] */ void *pActual,
  986. /* [in] */ BOOL fSpyed);
  987. void __RPC_STUB IMallocSpy_PostRealloc_Stub(
  988. IRpcStubBuffer *This,
  989. IRpcChannelBuffer *_pRpcChannelBuffer,
  990. PRPC_MESSAGE _pRpcMessage,
  991. DWORD *_pdwStubPhase);
  992. void *STDMETHODCALLTYPE IMallocSpy_PreGetSize_Proxy(
  993. IMallocSpy * This,
  994. /* [in] */ void *pRequest,
  995. /* [in] */ BOOL fSpyed);
  996. void __RPC_STUB IMallocSpy_PreGetSize_Stub(
  997. IRpcStubBuffer *This,
  998. IRpcChannelBuffer *_pRpcChannelBuffer,
  999. PRPC_MESSAGE _pRpcMessage,
  1000. DWORD *_pdwStubPhase);
  1001. SIZE_T STDMETHODCALLTYPE IMallocSpy_PostGetSize_Proxy(
  1002. IMallocSpy * This,
  1003. /* [in] */ SIZE_T cbActual,
  1004. /* [in] */ BOOL fSpyed);
  1005. void __RPC_STUB IMallocSpy_PostGetSize_Stub(
  1006. IRpcStubBuffer *This,
  1007. IRpcChannelBuffer *_pRpcChannelBuffer,
  1008. PRPC_MESSAGE _pRpcMessage,
  1009. DWORD *_pdwStubPhase);
  1010. void *STDMETHODCALLTYPE IMallocSpy_PreDidAlloc_Proxy(
  1011. IMallocSpy * This,
  1012. /* [in] */ void *pRequest,
  1013. /* [in] */ BOOL fSpyed);
  1014. void __RPC_STUB IMallocSpy_PreDidAlloc_Stub(
  1015. IRpcStubBuffer *This,
  1016. IRpcChannelBuffer *_pRpcChannelBuffer,
  1017. PRPC_MESSAGE _pRpcMessage,
  1018. DWORD *_pdwStubPhase);
  1019. int STDMETHODCALLTYPE IMallocSpy_PostDidAlloc_Proxy(
  1020. IMallocSpy * This,
  1021. /* [in] */ void *pRequest,
  1022. /* [in] */ BOOL fSpyed,
  1023. /* [in] */ int fActual);
  1024. void __RPC_STUB IMallocSpy_PostDidAlloc_Stub(
  1025. IRpcStubBuffer *This,
  1026. IRpcChannelBuffer *_pRpcChannelBuffer,
  1027. PRPC_MESSAGE _pRpcMessage,
  1028. DWORD *_pdwStubPhase);
  1029. void STDMETHODCALLTYPE IMallocSpy_PreHeapMinimize_Proxy(
  1030. IMallocSpy * This);
  1031. void __RPC_STUB IMallocSpy_PreHeapMinimize_Stub(
  1032. IRpcStubBuffer *This,
  1033. IRpcChannelBuffer *_pRpcChannelBuffer,
  1034. PRPC_MESSAGE _pRpcMessage,
  1035. DWORD *_pdwStubPhase);
  1036. void STDMETHODCALLTYPE IMallocSpy_PostHeapMinimize_Proxy(
  1037. IMallocSpy * This);
  1038. void __RPC_STUB IMallocSpy_PostHeapMinimize_Stub(
  1039. IRpcStubBuffer *This,
  1040. IRpcChannelBuffer *_pRpcChannelBuffer,
  1041. PRPC_MESSAGE _pRpcMessage,
  1042. DWORD *_pdwStubPhase);
  1043. #endif /* __IMallocSpy_INTERFACE_DEFINED__ */
  1044. #ifndef __IStdMarshalInfo_INTERFACE_DEFINED__
  1045. #define __IStdMarshalInfo_INTERFACE_DEFINED__
  1046. /* interface IStdMarshalInfo */
  1047. /* [uuid][object][local] */
  1048. typedef /* [unique] */ IStdMarshalInfo *LPSTDMARSHALINFO;
  1049. EXTERN_C const IID IID_IStdMarshalInfo;
  1050. #if defined(__cplusplus) && !defined(CINTERFACE)
  1051. MIDL_INTERFACE("00000018-0000-0000-C000-000000000046")
  1052. IStdMarshalInfo : public IUnknown
  1053. {
  1054. public:
  1055. virtual HRESULT STDMETHODCALLTYPE GetClassForHandler(
  1056. /* [in] */ DWORD dwDestContext,
  1057. /* [unique][in] */ void *pvDestContext,
  1058. /* [out] */ CLSID *pClsid) = 0;
  1059. };
  1060. #else /* C style interface */
  1061. typedef struct IStdMarshalInfoVtbl
  1062. {
  1063. BEGIN_INTERFACE
  1064. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1065. IStdMarshalInfo * This,
  1066. /* [in] */ REFIID riid,
  1067. /* [iid_is][out] */ void **ppvObject);
  1068. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1069. IStdMarshalInfo * This);
  1070. ULONG ( STDMETHODCALLTYPE *Release )(
  1071. IStdMarshalInfo * This);
  1072. HRESULT ( STDMETHODCALLTYPE *GetClassForHandler )(
  1073. IStdMarshalInfo * This,
  1074. /* [in] */ DWORD dwDestContext,
  1075. /* [unique][in] */ void *pvDestContext,
  1076. /* [out] */ CLSID *pClsid);
  1077. END_INTERFACE
  1078. } IStdMarshalInfoVtbl;
  1079. interface IStdMarshalInfo
  1080. {
  1081. CONST_VTBL struct IStdMarshalInfoVtbl *lpVtbl;
  1082. };
  1083. #ifdef COBJMACROS
  1084. #define IStdMarshalInfo_QueryInterface(This,riid,ppvObject) \
  1085. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1086. #define IStdMarshalInfo_AddRef(This) \
  1087. (This)->lpVtbl -> AddRef(This)
  1088. #define IStdMarshalInfo_Release(This) \
  1089. (This)->lpVtbl -> Release(This)
  1090. #define IStdMarshalInfo_GetClassForHandler(This,dwDestContext,pvDestContext,pClsid) \
  1091. (This)->lpVtbl -> GetClassForHandler(This,dwDestContext,pvDestContext,pClsid)
  1092. #endif /* COBJMACROS */
  1093. #endif /* C style interface */
  1094. HRESULT STDMETHODCALLTYPE IStdMarshalInfo_GetClassForHandler_Proxy(
  1095. IStdMarshalInfo * This,
  1096. /* [in] */ DWORD dwDestContext,
  1097. /* [unique][in] */ void *pvDestContext,
  1098. /* [out] */ CLSID *pClsid);
  1099. void __RPC_STUB IStdMarshalInfo_GetClassForHandler_Stub(
  1100. IRpcStubBuffer *This,
  1101. IRpcChannelBuffer *_pRpcChannelBuffer,
  1102. PRPC_MESSAGE _pRpcMessage,
  1103. DWORD *_pdwStubPhase);
  1104. #endif /* __IStdMarshalInfo_INTERFACE_DEFINED__ */
  1105. #ifndef __IExternalConnection_INTERFACE_DEFINED__
  1106. #define __IExternalConnection_INTERFACE_DEFINED__
  1107. /* interface IExternalConnection */
  1108. /* [uuid][local][object] */
  1109. typedef /* [unique] */ IExternalConnection *LPEXTERNALCONNECTION;
  1110. typedef
  1111. enum tagEXTCONN
  1112. { EXTCONN_STRONG = 0x1,
  1113. EXTCONN_WEAK = 0x2,
  1114. EXTCONN_CALLABLE = 0x4
  1115. } EXTCONN;
  1116. EXTERN_C const IID IID_IExternalConnection;
  1117. #if defined(__cplusplus) && !defined(CINTERFACE)
  1118. MIDL_INTERFACE("00000019-0000-0000-C000-000000000046")
  1119. IExternalConnection : public IUnknown
  1120. {
  1121. public:
  1122. virtual DWORD STDMETHODCALLTYPE AddConnection(
  1123. /* [in] */ DWORD extconn,
  1124. /* [in] */ DWORD reserved) = 0;
  1125. virtual DWORD STDMETHODCALLTYPE ReleaseConnection(
  1126. /* [in] */ DWORD extconn,
  1127. /* [in] */ DWORD reserved,
  1128. /* [in] */ BOOL fLastReleaseCloses) = 0;
  1129. };
  1130. #else /* C style interface */
  1131. typedef struct IExternalConnectionVtbl
  1132. {
  1133. BEGIN_INTERFACE
  1134. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1135. IExternalConnection * This,
  1136. /* [in] */ REFIID riid,
  1137. /* [iid_is][out] */ void **ppvObject);
  1138. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1139. IExternalConnection * This);
  1140. ULONG ( STDMETHODCALLTYPE *Release )(
  1141. IExternalConnection * This);
  1142. DWORD ( STDMETHODCALLTYPE *AddConnection )(
  1143. IExternalConnection * This,
  1144. /* [in] */ DWORD extconn,
  1145. /* [in] */ DWORD reserved);
  1146. DWORD ( STDMETHODCALLTYPE *ReleaseConnection )(
  1147. IExternalConnection * This,
  1148. /* [in] */ DWORD extconn,
  1149. /* [in] */ DWORD reserved,
  1150. /* [in] */ BOOL fLastReleaseCloses);
  1151. END_INTERFACE
  1152. } IExternalConnectionVtbl;
  1153. interface IExternalConnection
  1154. {
  1155. CONST_VTBL struct IExternalConnectionVtbl *lpVtbl;
  1156. };
  1157. #ifdef COBJMACROS
  1158. #define IExternalConnection_QueryInterface(This,riid,ppvObject) \
  1159. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1160. #define IExternalConnection_AddRef(This) \
  1161. (This)->lpVtbl -> AddRef(This)
  1162. #define IExternalConnection_Release(This) \
  1163. (This)->lpVtbl -> Release(This)
  1164. #define IExternalConnection_AddConnection(This,extconn,reserved) \
  1165. (This)->lpVtbl -> AddConnection(This,extconn,reserved)
  1166. #define IExternalConnection_ReleaseConnection(This,extconn,reserved,fLastReleaseCloses) \
  1167. (This)->lpVtbl -> ReleaseConnection(This,extconn,reserved,fLastReleaseCloses)
  1168. #endif /* COBJMACROS */
  1169. #endif /* C style interface */
  1170. DWORD STDMETHODCALLTYPE IExternalConnection_AddConnection_Proxy(
  1171. IExternalConnection * This,
  1172. /* [in] */ DWORD extconn,
  1173. /* [in] */ DWORD reserved);
  1174. void __RPC_STUB IExternalConnection_AddConnection_Stub(
  1175. IRpcStubBuffer *This,
  1176. IRpcChannelBuffer *_pRpcChannelBuffer,
  1177. PRPC_MESSAGE _pRpcMessage,
  1178. DWORD *_pdwStubPhase);
  1179. DWORD STDMETHODCALLTYPE IExternalConnection_ReleaseConnection_Proxy(
  1180. IExternalConnection * This,
  1181. /* [in] */ DWORD extconn,
  1182. /* [in] */ DWORD reserved,
  1183. /* [in] */ BOOL fLastReleaseCloses);
  1184. void __RPC_STUB IExternalConnection_ReleaseConnection_Stub(
  1185. IRpcStubBuffer *This,
  1186. IRpcChannelBuffer *_pRpcChannelBuffer,
  1187. PRPC_MESSAGE _pRpcMessage,
  1188. DWORD *_pdwStubPhase);
  1189. #endif /* __IExternalConnection_INTERFACE_DEFINED__ */
  1190. /* interface __MIDL_itf_objidl_0015 */
  1191. /* [local] */
  1192. typedef /* [unique] */ IMultiQI *LPMULTIQI;
  1193. typedef struct tagMULTI_QI
  1194. {
  1195. const IID *pIID;
  1196. IUnknown *pItf;
  1197. HRESULT hr;
  1198. } MULTI_QI;
  1199. extern RPC_IF_HANDLE __MIDL_itf_objidl_0015_v0_0_c_ifspec;
  1200. extern RPC_IF_HANDLE __MIDL_itf_objidl_0015_v0_0_s_ifspec;
  1201. #ifndef __IMultiQI_INTERFACE_DEFINED__
  1202. #define __IMultiQI_INTERFACE_DEFINED__
  1203. /* interface IMultiQI */
  1204. /* [async_uuid][uuid][local][object] */
  1205. EXTERN_C const IID IID_IMultiQI;
  1206. #if defined(__cplusplus) && !defined(CINTERFACE)
  1207. MIDL_INTERFACE("00000020-0000-0000-C000-000000000046")
  1208. IMultiQI : public IUnknown
  1209. {
  1210. public:
  1211. virtual HRESULT STDMETHODCALLTYPE QueryMultipleInterfaces(
  1212. /* [in] */ ULONG cMQIs,
  1213. /* [out][in] */ MULTI_QI *pMQIs) = 0;
  1214. };
  1215. #else /* C style interface */
  1216. typedef struct IMultiQIVtbl
  1217. {
  1218. BEGIN_INTERFACE
  1219. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1220. IMultiQI * This,
  1221. /* [in] */ REFIID riid,
  1222. /* [iid_is][out] */ void **ppvObject);
  1223. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1224. IMultiQI * This);
  1225. ULONG ( STDMETHODCALLTYPE *Release )(
  1226. IMultiQI * This);
  1227. HRESULT ( STDMETHODCALLTYPE *QueryMultipleInterfaces )(
  1228. IMultiQI * This,
  1229. /* [in] */ ULONG cMQIs,
  1230. /* [out][in] */ MULTI_QI *pMQIs);
  1231. END_INTERFACE
  1232. } IMultiQIVtbl;
  1233. interface IMultiQI
  1234. {
  1235. CONST_VTBL struct IMultiQIVtbl *lpVtbl;
  1236. };
  1237. #ifdef COBJMACROS
  1238. #define IMultiQI_QueryInterface(This,riid,ppvObject) \
  1239. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1240. #define IMultiQI_AddRef(This) \
  1241. (This)->lpVtbl -> AddRef(This)
  1242. #define IMultiQI_Release(This) \
  1243. (This)->lpVtbl -> Release(This)
  1244. #define IMultiQI_QueryMultipleInterfaces(This,cMQIs,pMQIs) \
  1245. (This)->lpVtbl -> QueryMultipleInterfaces(This,cMQIs,pMQIs)
  1246. #endif /* COBJMACROS */
  1247. #endif /* C style interface */
  1248. HRESULT STDMETHODCALLTYPE IMultiQI_QueryMultipleInterfaces_Proxy(
  1249. IMultiQI * This,
  1250. /* [in] */ ULONG cMQIs,
  1251. /* [out][in] */ MULTI_QI *pMQIs);
  1252. void __RPC_STUB IMultiQI_QueryMultipleInterfaces_Stub(
  1253. IRpcStubBuffer *This,
  1254. IRpcChannelBuffer *_pRpcChannelBuffer,
  1255. PRPC_MESSAGE _pRpcMessage,
  1256. DWORD *_pdwStubPhase);
  1257. #endif /* __IMultiQI_INTERFACE_DEFINED__ */
  1258. #ifndef __AsyncIMultiQI_INTERFACE_DEFINED__
  1259. #define __AsyncIMultiQI_INTERFACE_DEFINED__
  1260. /* interface AsyncIMultiQI */
  1261. /* [uuid][local][object] */
  1262. EXTERN_C const IID IID_AsyncIMultiQI;
  1263. #if defined(__cplusplus) && !defined(CINTERFACE)
  1264. MIDL_INTERFACE("000e0020-0000-0000-C000-000000000046")
  1265. AsyncIMultiQI : public IUnknown
  1266. {
  1267. public:
  1268. virtual HRESULT STDMETHODCALLTYPE Begin_QueryMultipleInterfaces(
  1269. /* [in] */ ULONG cMQIs,
  1270. /* [out][in] */ MULTI_QI *pMQIs) = 0;
  1271. virtual HRESULT STDMETHODCALLTYPE Finish_QueryMultipleInterfaces(
  1272. /* [out][in] */ MULTI_QI *pMQIs) = 0;
  1273. };
  1274. #else /* C style interface */
  1275. typedef struct AsyncIMultiQIVtbl
  1276. {
  1277. BEGIN_INTERFACE
  1278. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1279. AsyncIMultiQI * This,
  1280. /* [in] */ REFIID riid,
  1281. /* [iid_is][out] */ void **ppvObject);
  1282. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1283. AsyncIMultiQI * This);
  1284. ULONG ( STDMETHODCALLTYPE *Release )(
  1285. AsyncIMultiQI * This);
  1286. HRESULT ( STDMETHODCALLTYPE *Begin_QueryMultipleInterfaces )(
  1287. AsyncIMultiQI * This,
  1288. /* [in] */ ULONG cMQIs,
  1289. /* [out][in] */ MULTI_QI *pMQIs);
  1290. HRESULT ( STDMETHODCALLTYPE *Finish_QueryMultipleInterfaces )(
  1291. AsyncIMultiQI * This,
  1292. /* [out][in] */ MULTI_QI *pMQIs);
  1293. END_INTERFACE
  1294. } AsyncIMultiQIVtbl;
  1295. interface AsyncIMultiQI
  1296. {
  1297. CONST_VTBL struct AsyncIMultiQIVtbl *lpVtbl;
  1298. };
  1299. #ifdef COBJMACROS
  1300. #define AsyncIMultiQI_QueryInterface(This,riid,ppvObject) \
  1301. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1302. #define AsyncIMultiQI_AddRef(This) \
  1303. (This)->lpVtbl -> AddRef(This)
  1304. #define AsyncIMultiQI_Release(This) \
  1305. (This)->lpVtbl -> Release(This)
  1306. #define AsyncIMultiQI_Begin_QueryMultipleInterfaces(This,cMQIs,pMQIs) \
  1307. (This)->lpVtbl -> Begin_QueryMultipleInterfaces(This,cMQIs,pMQIs)
  1308. #define AsyncIMultiQI_Finish_QueryMultipleInterfaces(This,pMQIs) \
  1309. (This)->lpVtbl -> Finish_QueryMultipleInterfaces(This,pMQIs)
  1310. #endif /* COBJMACROS */
  1311. #endif /* C style interface */
  1312. HRESULT STDMETHODCALLTYPE AsyncIMultiQI_Begin_QueryMultipleInterfaces_Proxy(
  1313. AsyncIMultiQI * This,
  1314. /* [in] */ ULONG cMQIs,
  1315. /* [out][in] */ MULTI_QI *pMQIs);
  1316. void __RPC_STUB AsyncIMultiQI_Begin_QueryMultipleInterfaces_Stub(
  1317. IRpcStubBuffer *This,
  1318. IRpcChannelBuffer *_pRpcChannelBuffer,
  1319. PRPC_MESSAGE _pRpcMessage,
  1320. DWORD *_pdwStubPhase);
  1321. HRESULT STDMETHODCALLTYPE AsyncIMultiQI_Finish_QueryMultipleInterfaces_Proxy(
  1322. AsyncIMultiQI * This,
  1323. /* [out][in] */ MULTI_QI *pMQIs);
  1324. void __RPC_STUB AsyncIMultiQI_Finish_QueryMultipleInterfaces_Stub(
  1325. IRpcStubBuffer *This,
  1326. IRpcChannelBuffer *_pRpcChannelBuffer,
  1327. PRPC_MESSAGE _pRpcMessage,
  1328. DWORD *_pdwStubPhase);
  1329. #endif /* __AsyncIMultiQI_INTERFACE_DEFINED__ */
  1330. #ifndef __IInternalUnknown_INTERFACE_DEFINED__
  1331. #define __IInternalUnknown_INTERFACE_DEFINED__
  1332. /* interface IInternalUnknown */
  1333. /* [uuid][local][object] */
  1334. EXTERN_C const IID IID_IInternalUnknown;
  1335. #if defined(__cplusplus) && !defined(CINTERFACE)
  1336. MIDL_INTERFACE("00000021-0000-0000-C000-000000000046")
  1337. IInternalUnknown : public IUnknown
  1338. {
  1339. public:
  1340. virtual HRESULT STDMETHODCALLTYPE QueryInternalInterface(
  1341. /* [in] */ REFIID riid,
  1342. /* [out] */ void **ppv) = 0;
  1343. };
  1344. #else /* C style interface */
  1345. typedef struct IInternalUnknownVtbl
  1346. {
  1347. BEGIN_INTERFACE
  1348. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1349. IInternalUnknown * This,
  1350. /* [in] */ REFIID riid,
  1351. /* [iid_is][out] */ void **ppvObject);
  1352. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1353. IInternalUnknown * This);
  1354. ULONG ( STDMETHODCALLTYPE *Release )(
  1355. IInternalUnknown * This);
  1356. HRESULT ( STDMETHODCALLTYPE *QueryInternalInterface )(
  1357. IInternalUnknown * This,
  1358. /* [in] */ REFIID riid,
  1359. /* [out] */ void **ppv);
  1360. END_INTERFACE
  1361. } IInternalUnknownVtbl;
  1362. interface IInternalUnknown
  1363. {
  1364. CONST_VTBL struct IInternalUnknownVtbl *lpVtbl;
  1365. };
  1366. #ifdef COBJMACROS
  1367. #define IInternalUnknown_QueryInterface(This,riid,ppvObject) \
  1368. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1369. #define IInternalUnknown_AddRef(This) \
  1370. (This)->lpVtbl -> AddRef(This)
  1371. #define IInternalUnknown_Release(This) \
  1372. (This)->lpVtbl -> Release(This)
  1373. #define IInternalUnknown_QueryInternalInterface(This,riid,ppv) \
  1374. (This)->lpVtbl -> QueryInternalInterface(This,riid,ppv)
  1375. #endif /* COBJMACROS */
  1376. #endif /* C style interface */
  1377. HRESULT STDMETHODCALLTYPE IInternalUnknown_QueryInternalInterface_Proxy(
  1378. IInternalUnknown * This,
  1379. /* [in] */ REFIID riid,
  1380. /* [out] */ void **ppv);
  1381. void __RPC_STUB IInternalUnknown_QueryInternalInterface_Stub(
  1382. IRpcStubBuffer *This,
  1383. IRpcChannelBuffer *_pRpcChannelBuffer,
  1384. PRPC_MESSAGE _pRpcMessage,
  1385. DWORD *_pdwStubPhase);
  1386. #endif /* __IInternalUnknown_INTERFACE_DEFINED__ */
  1387. #ifndef __IEnumUnknown_INTERFACE_DEFINED__
  1388. #define __IEnumUnknown_INTERFACE_DEFINED__
  1389. /* interface IEnumUnknown */
  1390. /* [unique][uuid][object] */
  1391. typedef /* [unique] */ IEnumUnknown *LPENUMUNKNOWN;
  1392. EXTERN_C const IID IID_IEnumUnknown;
  1393. #if defined(__cplusplus) && !defined(CINTERFACE)
  1394. MIDL_INTERFACE("00000100-0000-0000-C000-000000000046")
  1395. IEnumUnknown : public IUnknown
  1396. {
  1397. public:
  1398. virtual /* [local] */ HRESULT STDMETHODCALLTYPE Next(
  1399. /* [in] */ ULONG celt,
  1400. /* [out] */ IUnknown **rgelt,
  1401. /* [out] */ ULONG *pceltFetched) = 0;
  1402. virtual HRESULT STDMETHODCALLTYPE Skip(
  1403. /* [in] */ ULONG celt) = 0;
  1404. virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  1405. virtual HRESULT STDMETHODCALLTYPE Clone(
  1406. /* [out] */ IEnumUnknown **ppenum) = 0;
  1407. };
  1408. #else /* C style interface */
  1409. typedef struct IEnumUnknownVtbl
  1410. {
  1411. BEGIN_INTERFACE
  1412. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1413. IEnumUnknown * This,
  1414. /* [in] */ REFIID riid,
  1415. /* [iid_is][out] */ void **ppvObject);
  1416. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1417. IEnumUnknown * This);
  1418. ULONG ( STDMETHODCALLTYPE *Release )(
  1419. IEnumUnknown * This);
  1420. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Next )(
  1421. IEnumUnknown * This,
  1422. /* [in] */ ULONG celt,
  1423. /* [out] */ IUnknown **rgelt,
  1424. /* [out] */ ULONG *pceltFetched);
  1425. HRESULT ( STDMETHODCALLTYPE *Skip )(
  1426. IEnumUnknown * This,
  1427. /* [in] */ ULONG celt);
  1428. HRESULT ( STDMETHODCALLTYPE *Reset )(
  1429. IEnumUnknown * This);
  1430. HRESULT ( STDMETHODCALLTYPE *Clone )(
  1431. IEnumUnknown * This,
  1432. /* [out] */ IEnumUnknown **ppenum);
  1433. END_INTERFACE
  1434. } IEnumUnknownVtbl;
  1435. interface IEnumUnknown
  1436. {
  1437. CONST_VTBL struct IEnumUnknownVtbl *lpVtbl;
  1438. };
  1439. #ifdef COBJMACROS
  1440. #define IEnumUnknown_QueryInterface(This,riid,ppvObject) \
  1441. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1442. #define IEnumUnknown_AddRef(This) \
  1443. (This)->lpVtbl -> AddRef(This)
  1444. #define IEnumUnknown_Release(This) \
  1445. (This)->lpVtbl -> Release(This)
  1446. #define IEnumUnknown_Next(This,celt,rgelt,pceltFetched) \
  1447. (This)->lpVtbl -> Next(This,celt,rgelt,pceltFetched)
  1448. #define IEnumUnknown_Skip(This,celt) \
  1449. (This)->lpVtbl -> Skip(This,celt)
  1450. #define IEnumUnknown_Reset(This) \
  1451. (This)->lpVtbl -> Reset(This)
  1452. #define IEnumUnknown_Clone(This,ppenum) \
  1453. (This)->lpVtbl -> Clone(This,ppenum)
  1454. #endif /* COBJMACROS */
  1455. #endif /* C style interface */
  1456. /* [call_as] */ HRESULT STDMETHODCALLTYPE IEnumUnknown_RemoteNext_Proxy(
  1457. IEnumUnknown * This,
  1458. /* [in] */ ULONG celt,
  1459. /* [length_is][size_is][out] */ IUnknown **rgelt,
  1460. /* [out] */ ULONG *pceltFetched);
  1461. void __RPC_STUB IEnumUnknown_RemoteNext_Stub(
  1462. IRpcStubBuffer *This,
  1463. IRpcChannelBuffer *_pRpcChannelBuffer,
  1464. PRPC_MESSAGE _pRpcMessage,
  1465. DWORD *_pdwStubPhase);
  1466. HRESULT STDMETHODCALLTYPE IEnumUnknown_Skip_Proxy(
  1467. IEnumUnknown * This,
  1468. /* [in] */ ULONG celt);
  1469. void __RPC_STUB IEnumUnknown_Skip_Stub(
  1470. IRpcStubBuffer *This,
  1471. IRpcChannelBuffer *_pRpcChannelBuffer,
  1472. PRPC_MESSAGE _pRpcMessage,
  1473. DWORD *_pdwStubPhase);
  1474. HRESULT STDMETHODCALLTYPE IEnumUnknown_Reset_Proxy(
  1475. IEnumUnknown * This);
  1476. void __RPC_STUB IEnumUnknown_Reset_Stub(
  1477. IRpcStubBuffer *This,
  1478. IRpcChannelBuffer *_pRpcChannelBuffer,
  1479. PRPC_MESSAGE _pRpcMessage,
  1480. DWORD *_pdwStubPhase);
  1481. HRESULT STDMETHODCALLTYPE IEnumUnknown_Clone_Proxy(
  1482. IEnumUnknown * This,
  1483. /* [out] */ IEnumUnknown **ppenum);
  1484. void __RPC_STUB IEnumUnknown_Clone_Stub(
  1485. IRpcStubBuffer *This,
  1486. IRpcChannelBuffer *_pRpcChannelBuffer,
  1487. PRPC_MESSAGE _pRpcMessage,
  1488. DWORD *_pdwStubPhase);
  1489. #endif /* __IEnumUnknown_INTERFACE_DEFINED__ */
  1490. #ifndef __IBindCtx_INTERFACE_DEFINED__
  1491. #define __IBindCtx_INTERFACE_DEFINED__
  1492. /* interface IBindCtx */
  1493. /* [unique][uuid][object] */
  1494. typedef /* [unique] */ IBindCtx *LPBC;
  1495. typedef /* [unique] */ IBindCtx *LPBINDCTX;
  1496. typedef struct tagBIND_OPTS
  1497. {
  1498. DWORD cbStruct;
  1499. DWORD grfFlags;
  1500. DWORD grfMode;
  1501. DWORD dwTickCountDeadline;
  1502. } BIND_OPTS;
  1503. typedef struct tagBIND_OPTS *LPBIND_OPTS;
  1504. #if defined(__cplusplus)
  1505. typedef struct tagBIND_OPTS2 : tagBIND_OPTS{
  1506. DWORD dwTrackFlags;
  1507. DWORD dwClassContext;
  1508. LCID locale;
  1509. COSERVERINFO * pServerInfo;
  1510. } BIND_OPTS2, * LPBIND_OPTS2;
  1511. #else
  1512. typedef struct tagBIND_OPTS2
  1513. {
  1514. DWORD cbStruct;
  1515. DWORD grfFlags;
  1516. DWORD grfMode;
  1517. DWORD dwTickCountDeadline;
  1518. DWORD dwTrackFlags;
  1519. DWORD dwClassContext;
  1520. LCID locale;
  1521. COSERVERINFO *pServerInfo;
  1522. } BIND_OPTS2;
  1523. typedef struct tagBIND_OPTS2 *LPBIND_OPTS2;
  1524. #endif
  1525. typedef
  1526. enum tagBIND_FLAGS
  1527. { BIND_MAYBOTHERUSER = 1,
  1528. BIND_JUSTTESTEXISTENCE = 2
  1529. } BIND_FLAGS;
  1530. EXTERN_C const IID IID_IBindCtx;
  1531. #if defined(__cplusplus) && !defined(CINTERFACE)
  1532. MIDL_INTERFACE("0000000e-0000-0000-C000-000000000046")
  1533. IBindCtx : public IUnknown
  1534. {
  1535. public:
  1536. virtual HRESULT STDMETHODCALLTYPE RegisterObjectBound(
  1537. /* [unique][in] */ IUnknown *punk) = 0;
  1538. virtual HRESULT STDMETHODCALLTYPE RevokeObjectBound(
  1539. /* [unique][in] */ IUnknown *punk) = 0;
  1540. virtual HRESULT STDMETHODCALLTYPE ReleaseBoundObjects( void) = 0;
  1541. virtual /* [local] */ HRESULT STDMETHODCALLTYPE SetBindOptions(
  1542. /* [in] */ BIND_OPTS *pbindopts) = 0;
  1543. virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetBindOptions(
  1544. /* [out][in] */ BIND_OPTS *pbindopts) = 0;
  1545. virtual HRESULT STDMETHODCALLTYPE GetRunningObjectTable(
  1546. /* [out] */ IRunningObjectTable **pprot) = 0;
  1547. virtual HRESULT STDMETHODCALLTYPE RegisterObjectParam(
  1548. /* [in] */ LPOLESTR pszKey,
  1549. /* [unique][in] */ IUnknown *punk) = 0;
  1550. virtual HRESULT STDMETHODCALLTYPE GetObjectParam(
  1551. /* [in] */ LPOLESTR pszKey,
  1552. /* [out] */ IUnknown **ppunk) = 0;
  1553. virtual HRESULT STDMETHODCALLTYPE EnumObjectParam(
  1554. /* [out] */ IEnumString **ppenum) = 0;
  1555. virtual HRESULT STDMETHODCALLTYPE RevokeObjectParam(
  1556. /* [in] */ LPOLESTR pszKey) = 0;
  1557. };
  1558. #else /* C style interface */
  1559. typedef struct IBindCtxVtbl
  1560. {
  1561. BEGIN_INTERFACE
  1562. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1563. IBindCtx * This,
  1564. /* [in] */ REFIID riid,
  1565. /* [iid_is][out] */ void **ppvObject);
  1566. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1567. IBindCtx * This);
  1568. ULONG ( STDMETHODCALLTYPE *Release )(
  1569. IBindCtx * This);
  1570. HRESULT ( STDMETHODCALLTYPE *RegisterObjectBound )(
  1571. IBindCtx * This,
  1572. /* [unique][in] */ IUnknown *punk);
  1573. HRESULT ( STDMETHODCALLTYPE *RevokeObjectBound )(
  1574. IBindCtx * This,
  1575. /* [unique][in] */ IUnknown *punk);
  1576. HRESULT ( STDMETHODCALLTYPE *ReleaseBoundObjects )(
  1577. IBindCtx * This);
  1578. /* [local] */ HRESULT ( STDMETHODCALLTYPE *SetBindOptions )(
  1579. IBindCtx * This,
  1580. /* [in] */ BIND_OPTS *pbindopts);
  1581. /* [local] */ HRESULT ( STDMETHODCALLTYPE *GetBindOptions )(
  1582. IBindCtx * This,
  1583. /* [out][in] */ BIND_OPTS *pbindopts);
  1584. HRESULT ( STDMETHODCALLTYPE *GetRunningObjectTable )(
  1585. IBindCtx * This,
  1586. /* [out] */ IRunningObjectTable **pprot);
  1587. HRESULT ( STDMETHODCALLTYPE *RegisterObjectParam )(
  1588. IBindCtx * This,
  1589. /* [in] */ LPOLESTR pszKey,
  1590. /* [unique][in] */ IUnknown *punk);
  1591. HRESULT ( STDMETHODCALLTYPE *GetObjectParam )(
  1592. IBindCtx * This,
  1593. /* [in] */ LPOLESTR pszKey,
  1594. /* [out] */ IUnknown **ppunk);
  1595. HRESULT ( STDMETHODCALLTYPE *EnumObjectParam )(
  1596. IBindCtx * This,
  1597. /* [out] */ IEnumString **ppenum);
  1598. HRESULT ( STDMETHODCALLTYPE *RevokeObjectParam )(
  1599. IBindCtx * This,
  1600. /* [in] */ LPOLESTR pszKey);
  1601. END_INTERFACE
  1602. } IBindCtxVtbl;
  1603. interface IBindCtx
  1604. {
  1605. CONST_VTBL struct IBindCtxVtbl *lpVtbl;
  1606. };
  1607. #ifdef COBJMACROS
  1608. #define IBindCtx_QueryInterface(This,riid,ppvObject) \
  1609. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1610. #define IBindCtx_AddRef(This) \
  1611. (This)->lpVtbl -> AddRef(This)
  1612. #define IBindCtx_Release(This) \
  1613. (This)->lpVtbl -> Release(This)
  1614. #define IBindCtx_RegisterObjectBound(This,punk) \
  1615. (This)->lpVtbl -> RegisterObjectBound(This,punk)
  1616. #define IBindCtx_RevokeObjectBound(This,punk) \
  1617. (This)->lpVtbl -> RevokeObjectBound(This,punk)
  1618. #define IBindCtx_ReleaseBoundObjects(This) \
  1619. (This)->lpVtbl -> ReleaseBoundObjects(This)
  1620. #define IBindCtx_SetBindOptions(This,pbindopts) \
  1621. (This)->lpVtbl -> SetBindOptions(This,pbindopts)
  1622. #define IBindCtx_GetBindOptions(This,pbindopts) \
  1623. (This)->lpVtbl -> GetBindOptions(This,pbindopts)
  1624. #define IBindCtx_GetRunningObjectTable(This,pprot) \
  1625. (This)->lpVtbl -> GetRunningObjectTable(This,pprot)
  1626. #define IBindCtx_RegisterObjectParam(This,pszKey,punk) \
  1627. (This)->lpVtbl -> RegisterObjectParam(This,pszKey,punk)
  1628. #define IBindCtx_GetObjectParam(This,pszKey,ppunk) \
  1629. (This)->lpVtbl -> GetObjectParam(This,pszKey,ppunk)
  1630. #define IBindCtx_EnumObjectParam(This,ppenum) \
  1631. (This)->lpVtbl -> EnumObjectParam(This,ppenum)
  1632. #define IBindCtx_RevokeObjectParam(This,pszKey) \
  1633. (This)->lpVtbl -> RevokeObjectParam(This,pszKey)
  1634. #endif /* COBJMACROS */
  1635. #endif /* C style interface */
  1636. HRESULT STDMETHODCALLTYPE IBindCtx_RegisterObjectBound_Proxy(
  1637. IBindCtx * This,
  1638. /* [unique][in] */ IUnknown *punk);
  1639. void __RPC_STUB IBindCtx_RegisterObjectBound_Stub(
  1640. IRpcStubBuffer *This,
  1641. IRpcChannelBuffer *_pRpcChannelBuffer,
  1642. PRPC_MESSAGE _pRpcMessage,
  1643. DWORD *_pdwStubPhase);
  1644. HRESULT STDMETHODCALLTYPE IBindCtx_RevokeObjectBound_Proxy(
  1645. IBindCtx * This,
  1646. /* [unique][in] */ IUnknown *punk);
  1647. void __RPC_STUB IBindCtx_RevokeObjectBound_Stub(
  1648. IRpcStubBuffer *This,
  1649. IRpcChannelBuffer *_pRpcChannelBuffer,
  1650. PRPC_MESSAGE _pRpcMessage,
  1651. DWORD *_pdwStubPhase);
  1652. HRESULT STDMETHODCALLTYPE IBindCtx_ReleaseBoundObjects_Proxy(
  1653. IBindCtx * This);
  1654. void __RPC_STUB IBindCtx_ReleaseBoundObjects_Stub(
  1655. IRpcStubBuffer *This,
  1656. IRpcChannelBuffer *_pRpcChannelBuffer,
  1657. PRPC_MESSAGE _pRpcMessage,
  1658. DWORD *_pdwStubPhase);
  1659. /* [call_as] */ HRESULT STDMETHODCALLTYPE IBindCtx_RemoteSetBindOptions_Proxy(
  1660. IBindCtx * This,
  1661. /* [in] */ BIND_OPTS2 *pbindopts);
  1662. void __RPC_STUB IBindCtx_RemoteSetBindOptions_Stub(
  1663. IRpcStubBuffer *This,
  1664. IRpcChannelBuffer *_pRpcChannelBuffer,
  1665. PRPC_MESSAGE _pRpcMessage,
  1666. DWORD *_pdwStubPhase);
  1667. /* [call_as] */ HRESULT STDMETHODCALLTYPE IBindCtx_RemoteGetBindOptions_Proxy(
  1668. IBindCtx * This,
  1669. /* [out][in] */ BIND_OPTS2 *pbindopts);
  1670. void __RPC_STUB IBindCtx_RemoteGetBindOptions_Stub(
  1671. IRpcStubBuffer *This,
  1672. IRpcChannelBuffer *_pRpcChannelBuffer,
  1673. PRPC_MESSAGE _pRpcMessage,
  1674. DWORD *_pdwStubPhase);
  1675. HRESULT STDMETHODCALLTYPE IBindCtx_GetRunningObjectTable_Proxy(
  1676. IBindCtx * This,
  1677. /* [out] */ IRunningObjectTable **pprot);
  1678. void __RPC_STUB IBindCtx_GetRunningObjectTable_Stub(
  1679. IRpcStubBuffer *This,
  1680. IRpcChannelBuffer *_pRpcChannelBuffer,
  1681. PRPC_MESSAGE _pRpcMessage,
  1682. DWORD *_pdwStubPhase);
  1683. HRESULT STDMETHODCALLTYPE IBindCtx_RegisterObjectParam_Proxy(
  1684. IBindCtx * This,
  1685. /* [in] */ LPOLESTR pszKey,
  1686. /* [unique][in] */ IUnknown *punk);
  1687. void __RPC_STUB IBindCtx_RegisterObjectParam_Stub(
  1688. IRpcStubBuffer *This,
  1689. IRpcChannelBuffer *_pRpcChannelBuffer,
  1690. PRPC_MESSAGE _pRpcMessage,
  1691. DWORD *_pdwStubPhase);
  1692. HRESULT STDMETHODCALLTYPE IBindCtx_GetObjectParam_Proxy(
  1693. IBindCtx * This,
  1694. /* [in] */ LPOLESTR pszKey,
  1695. /* [out] */ IUnknown **ppunk);
  1696. void __RPC_STUB IBindCtx_GetObjectParam_Stub(
  1697. IRpcStubBuffer *This,
  1698. IRpcChannelBuffer *_pRpcChannelBuffer,
  1699. PRPC_MESSAGE _pRpcMessage,
  1700. DWORD *_pdwStubPhase);
  1701. HRESULT STDMETHODCALLTYPE IBindCtx_EnumObjectParam_Proxy(
  1702. IBindCtx * This,
  1703. /* [out] */ IEnumString **ppenum);
  1704. void __RPC_STUB IBindCtx_EnumObjectParam_Stub(
  1705. IRpcStubBuffer *This,
  1706. IRpcChannelBuffer *_pRpcChannelBuffer,
  1707. PRPC_MESSAGE _pRpcMessage,
  1708. DWORD *_pdwStubPhase);
  1709. HRESULT STDMETHODCALLTYPE IBindCtx_RevokeObjectParam_Proxy(
  1710. IBindCtx * This,
  1711. /* [in] */ LPOLESTR pszKey);
  1712. void __RPC_STUB IBindCtx_RevokeObjectParam_Stub(
  1713. IRpcStubBuffer *This,
  1714. IRpcChannelBuffer *_pRpcChannelBuffer,
  1715. PRPC_MESSAGE _pRpcMessage,
  1716. DWORD *_pdwStubPhase);
  1717. #endif /* __IBindCtx_INTERFACE_DEFINED__ */
  1718. #ifndef __IEnumMoniker_INTERFACE_DEFINED__
  1719. #define __IEnumMoniker_INTERFACE_DEFINED__
  1720. /* interface IEnumMoniker */
  1721. /* [unique][uuid][object] */
  1722. typedef /* [unique] */ IEnumMoniker *LPENUMMONIKER;
  1723. EXTERN_C const IID IID_IEnumMoniker;
  1724. #if defined(__cplusplus) && !defined(CINTERFACE)
  1725. MIDL_INTERFACE("00000102-0000-0000-C000-000000000046")
  1726. IEnumMoniker : public IUnknown
  1727. {
  1728. public:
  1729. virtual /* [local] */ HRESULT STDMETHODCALLTYPE Next(
  1730. /* [in] */ ULONG celt,
  1731. /* [length_is][size_is][out] */ IMoniker **rgelt,
  1732. /* [out] */ ULONG *pceltFetched) = 0;
  1733. virtual HRESULT STDMETHODCALLTYPE Skip(
  1734. /* [in] */ ULONG celt) = 0;
  1735. virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  1736. virtual HRESULT STDMETHODCALLTYPE Clone(
  1737. /* [out] */ IEnumMoniker **ppenum) = 0;
  1738. };
  1739. #else /* C style interface */
  1740. typedef struct IEnumMonikerVtbl
  1741. {
  1742. BEGIN_INTERFACE
  1743. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1744. IEnumMoniker * This,
  1745. /* [in] */ REFIID riid,
  1746. /* [iid_is][out] */ void **ppvObject);
  1747. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1748. IEnumMoniker * This);
  1749. ULONG ( STDMETHODCALLTYPE *Release )(
  1750. IEnumMoniker * This);
  1751. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Next )(
  1752. IEnumMoniker * This,
  1753. /* [in] */ ULONG celt,
  1754. /* [length_is][size_is][out] */ IMoniker **rgelt,
  1755. /* [out] */ ULONG *pceltFetched);
  1756. HRESULT ( STDMETHODCALLTYPE *Skip )(
  1757. IEnumMoniker * This,
  1758. /* [in] */ ULONG celt);
  1759. HRESULT ( STDMETHODCALLTYPE *Reset )(
  1760. IEnumMoniker * This);
  1761. HRESULT ( STDMETHODCALLTYPE *Clone )(
  1762. IEnumMoniker * This,
  1763. /* [out] */ IEnumMoniker **ppenum);
  1764. END_INTERFACE
  1765. } IEnumMonikerVtbl;
  1766. interface IEnumMoniker
  1767. {
  1768. CONST_VTBL struct IEnumMonikerVtbl *lpVtbl;
  1769. };
  1770. #ifdef COBJMACROS
  1771. #define IEnumMoniker_QueryInterface(This,riid,ppvObject) \
  1772. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1773. #define IEnumMoniker_AddRef(This) \
  1774. (This)->lpVtbl -> AddRef(This)
  1775. #define IEnumMoniker_Release(This) \
  1776. (This)->lpVtbl -> Release(This)
  1777. #define IEnumMoniker_Next(This,celt,rgelt,pceltFetched) \
  1778. (This)->lpVtbl -> Next(This,celt,rgelt,pceltFetched)
  1779. #define IEnumMoniker_Skip(This,celt) \
  1780. (This)->lpVtbl -> Skip(This,celt)
  1781. #define IEnumMoniker_Reset(This) \
  1782. (This)->lpVtbl -> Reset(This)
  1783. #define IEnumMoniker_Clone(This,ppenum) \
  1784. (This)->lpVtbl -> Clone(This,ppenum)
  1785. #endif /* COBJMACROS */
  1786. #endif /* C style interface */
  1787. /* [call_as] */ HRESULT STDMETHODCALLTYPE IEnumMoniker_RemoteNext_Proxy(
  1788. IEnumMoniker * This,
  1789. /* [in] */ ULONG celt,
  1790. /* [length_is][size_is][out] */ IMoniker **rgelt,
  1791. /* [out] */ ULONG *pceltFetched);
  1792. void __RPC_STUB IEnumMoniker_RemoteNext_Stub(
  1793. IRpcStubBuffer *This,
  1794. IRpcChannelBuffer *_pRpcChannelBuffer,
  1795. PRPC_MESSAGE _pRpcMessage,
  1796. DWORD *_pdwStubPhase);
  1797. HRESULT STDMETHODCALLTYPE IEnumMoniker_Skip_Proxy(
  1798. IEnumMoniker * This,
  1799. /* [in] */ ULONG celt);
  1800. void __RPC_STUB IEnumMoniker_Skip_Stub(
  1801. IRpcStubBuffer *This,
  1802. IRpcChannelBuffer *_pRpcChannelBuffer,
  1803. PRPC_MESSAGE _pRpcMessage,
  1804. DWORD *_pdwStubPhase);
  1805. HRESULT STDMETHODCALLTYPE IEnumMoniker_Reset_Proxy(
  1806. IEnumMoniker * This);
  1807. void __RPC_STUB IEnumMoniker_Reset_Stub(
  1808. IRpcStubBuffer *This,
  1809. IRpcChannelBuffer *_pRpcChannelBuffer,
  1810. PRPC_MESSAGE _pRpcMessage,
  1811. DWORD *_pdwStubPhase);
  1812. HRESULT STDMETHODCALLTYPE IEnumMoniker_Clone_Proxy(
  1813. IEnumMoniker * This,
  1814. /* [out] */ IEnumMoniker **ppenum);
  1815. void __RPC_STUB IEnumMoniker_Clone_Stub(
  1816. IRpcStubBuffer *This,
  1817. IRpcChannelBuffer *_pRpcChannelBuffer,
  1818. PRPC_MESSAGE _pRpcMessage,
  1819. DWORD *_pdwStubPhase);
  1820. #endif /* __IEnumMoniker_INTERFACE_DEFINED__ */
  1821. #ifndef __IRunnableObject_INTERFACE_DEFINED__
  1822. #define __IRunnableObject_INTERFACE_DEFINED__
  1823. /* interface IRunnableObject */
  1824. /* [uuid][object] */
  1825. typedef /* [unique] */ IRunnableObject *LPRUNNABLEOBJECT;
  1826. EXTERN_C const IID IID_IRunnableObject;
  1827. #if defined(__cplusplus) && !defined(CINTERFACE)
  1828. MIDL_INTERFACE("00000126-0000-0000-C000-000000000046")
  1829. IRunnableObject : public IUnknown
  1830. {
  1831. public:
  1832. virtual HRESULT STDMETHODCALLTYPE GetRunningClass(
  1833. /* [out] */ LPCLSID lpClsid) = 0;
  1834. virtual HRESULT STDMETHODCALLTYPE Run(
  1835. /* [in] */ LPBINDCTX pbc) = 0;
  1836. virtual /* [local] */ BOOL STDMETHODCALLTYPE IsRunning( void) = 0;
  1837. virtual HRESULT STDMETHODCALLTYPE LockRunning(
  1838. /* [in] */ BOOL fLock,
  1839. /* [in] */ BOOL fLastUnlockCloses) = 0;
  1840. virtual HRESULT STDMETHODCALLTYPE SetContainedObject(
  1841. /* [in] */ BOOL fContained) = 0;
  1842. };
  1843. #else /* C style interface */
  1844. typedef struct IRunnableObjectVtbl
  1845. {
  1846. BEGIN_INTERFACE
  1847. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1848. IRunnableObject * This,
  1849. /* [in] */ REFIID riid,
  1850. /* [iid_is][out] */ void **ppvObject);
  1851. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1852. IRunnableObject * This);
  1853. ULONG ( STDMETHODCALLTYPE *Release )(
  1854. IRunnableObject * This);
  1855. HRESULT ( STDMETHODCALLTYPE *GetRunningClass )(
  1856. IRunnableObject * This,
  1857. /* [out] */ LPCLSID lpClsid);
  1858. HRESULT ( STDMETHODCALLTYPE *Run )(
  1859. IRunnableObject * This,
  1860. /* [in] */ LPBINDCTX pbc);
  1861. /* [local] */ BOOL ( STDMETHODCALLTYPE *IsRunning )(
  1862. IRunnableObject * This);
  1863. HRESULT ( STDMETHODCALLTYPE *LockRunning )(
  1864. IRunnableObject * This,
  1865. /* [in] */ BOOL fLock,
  1866. /* [in] */ BOOL fLastUnlockCloses);
  1867. HRESULT ( STDMETHODCALLTYPE *SetContainedObject )(
  1868. IRunnableObject * This,
  1869. /* [in] */ BOOL fContained);
  1870. END_INTERFACE
  1871. } IRunnableObjectVtbl;
  1872. interface IRunnableObject
  1873. {
  1874. CONST_VTBL struct IRunnableObjectVtbl *lpVtbl;
  1875. };
  1876. #ifdef COBJMACROS
  1877. #define IRunnableObject_QueryInterface(This,riid,ppvObject) \
  1878. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1879. #define IRunnableObject_AddRef(This) \
  1880. (This)->lpVtbl -> AddRef(This)
  1881. #define IRunnableObject_Release(This) \
  1882. (This)->lpVtbl -> Release(This)
  1883. #define IRunnableObject_GetRunningClass(This,lpClsid) \
  1884. (This)->lpVtbl -> GetRunningClass(This,lpClsid)
  1885. #define IRunnableObject_Run(This,pbc) \
  1886. (This)->lpVtbl -> Run(This,pbc)
  1887. #define IRunnableObject_IsRunning(This) \
  1888. (This)->lpVtbl -> IsRunning(This)
  1889. #define IRunnableObject_LockRunning(This,fLock,fLastUnlockCloses) \
  1890. (This)->lpVtbl -> LockRunning(This,fLock,fLastUnlockCloses)
  1891. #define IRunnableObject_SetContainedObject(This,fContained) \
  1892. (This)->lpVtbl -> SetContainedObject(This,fContained)
  1893. #endif /* COBJMACROS */
  1894. #endif /* C style interface */
  1895. HRESULT STDMETHODCALLTYPE IRunnableObject_GetRunningClass_Proxy(
  1896. IRunnableObject * This,
  1897. /* [out] */ LPCLSID lpClsid);
  1898. void __RPC_STUB IRunnableObject_GetRunningClass_Stub(
  1899. IRpcStubBuffer *This,
  1900. IRpcChannelBuffer *_pRpcChannelBuffer,
  1901. PRPC_MESSAGE _pRpcMessage,
  1902. DWORD *_pdwStubPhase);
  1903. HRESULT STDMETHODCALLTYPE IRunnableObject_Run_Proxy(
  1904. IRunnableObject * This,
  1905. /* [in] */ LPBINDCTX pbc);
  1906. void __RPC_STUB IRunnableObject_Run_Stub(
  1907. IRpcStubBuffer *This,
  1908. IRpcChannelBuffer *_pRpcChannelBuffer,
  1909. PRPC_MESSAGE _pRpcMessage,
  1910. DWORD *_pdwStubPhase);
  1911. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRunnableObject_RemoteIsRunning_Proxy(
  1912. IRunnableObject * This);
  1913. void __RPC_STUB IRunnableObject_RemoteIsRunning_Stub(
  1914. IRpcStubBuffer *This,
  1915. IRpcChannelBuffer *_pRpcChannelBuffer,
  1916. PRPC_MESSAGE _pRpcMessage,
  1917. DWORD *_pdwStubPhase);
  1918. HRESULT STDMETHODCALLTYPE IRunnableObject_LockRunning_Proxy(
  1919. IRunnableObject * This,
  1920. /* [in] */ BOOL fLock,
  1921. /* [in] */ BOOL fLastUnlockCloses);
  1922. void __RPC_STUB IRunnableObject_LockRunning_Stub(
  1923. IRpcStubBuffer *This,
  1924. IRpcChannelBuffer *_pRpcChannelBuffer,
  1925. PRPC_MESSAGE _pRpcMessage,
  1926. DWORD *_pdwStubPhase);
  1927. HRESULT STDMETHODCALLTYPE IRunnableObject_SetContainedObject_Proxy(
  1928. IRunnableObject * This,
  1929. /* [in] */ BOOL fContained);
  1930. void __RPC_STUB IRunnableObject_SetContainedObject_Stub(
  1931. IRpcStubBuffer *This,
  1932. IRpcChannelBuffer *_pRpcChannelBuffer,
  1933. PRPC_MESSAGE _pRpcMessage,
  1934. DWORD *_pdwStubPhase);
  1935. #endif /* __IRunnableObject_INTERFACE_DEFINED__ */
  1936. #ifndef __IRunningObjectTable_INTERFACE_DEFINED__
  1937. #define __IRunningObjectTable_INTERFACE_DEFINED__
  1938. /* interface IRunningObjectTable */
  1939. /* [uuid][object] */
  1940. typedef /* [unique] */ IRunningObjectTable *LPRUNNINGOBJECTTABLE;
  1941. EXTERN_C const IID IID_IRunningObjectTable;
  1942. #if defined(__cplusplus) && !defined(CINTERFACE)
  1943. MIDL_INTERFACE("00000010-0000-0000-C000-000000000046")
  1944. IRunningObjectTable : public IUnknown
  1945. {
  1946. public:
  1947. virtual HRESULT STDMETHODCALLTYPE Register(
  1948. /* [in] */ DWORD grfFlags,
  1949. /* [unique][in] */ IUnknown *punkObject,
  1950. /* [unique][in] */ IMoniker *pmkObjectName,
  1951. /* [out] */ DWORD *pdwRegister) = 0;
  1952. virtual HRESULT STDMETHODCALLTYPE Revoke(
  1953. /* [in] */ DWORD dwRegister) = 0;
  1954. virtual HRESULT STDMETHODCALLTYPE IsRunning(
  1955. /* [unique][in] */ IMoniker *pmkObjectName) = 0;
  1956. virtual HRESULT STDMETHODCALLTYPE GetObject(
  1957. /* [unique][in] */ IMoniker *pmkObjectName,
  1958. /* [out] */ IUnknown **ppunkObject) = 0;
  1959. virtual HRESULT STDMETHODCALLTYPE NoteChangeTime(
  1960. /* [in] */ DWORD dwRegister,
  1961. /* [in] */ FILETIME *pfiletime) = 0;
  1962. virtual HRESULT STDMETHODCALLTYPE GetTimeOfLastChange(
  1963. /* [unique][in] */ IMoniker *pmkObjectName,
  1964. /* [out] */ FILETIME *pfiletime) = 0;
  1965. virtual HRESULT STDMETHODCALLTYPE EnumRunning(
  1966. /* [out] */ IEnumMoniker **ppenumMoniker) = 0;
  1967. };
  1968. #else /* C style interface */
  1969. typedef struct IRunningObjectTableVtbl
  1970. {
  1971. BEGIN_INTERFACE
  1972. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1973. IRunningObjectTable * This,
  1974. /* [in] */ REFIID riid,
  1975. /* [iid_is][out] */ void **ppvObject);
  1976. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1977. IRunningObjectTable * This);
  1978. ULONG ( STDMETHODCALLTYPE *Release )(
  1979. IRunningObjectTable * This);
  1980. HRESULT ( STDMETHODCALLTYPE *Register )(
  1981. IRunningObjectTable * This,
  1982. /* [in] */ DWORD grfFlags,
  1983. /* [unique][in] */ IUnknown *punkObject,
  1984. /* [unique][in] */ IMoniker *pmkObjectName,
  1985. /* [out] */ DWORD *pdwRegister);
  1986. HRESULT ( STDMETHODCALLTYPE *Revoke )(
  1987. IRunningObjectTable * This,
  1988. /* [in] */ DWORD dwRegister);
  1989. HRESULT ( STDMETHODCALLTYPE *IsRunning )(
  1990. IRunningObjectTable * This,
  1991. /* [unique][in] */ IMoniker *pmkObjectName);
  1992. HRESULT ( STDMETHODCALLTYPE *GetObject )(
  1993. IRunningObjectTable * This,
  1994. /* [unique][in] */ IMoniker *pmkObjectName,
  1995. /* [out] */ IUnknown **ppunkObject);
  1996. HRESULT ( STDMETHODCALLTYPE *NoteChangeTime )(
  1997. IRunningObjectTable * This,
  1998. /* [in] */ DWORD dwRegister,
  1999. /* [in] */ FILETIME *pfiletime);
  2000. HRESULT ( STDMETHODCALLTYPE *GetTimeOfLastChange )(
  2001. IRunningObjectTable * This,
  2002. /* [unique][in] */ IMoniker *pmkObjectName,
  2003. /* [out] */ FILETIME *pfiletime);
  2004. HRESULT ( STDMETHODCALLTYPE *EnumRunning )(
  2005. IRunningObjectTable * This,
  2006. /* [out] */ IEnumMoniker **ppenumMoniker);
  2007. END_INTERFACE
  2008. } IRunningObjectTableVtbl;
  2009. interface IRunningObjectTable
  2010. {
  2011. CONST_VTBL struct IRunningObjectTableVtbl *lpVtbl;
  2012. };
  2013. #ifdef COBJMACROS
  2014. #define IRunningObjectTable_QueryInterface(This,riid,ppvObject) \
  2015. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2016. #define IRunningObjectTable_AddRef(This) \
  2017. (This)->lpVtbl -> AddRef(This)
  2018. #define IRunningObjectTable_Release(This) \
  2019. (This)->lpVtbl -> Release(This)
  2020. #define IRunningObjectTable_Register(This,grfFlags,punkObject,pmkObjectName,pdwRegister) \
  2021. (This)->lpVtbl -> Register(This,grfFlags,punkObject,pmkObjectName,pdwRegister)
  2022. #define IRunningObjectTable_Revoke(This,dwRegister) \
  2023. (This)->lpVtbl -> Revoke(This,dwRegister)
  2024. #define IRunningObjectTable_IsRunning(This,pmkObjectName) \
  2025. (This)->lpVtbl -> IsRunning(This,pmkObjectName)
  2026. #define IRunningObjectTable_GetObject(This,pmkObjectName,ppunkObject) \
  2027. (This)->lpVtbl -> GetObject(This,pmkObjectName,ppunkObject)
  2028. #define IRunningObjectTable_NoteChangeTime(This,dwRegister,pfiletime) \
  2029. (This)->lpVtbl -> NoteChangeTime(This,dwRegister,pfiletime)
  2030. #define IRunningObjectTable_GetTimeOfLastChange(This,pmkObjectName,pfiletime) \
  2031. (This)->lpVtbl -> GetTimeOfLastChange(This,pmkObjectName,pfiletime)
  2032. #define IRunningObjectTable_EnumRunning(This,ppenumMoniker) \
  2033. (This)->lpVtbl -> EnumRunning(This,ppenumMoniker)
  2034. #endif /* COBJMACROS */
  2035. #endif /* C style interface */
  2036. HRESULT STDMETHODCALLTYPE IRunningObjectTable_Register_Proxy(
  2037. IRunningObjectTable * This,
  2038. /* [in] */ DWORD grfFlags,
  2039. /* [unique][in] */ IUnknown *punkObject,
  2040. /* [unique][in] */ IMoniker *pmkObjectName,
  2041. /* [out] */ DWORD *pdwRegister);
  2042. void __RPC_STUB IRunningObjectTable_Register_Stub(
  2043. IRpcStubBuffer *This,
  2044. IRpcChannelBuffer *_pRpcChannelBuffer,
  2045. PRPC_MESSAGE _pRpcMessage,
  2046. DWORD *_pdwStubPhase);
  2047. HRESULT STDMETHODCALLTYPE IRunningObjectTable_Revoke_Proxy(
  2048. IRunningObjectTable * This,
  2049. /* [in] */ DWORD dwRegister);
  2050. void __RPC_STUB IRunningObjectTable_Revoke_Stub(
  2051. IRpcStubBuffer *This,
  2052. IRpcChannelBuffer *_pRpcChannelBuffer,
  2053. PRPC_MESSAGE _pRpcMessage,
  2054. DWORD *_pdwStubPhase);
  2055. HRESULT STDMETHODCALLTYPE IRunningObjectTable_IsRunning_Proxy(
  2056. IRunningObjectTable * This,
  2057. /* [unique][in] */ IMoniker *pmkObjectName);
  2058. void __RPC_STUB IRunningObjectTable_IsRunning_Stub(
  2059. IRpcStubBuffer *This,
  2060. IRpcChannelBuffer *_pRpcChannelBuffer,
  2061. PRPC_MESSAGE _pRpcMessage,
  2062. DWORD *_pdwStubPhase);
  2063. HRESULT STDMETHODCALLTYPE IRunningObjectTable_GetObject_Proxy(
  2064. IRunningObjectTable * This,
  2065. /* [unique][in] */ IMoniker *pmkObjectName,
  2066. /* [out] */ IUnknown **ppunkObject);
  2067. void __RPC_STUB IRunningObjectTable_GetObject_Stub(
  2068. IRpcStubBuffer *This,
  2069. IRpcChannelBuffer *_pRpcChannelBuffer,
  2070. PRPC_MESSAGE _pRpcMessage,
  2071. DWORD *_pdwStubPhase);
  2072. HRESULT STDMETHODCALLTYPE IRunningObjectTable_NoteChangeTime_Proxy(
  2073. IRunningObjectTable * This,
  2074. /* [in] */ DWORD dwRegister,
  2075. /* [in] */ FILETIME *pfiletime);
  2076. void __RPC_STUB IRunningObjectTable_NoteChangeTime_Stub(
  2077. IRpcStubBuffer *This,
  2078. IRpcChannelBuffer *_pRpcChannelBuffer,
  2079. PRPC_MESSAGE _pRpcMessage,
  2080. DWORD *_pdwStubPhase);
  2081. HRESULT STDMETHODCALLTYPE IRunningObjectTable_GetTimeOfLastChange_Proxy(
  2082. IRunningObjectTable * This,
  2083. /* [unique][in] */ IMoniker *pmkObjectName,
  2084. /* [out] */ FILETIME *pfiletime);
  2085. void __RPC_STUB IRunningObjectTable_GetTimeOfLastChange_Stub(
  2086. IRpcStubBuffer *This,
  2087. IRpcChannelBuffer *_pRpcChannelBuffer,
  2088. PRPC_MESSAGE _pRpcMessage,
  2089. DWORD *_pdwStubPhase);
  2090. HRESULT STDMETHODCALLTYPE IRunningObjectTable_EnumRunning_Proxy(
  2091. IRunningObjectTable * This,
  2092. /* [out] */ IEnumMoniker **ppenumMoniker);
  2093. void __RPC_STUB IRunningObjectTable_EnumRunning_Stub(
  2094. IRpcStubBuffer *This,
  2095. IRpcChannelBuffer *_pRpcChannelBuffer,
  2096. PRPC_MESSAGE _pRpcMessage,
  2097. DWORD *_pdwStubPhase);
  2098. #endif /* __IRunningObjectTable_INTERFACE_DEFINED__ */
  2099. #ifndef __IPersist_INTERFACE_DEFINED__
  2100. #define __IPersist_INTERFACE_DEFINED__
  2101. /* interface IPersist */
  2102. /* [uuid][object] */
  2103. typedef /* [unique] */ IPersist *LPPERSIST;
  2104. EXTERN_C const IID IID_IPersist;
  2105. #if defined(__cplusplus) && !defined(CINTERFACE)
  2106. MIDL_INTERFACE("0000010c-0000-0000-C000-000000000046")
  2107. IPersist : public IUnknown
  2108. {
  2109. public:
  2110. virtual HRESULT STDMETHODCALLTYPE GetClassID(
  2111. /* [out] */ CLSID *pClassID) = 0;
  2112. };
  2113. #else /* C style interface */
  2114. typedef struct IPersistVtbl
  2115. {
  2116. BEGIN_INTERFACE
  2117. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  2118. IPersist * This,
  2119. /* [in] */ REFIID riid,
  2120. /* [iid_is][out] */ void **ppvObject);
  2121. ULONG ( STDMETHODCALLTYPE *AddRef )(
  2122. IPersist * This);
  2123. ULONG ( STDMETHODCALLTYPE *Release )(
  2124. IPersist * This);
  2125. HRESULT ( STDMETHODCALLTYPE *GetClassID )(
  2126. IPersist * This,
  2127. /* [out] */ CLSID *pClassID);
  2128. END_INTERFACE
  2129. } IPersistVtbl;
  2130. interface IPersist
  2131. {
  2132. CONST_VTBL struct IPersistVtbl *lpVtbl;
  2133. };
  2134. #ifdef COBJMACROS
  2135. #define IPersist_QueryInterface(This,riid,ppvObject) \
  2136. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2137. #define IPersist_AddRef(This) \
  2138. (This)->lpVtbl -> AddRef(This)
  2139. #define IPersist_Release(This) \
  2140. (This)->lpVtbl -> Release(This)
  2141. #define IPersist_GetClassID(This,pClassID) \
  2142. (This)->lpVtbl -> GetClassID(This,pClassID)
  2143. #endif /* COBJMACROS */
  2144. #endif /* C style interface */
  2145. HRESULT STDMETHODCALLTYPE IPersist_GetClassID_Proxy(
  2146. IPersist * This,
  2147. /* [out] */ CLSID *pClassID);
  2148. void __RPC_STUB IPersist_GetClassID_Stub(
  2149. IRpcStubBuffer *This,
  2150. IRpcChannelBuffer *_pRpcChannelBuffer,
  2151. PRPC_MESSAGE _pRpcMessage,
  2152. DWORD *_pdwStubPhase);
  2153. #endif /* __IPersist_INTERFACE_DEFINED__ */
  2154. #ifndef __IPersistStream_INTERFACE_DEFINED__
  2155. #define __IPersistStream_INTERFACE_DEFINED__
  2156. /* interface IPersistStream */
  2157. /* [unique][uuid][object] */
  2158. typedef /* [unique] */ IPersistStream *LPPERSISTSTREAM;
  2159. EXTERN_C const IID IID_IPersistStream;
  2160. #if defined(__cplusplus) && !defined(CINTERFACE)
  2161. MIDL_INTERFACE("00000109-0000-0000-C000-000000000046")
  2162. IPersistStream : public IPersist
  2163. {
  2164. public:
  2165. virtual HRESULT STDMETHODCALLTYPE IsDirty( void) = 0;
  2166. virtual HRESULT STDMETHODCALLTYPE Load(
  2167. /* [unique][in] */ IStream *pStm) = 0;
  2168. virtual HRESULT STDMETHODCALLTYPE Save(
  2169. /* [unique][in] */ IStream *pStm,
  2170. /* [in] */ BOOL fClearDirty) = 0;
  2171. virtual HRESULT STDMETHODCALLTYPE GetSizeMax(
  2172. /* [out] */ ULARGE_INTEGER *pcbSize) = 0;
  2173. };
  2174. #else /* C style interface */
  2175. typedef struct IPersistStreamVtbl
  2176. {
  2177. BEGIN_INTERFACE
  2178. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  2179. IPersistStream * This,
  2180. /* [in] */ REFIID riid,
  2181. /* [iid_is][out] */ void **ppvObject);
  2182. ULONG ( STDMETHODCALLTYPE *AddRef )(
  2183. IPersistStream * This);
  2184. ULONG ( STDMETHODCALLTYPE *Release )(
  2185. IPersistStream * This);
  2186. HRESULT ( STDMETHODCALLTYPE *GetClassID )(
  2187. IPersistStream * This,
  2188. /* [out] */ CLSID *pClassID);
  2189. HRESULT ( STDMETHODCALLTYPE *IsDirty )(
  2190. IPersistStream * This);
  2191. HRESULT ( STDMETHODCALLTYPE *Load )(
  2192. IPersistStream * This,
  2193. /* [unique][in] */ IStream *pStm);
  2194. HRESULT ( STDMETHODCALLTYPE *Save )(
  2195. IPersistStream * This,
  2196. /* [unique][in] */ IStream *pStm,
  2197. /* [in] */ BOOL fClearDirty);
  2198. HRESULT ( STDMETHODCALLTYPE *GetSizeMax )(
  2199. IPersistStream * This,
  2200. /* [out] */ ULARGE_INTEGER *pcbSize);
  2201. END_INTERFACE
  2202. } IPersistStreamVtbl;
  2203. interface IPersistStream
  2204. {
  2205. CONST_VTBL struct IPersistStreamVtbl *lpVtbl;
  2206. };
  2207. #ifdef COBJMACROS
  2208. #define IPersistStream_QueryInterface(This,riid,ppvObject) \
  2209. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2210. #define IPersistStream_AddRef(This) \
  2211. (This)->lpVtbl -> AddRef(This)
  2212. #define IPersistStream_Release(This) \
  2213. (This)->lpVtbl -> Release(This)
  2214. #define IPersistStream_GetClassID(This,pClassID) \
  2215. (This)->lpVtbl -> GetClassID(This,pClassID)
  2216. #define IPersistStream_IsDirty(This) \
  2217. (This)->lpVtbl -> IsDirty(This)
  2218. #define IPersistStream_Load(This,pStm) \
  2219. (This)->lpVtbl -> Load(This,pStm)
  2220. #define IPersistStream_Save(This,pStm,fClearDirty) \
  2221. (This)->lpVtbl -> Save(This,pStm,fClearDirty)
  2222. #define IPersistStream_GetSizeMax(This,pcbSize) \
  2223. (This)->lpVtbl -> GetSizeMax(This,pcbSize)
  2224. #endif /* COBJMACROS */
  2225. #endif /* C style interface */
  2226. HRESULT STDMETHODCALLTYPE IPersistStream_IsDirty_Proxy(
  2227. IPersistStream * This);
  2228. void __RPC_STUB IPersistStream_IsDirty_Stub(
  2229. IRpcStubBuffer *This,
  2230. IRpcChannelBuffer *_pRpcChannelBuffer,
  2231. PRPC_MESSAGE _pRpcMessage,
  2232. DWORD *_pdwStubPhase);
  2233. HRESULT STDMETHODCALLTYPE IPersistStream_Load_Proxy(
  2234. IPersistStream * This,
  2235. /* [unique][in] */ IStream *pStm);
  2236. void __RPC_STUB IPersistStream_Load_Stub(
  2237. IRpcStubBuffer *This,
  2238. IRpcChannelBuffer *_pRpcChannelBuffer,
  2239. PRPC_MESSAGE _pRpcMessage,
  2240. DWORD *_pdwStubPhase);
  2241. HRESULT STDMETHODCALLTYPE IPersistStream_Save_Proxy(
  2242. IPersistStream * This,
  2243. /* [unique][in] */ IStream *pStm,
  2244. /* [in] */ BOOL fClearDirty);
  2245. void __RPC_STUB IPersistStream_Save_Stub(
  2246. IRpcStubBuffer *This,
  2247. IRpcChannelBuffer *_pRpcChannelBuffer,
  2248. PRPC_MESSAGE _pRpcMessage,
  2249. DWORD *_pdwStubPhase);
  2250. HRESULT STDMETHODCALLTYPE IPersistStream_GetSizeMax_Proxy(
  2251. IPersistStream * This,
  2252. /* [out] */ ULARGE_INTEGER *pcbSize);
  2253. void __RPC_STUB IPersistStream_GetSizeMax_Stub(
  2254. IRpcStubBuffer *This,
  2255. IRpcChannelBuffer *_pRpcChannelBuffer,
  2256. PRPC_MESSAGE _pRpcMessage,
  2257. DWORD *_pdwStubPhase);
  2258. #endif /* __IPersistStream_INTERFACE_DEFINED__ */
  2259. #ifndef __IMoniker_INTERFACE_DEFINED__
  2260. #define __IMoniker_INTERFACE_DEFINED__
  2261. /* interface IMoniker */
  2262. /* [unique][uuid][object] */
  2263. typedef /* [unique] */ IMoniker *LPMONIKER;
  2264. typedef
  2265. enum tagMKSYS
  2266. { MKSYS_NONE = 0,
  2267. MKSYS_GENERICCOMPOSITE = 1,
  2268. MKSYS_FILEMONIKER = 2,
  2269. MKSYS_ANTIMONIKER = 3,
  2270. MKSYS_ITEMMONIKER = 4,
  2271. MKSYS_POINTERMONIKER = 5,
  2272. MKSYS_CLASSMONIKER = 7,
  2273. MKSYS_OBJREFMONIKER = 8,
  2274. MKSYS_SESSIONMONIKER = 9
  2275. } MKSYS;
  2276. typedef /* [v1_enum] */
  2277. enum tagMKREDUCE
  2278. { MKRREDUCE_ONE = 3 << 16,
  2279. MKRREDUCE_TOUSER = 2 << 16,
  2280. MKRREDUCE_THROUGHUSER = 1 << 16,
  2281. MKRREDUCE_ALL = 0
  2282. } MKRREDUCE;
  2283. EXTERN_C const IID IID_IMoniker;
  2284. #if defined(__cplusplus) && !defined(CINTERFACE)
  2285. MIDL_INTERFACE("0000000f-0000-0000-C000-000000000046")
  2286. IMoniker : public IPersistStream
  2287. {
  2288. public:
  2289. virtual /* [local] */ HRESULT STDMETHODCALLTYPE BindToObject(
  2290. /* [unique][in] */ IBindCtx *pbc,
  2291. /* [unique][in] */ IMoniker *pmkToLeft,
  2292. /* [in] */ REFIID riidResult,
  2293. /* [iid_is][out] */ void **ppvResult) = 0;
  2294. virtual /* [local] */ HRESULT STDMETHODCALLTYPE BindToStorage(
  2295. /* [unique][in] */ IBindCtx *pbc,
  2296. /* [unique][in] */ IMoniker *pmkToLeft,
  2297. /* [in] */ REFIID riid,
  2298. /* [iid_is][out] */ void **ppvObj) = 0;
  2299. virtual HRESULT STDMETHODCALLTYPE Reduce(
  2300. /* [unique][in] */ IBindCtx *pbc,
  2301. /* [in] */ DWORD dwReduceHowFar,
  2302. /* [unique][out][in] */ IMoniker **ppmkToLeft,
  2303. /* [out] */ IMoniker **ppmkReduced) = 0;
  2304. virtual HRESULT STDMETHODCALLTYPE ComposeWith(
  2305. /* [unique][in] */ IMoniker *pmkRight,
  2306. /* [in] */ BOOL fOnlyIfNotGeneric,
  2307. /* [out] */ IMoniker **ppmkComposite) = 0;
  2308. virtual HRESULT STDMETHODCALLTYPE Enum(
  2309. /* [in] */ BOOL fForward,
  2310. /* [out] */ IEnumMoniker **ppenumMoniker) = 0;
  2311. virtual HRESULT STDMETHODCALLTYPE IsEqual(
  2312. /* [unique][in] */ IMoniker *pmkOtherMoniker) = 0;
  2313. virtual HRESULT STDMETHODCALLTYPE Hash(
  2314. /* [out] */ DWORD *pdwHash) = 0;
  2315. virtual HRESULT STDMETHODCALLTYPE IsRunning(
  2316. /* [unique][in] */ IBindCtx *pbc,
  2317. /* [unique][in] */ IMoniker *pmkToLeft,
  2318. /* [unique][in] */ IMoniker *pmkNewlyRunning) = 0;
  2319. virtual HRESULT STDMETHODCALLTYPE GetTimeOfLastChange(
  2320. /* [unique][in] */ IBindCtx *pbc,
  2321. /* [unique][in] */ IMoniker *pmkToLeft,
  2322. /* [out] */ FILETIME *pFileTime) = 0;
  2323. virtual HRESULT STDMETHODCALLTYPE Inverse(
  2324. /* [out] */ IMoniker **ppmk) = 0;
  2325. virtual HRESULT STDMETHODCALLTYPE CommonPrefixWith(
  2326. /* [unique][in] */ IMoniker *pmkOther,
  2327. /* [out] */ IMoniker **ppmkPrefix) = 0;
  2328. virtual HRESULT STDMETHODCALLTYPE RelativePathTo(
  2329. /* [unique][in] */ IMoniker *pmkOther,
  2330. /* [out] */ IMoniker **ppmkRelPath) = 0;
  2331. virtual HRESULT STDMETHODCALLTYPE GetDisplayName(
  2332. /* [unique][in] */ IBindCtx *pbc,
  2333. /* [unique][in] */ IMoniker *pmkToLeft,
  2334. /* [out] */ LPOLESTR *ppszDisplayName) = 0;
  2335. virtual HRESULT STDMETHODCALLTYPE ParseDisplayName(
  2336. /* [unique][in] */ IBindCtx *pbc,
  2337. /* [unique][in] */ IMoniker *pmkToLeft,
  2338. /* [in] */ LPOLESTR pszDisplayName,
  2339. /* [out] */ ULONG *pchEaten,
  2340. /* [out] */ IMoniker **ppmkOut) = 0;
  2341. virtual HRESULT STDMETHODCALLTYPE IsSystemMoniker(
  2342. /* [out] */ DWORD *pdwMksys) = 0;
  2343. };
  2344. #else /* C style interface */
  2345. typedef struct IMonikerVtbl
  2346. {
  2347. BEGIN_INTERFACE
  2348. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  2349. IMoniker * This,
  2350. /* [in] */ REFIID riid,
  2351. /* [iid_is][out] */ void **ppvObject);
  2352. ULONG ( STDMETHODCALLTYPE *AddRef )(
  2353. IMoniker * This);
  2354. ULONG ( STDMETHODCALLTYPE *Release )(
  2355. IMoniker * This);
  2356. HRESULT ( STDMETHODCALLTYPE *GetClassID )(
  2357. IMoniker * This,
  2358. /* [out] */ CLSID *pClassID);
  2359. HRESULT ( STDMETHODCALLTYPE *IsDirty )(
  2360. IMoniker * This);
  2361. HRESULT ( STDMETHODCALLTYPE *Load )(
  2362. IMoniker * This,
  2363. /* [unique][in] */ IStream *pStm);
  2364. HRESULT ( STDMETHODCALLTYPE *Save )(
  2365. IMoniker * This,
  2366. /* [unique][in] */ IStream *pStm,
  2367. /* [in] */ BOOL fClearDirty);
  2368. HRESULT ( STDMETHODCALLTYPE *GetSizeMax )(
  2369. IMoniker * This,
  2370. /* [out] */ ULARGE_INTEGER *pcbSize);
  2371. /* [local] */ HRESULT ( STDMETHODCALLTYPE *BindToObject )(
  2372. IMoniker * This,
  2373. /* [unique][in] */ IBindCtx *pbc,
  2374. /* [unique][in] */ IMoniker *pmkToLeft,
  2375. /* [in] */ REFIID riidResult,
  2376. /* [iid_is][out] */ void **ppvResult);
  2377. /* [local] */ HRESULT ( STDMETHODCALLTYPE *BindToStorage )(
  2378. IMoniker * This,
  2379. /* [unique][in] */ IBindCtx *pbc,
  2380. /* [unique][in] */ IMoniker *pmkToLeft,
  2381. /* [in] */ REFIID riid,
  2382. /* [iid_is][out] */ void **ppvObj);
  2383. HRESULT ( STDMETHODCALLTYPE *Reduce )(
  2384. IMoniker * This,
  2385. /* [unique][in] */ IBindCtx *pbc,
  2386. /* [in] */ DWORD dwReduceHowFar,
  2387. /* [unique][out][in] */ IMoniker **ppmkToLeft,
  2388. /* [out] */ IMoniker **ppmkReduced);
  2389. HRESULT ( STDMETHODCALLTYPE *ComposeWith )(
  2390. IMoniker * This,
  2391. /* [unique][in] */ IMoniker *pmkRight,
  2392. /* [in] */ BOOL fOnlyIfNotGeneric,
  2393. /* [out] */ IMoniker **ppmkComposite);
  2394. HRESULT ( STDMETHODCALLTYPE *Enum )(
  2395. IMoniker * This,
  2396. /* [in] */ BOOL fForward,
  2397. /* [out] */ IEnumMoniker **ppenumMoniker);
  2398. HRESULT ( STDMETHODCALLTYPE *IsEqual )(
  2399. IMoniker * This,
  2400. /* [unique][in] */ IMoniker *pmkOtherMoniker);
  2401. HRESULT ( STDMETHODCALLTYPE *Hash )(
  2402. IMoniker * This,
  2403. /* [out] */ DWORD *pdwHash);
  2404. HRESULT ( STDMETHODCALLTYPE *IsRunning )(
  2405. IMoniker * This,
  2406. /* [unique][in] */ IBindCtx *pbc,
  2407. /* [unique][in] */ IMoniker *pmkToLeft,
  2408. /* [unique][in] */ IMoniker *pmkNewlyRunning);
  2409. HRESULT ( STDMETHODCALLTYPE *GetTimeOfLastChange )(
  2410. IMoniker * This,
  2411. /* [unique][in] */ IBindCtx *pbc,
  2412. /* [unique][in] */ IMoniker *pmkToLeft,
  2413. /* [out] */ FILETIME *pFileTime);
  2414. HRESULT ( STDMETHODCALLTYPE *Inverse )(
  2415. IMoniker * This,
  2416. /* [out] */ IMoniker **ppmk);
  2417. HRESULT ( STDMETHODCALLTYPE *CommonPrefixWith )(
  2418. IMoniker * This,
  2419. /* [unique][in] */ IMoniker *pmkOther,
  2420. /* [out] */ IMoniker **ppmkPrefix);
  2421. HRESULT ( STDMETHODCALLTYPE *RelativePathTo )(
  2422. IMoniker * This,
  2423. /* [unique][in] */ IMoniker *pmkOther,
  2424. /* [out] */ IMoniker **ppmkRelPath);
  2425. HRESULT ( STDMETHODCALLTYPE *GetDisplayName )(
  2426. IMoniker * This,
  2427. /* [unique][in] */ IBindCtx *pbc,
  2428. /* [unique][in] */ IMoniker *pmkToLeft,
  2429. /* [out] */ LPOLESTR *ppszDisplayName);
  2430. HRESULT ( STDMETHODCALLTYPE *ParseDisplayName )(
  2431. IMoniker * This,
  2432. /* [unique][in] */ IBindCtx *pbc,
  2433. /* [unique][in] */ IMoniker *pmkToLeft,
  2434. /* [in] */ LPOLESTR pszDisplayName,
  2435. /* [out] */ ULONG *pchEaten,
  2436. /* [out] */ IMoniker **ppmkOut);
  2437. HRESULT ( STDMETHODCALLTYPE *IsSystemMoniker )(
  2438. IMoniker * This,
  2439. /* [out] */ DWORD *pdwMksys);
  2440. END_INTERFACE
  2441. } IMonikerVtbl;
  2442. interface IMoniker
  2443. {
  2444. CONST_VTBL struct IMonikerVtbl *lpVtbl;
  2445. };
  2446. #ifdef COBJMACROS
  2447. #define IMoniker_QueryInterface(This,riid,ppvObject) \
  2448. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2449. #define IMoniker_AddRef(This) \
  2450. (This)->lpVtbl -> AddRef(This)
  2451. #define IMoniker_Release(This) \
  2452. (This)->lpVtbl -> Release(This)
  2453. #define IMoniker_GetClassID(This,pClassID) \
  2454. (This)->lpVtbl -> GetClassID(This,pClassID)
  2455. #define IMoniker_IsDirty(This) \
  2456. (This)->lpVtbl -> IsDirty(This)
  2457. #define IMoniker_Load(This,pStm) \
  2458. (This)->lpVtbl -> Load(This,pStm)
  2459. #define IMoniker_Save(This,pStm,fClearDirty) \
  2460. (This)->lpVtbl -> Save(This,pStm,fClearDirty)
  2461. #define IMoniker_GetSizeMax(This,pcbSize) \
  2462. (This)->lpVtbl -> GetSizeMax(This,pcbSize)
  2463. #define IMoniker_BindToObject(This,pbc,pmkToLeft,riidResult,ppvResult) \
  2464. (This)->lpVtbl -> BindToObject(This,pbc,pmkToLeft,riidResult,ppvResult)
  2465. #define IMoniker_BindToStorage(This,pbc,pmkToLeft,riid,ppvObj) \
  2466. (This)->lpVtbl -> BindToStorage(This,pbc,pmkToLeft,riid,ppvObj)
  2467. #define IMoniker_Reduce(This,pbc,dwReduceHowFar,ppmkToLeft,ppmkReduced) \
  2468. (This)->lpVtbl -> Reduce(This,pbc,dwReduceHowFar,ppmkToLeft,ppmkReduced)
  2469. #define IMoniker_ComposeWith(This,pmkRight,fOnlyIfNotGeneric,ppmkComposite) \
  2470. (This)->lpVtbl -> ComposeWith(This,pmkRight,fOnlyIfNotGeneric,ppmkComposite)
  2471. #define IMoniker_Enum(This,fForward,ppenumMoniker) \
  2472. (This)->lpVtbl -> Enum(This,fForward,ppenumMoniker)
  2473. #define IMoniker_IsEqual(This,pmkOtherMoniker) \
  2474. (This)->lpVtbl -> IsEqual(This,pmkOtherMoniker)
  2475. #define IMoniker_Hash(This,pdwHash) \
  2476. (This)->lpVtbl -> Hash(This,pdwHash)
  2477. #define IMoniker_IsRunning(This,pbc,pmkToLeft,pmkNewlyRunning) \
  2478. (This)->lpVtbl -> IsRunning(This,pbc,pmkToLeft,pmkNewlyRunning)
  2479. #define IMoniker_GetTimeOfLastChange(This,pbc,pmkToLeft,pFileTime) \
  2480. (This)->lpVtbl -> GetTimeOfLastChange(This,pbc,pmkToLeft,pFileTime)
  2481. #define IMoniker_Inverse(This,ppmk) \
  2482. (This)->lpVtbl -> Inverse(This,ppmk)
  2483. #define IMoniker_CommonPrefixWith(This,pmkOther,ppmkPrefix) \
  2484. (This)->lpVtbl -> CommonPrefixWith(This,pmkOther,ppmkPrefix)
  2485. #define IMoniker_RelativePathTo(This,pmkOther,ppmkRelPath) \
  2486. (This)->lpVtbl -> RelativePathTo(This,pmkOther,ppmkRelPath)
  2487. #define IMoniker_GetDisplayName(This,pbc,pmkToLeft,ppszDisplayName) \
  2488. (This)->lpVtbl -> GetDisplayName(This,pbc,pmkToLeft,ppszDisplayName)
  2489. #define IMoniker_ParseDisplayName(This,pbc,pmkToLeft,pszDisplayName,pchEaten,ppmkOut) \
  2490. (This)->lpVtbl -> ParseDisplayName(This,pbc,pmkToLeft,pszDisplayName,pchEaten,ppmkOut)
  2491. #define IMoniker_IsSystemMoniker(This,pdwMksys) \
  2492. (This)->lpVtbl -> IsSystemMoniker(This,pdwMksys)
  2493. #endif /* COBJMACROS */
  2494. #endif /* C style interface */
  2495. /* [call_as] */ HRESULT STDMETHODCALLTYPE IMoniker_RemoteBindToObject_Proxy(
  2496. IMoniker * This,
  2497. /* [unique][in] */ IBindCtx *pbc,
  2498. /* [unique][in] */ IMoniker *pmkToLeft,
  2499. /* [in] */ REFIID riidResult,
  2500. /* [iid_is][out] */ IUnknown **ppvResult);
  2501. void __RPC_STUB IMoniker_RemoteBindToObject_Stub(
  2502. IRpcStubBuffer *This,
  2503. IRpcChannelBuffer *_pRpcChannelBuffer,
  2504. PRPC_MESSAGE _pRpcMessage,
  2505. DWORD *_pdwStubPhase);
  2506. /* [call_as] */ HRESULT STDMETHODCALLTYPE IMoniker_RemoteBindToStorage_Proxy(
  2507. IMoniker * This,
  2508. /* [unique][in] */ IBindCtx *pbc,
  2509. /* [unique][in] */ IMoniker *pmkToLeft,
  2510. /* [in] */ REFIID riid,
  2511. /* [iid_is][out] */ IUnknown **ppvObj);
  2512. void __RPC_STUB IMoniker_RemoteBindToStorage_Stub(
  2513. IRpcStubBuffer *This,
  2514. IRpcChannelBuffer *_pRpcChannelBuffer,
  2515. PRPC_MESSAGE _pRpcMessage,
  2516. DWORD *_pdwStubPhase);
  2517. HRESULT STDMETHODCALLTYPE IMoniker_Reduce_Proxy(
  2518. IMoniker * This,
  2519. /* [unique][in] */ IBindCtx *pbc,
  2520. /* [in] */ DWORD dwReduceHowFar,
  2521. /* [unique][out][in] */ IMoniker **ppmkToLeft,
  2522. /* [out] */ IMoniker **ppmkReduced);
  2523. void __RPC_STUB IMoniker_Reduce_Stub(
  2524. IRpcStubBuffer *This,
  2525. IRpcChannelBuffer *_pRpcChannelBuffer,
  2526. PRPC_MESSAGE _pRpcMessage,
  2527. DWORD *_pdwStubPhase);
  2528. HRESULT STDMETHODCALLTYPE IMoniker_ComposeWith_Proxy(
  2529. IMoniker * This,
  2530. /* [unique][in] */ IMoniker *pmkRight,
  2531. /* [in] */ BOOL fOnlyIfNotGeneric,
  2532. /* [out] */ IMoniker **ppmkComposite);
  2533. void __RPC_STUB IMoniker_ComposeWith_Stub(
  2534. IRpcStubBuffer *This,
  2535. IRpcChannelBuffer *_pRpcChannelBuffer,
  2536. PRPC_MESSAGE _pRpcMessage,
  2537. DWORD *_pdwStubPhase);
  2538. HRESULT STDMETHODCALLTYPE IMoniker_Enum_Proxy(
  2539. IMoniker * This,
  2540. /* [in] */ BOOL fForward,
  2541. /* [out] */ IEnumMoniker **ppenumMoniker);
  2542. void __RPC_STUB IMoniker_Enum_Stub(
  2543. IRpcStubBuffer *This,
  2544. IRpcChannelBuffer *_pRpcChannelBuffer,
  2545. PRPC_MESSAGE _pRpcMessage,
  2546. DWORD *_pdwStubPhase);
  2547. HRESULT STDMETHODCALLTYPE IMoniker_IsEqual_Proxy(
  2548. IMoniker * This,
  2549. /* [unique][in] */ IMoniker *pmkOtherMoniker);
  2550. void __RPC_STUB IMoniker_IsEqual_Stub(
  2551. IRpcStubBuffer *This,
  2552. IRpcChannelBuffer *_pRpcChannelBuffer,
  2553. PRPC_MESSAGE _pRpcMessage,
  2554. DWORD *_pdwStubPhase);
  2555. HRESULT STDMETHODCALLTYPE IMoniker_Hash_Proxy(
  2556. IMoniker * This,
  2557. /* [out] */ DWORD *pdwHash);
  2558. void __RPC_STUB IMoniker_Hash_Stub(
  2559. IRpcStubBuffer *This,
  2560. IRpcChannelBuffer *_pRpcChannelBuffer,
  2561. PRPC_MESSAGE _pRpcMessage,
  2562. DWORD *_pdwStubPhase);
  2563. HRESULT STDMETHODCALLTYPE IMoniker_IsRunning_Proxy(
  2564. IMoniker * This,
  2565. /* [unique][in] */ IBindCtx *pbc,
  2566. /* [unique][in] */ IMoniker *pmkToLeft,
  2567. /* [unique][in] */ IMoniker *pmkNewlyRunning);
  2568. void __RPC_STUB IMoniker_IsRunning_Stub(
  2569. IRpcStubBuffer *This,
  2570. IRpcChannelBuffer *_pRpcChannelBuffer,
  2571. PRPC_MESSAGE _pRpcMessage,
  2572. DWORD *_pdwStubPhase);
  2573. HRESULT STDMETHODCALLTYPE IMoniker_GetTimeOfLastChange_Proxy(
  2574. IMoniker * This,
  2575. /* [unique][in] */ IBindCtx *pbc,
  2576. /* [unique][in] */ IMoniker *pmkToLeft,
  2577. /* [out] */ FILETIME *pFileTime);
  2578. void __RPC_STUB IMoniker_GetTimeOfLastChange_Stub(
  2579. IRpcStubBuffer *This,
  2580. IRpcChannelBuffer *_pRpcChannelBuffer,
  2581. PRPC_MESSAGE _pRpcMessage,
  2582. DWORD *_pdwStubPhase);
  2583. HRESULT STDMETHODCALLTYPE IMoniker_Inverse_Proxy(
  2584. IMoniker * This,
  2585. /* [out] */ IMoniker **ppmk);
  2586. void __RPC_STUB IMoniker_Inverse_Stub(
  2587. IRpcStubBuffer *This,
  2588. IRpcChannelBuffer *_pRpcChannelBuffer,
  2589. PRPC_MESSAGE _pRpcMessage,
  2590. DWORD *_pdwStubPhase);
  2591. HRESULT STDMETHODCALLTYPE IMoniker_CommonPrefixWith_Proxy(
  2592. IMoniker * This,
  2593. /* [unique][in] */ IMoniker *pmkOther,
  2594. /* [out] */ IMoniker **ppmkPrefix);
  2595. void __RPC_STUB IMoniker_CommonPrefixWith_Stub(
  2596. IRpcStubBuffer *This,
  2597. IRpcChannelBuffer *_pRpcChannelBuffer,
  2598. PRPC_MESSAGE _pRpcMessage,
  2599. DWORD *_pdwStubPhase);
  2600. HRESULT STDMETHODCALLTYPE IMoniker_RelativePathTo_Proxy(
  2601. IMoniker * This,
  2602. /* [unique][in] */ IMoniker *pmkOther,
  2603. /* [out] */ IMoniker **ppmkRelPath);
  2604. void __RPC_STUB IMoniker_RelativePathTo_Stub(
  2605. IRpcStubBuffer *This,
  2606. IRpcChannelBuffer *_pRpcChannelBuffer,
  2607. PRPC_MESSAGE _pRpcMessage,
  2608. DWORD *_pdwStubPhase);
  2609. HRESULT STDMETHODCALLTYPE IMoniker_GetDisplayName_Proxy(
  2610. IMoniker * This,
  2611. /* [unique][in] */ IBindCtx *pbc,
  2612. /* [unique][in] */ IMoniker *pmkToLeft,
  2613. /* [out] */ LPOLESTR *ppszDisplayName);
  2614. void __RPC_STUB IMoniker_GetDisplayName_Stub(
  2615. IRpcStubBuffer *This,
  2616. IRpcChannelBuffer *_pRpcChannelBuffer,
  2617. PRPC_MESSAGE _pRpcMessage,
  2618. DWORD *_pdwStubPhase);
  2619. HRESULT STDMETHODCALLTYPE IMoniker_ParseDisplayName_Proxy(
  2620. IMoniker * This,
  2621. /* [unique][in] */ IBindCtx *pbc,
  2622. /* [unique][in] */ IMoniker *pmkToLeft,
  2623. /* [in] */ LPOLESTR pszDisplayName,
  2624. /* [out] */ ULONG *pchEaten,
  2625. /* [out] */ IMoniker **ppmkOut);
  2626. void __RPC_STUB IMoniker_ParseDisplayName_Stub(
  2627. IRpcStubBuffer *This,
  2628. IRpcChannelBuffer *_pRpcChannelBuffer,
  2629. PRPC_MESSAGE _pRpcMessage,
  2630. DWORD *_pdwStubPhase);
  2631. HRESULT STDMETHODCALLTYPE IMoniker_IsSystemMoniker_Proxy(
  2632. IMoniker * This,
  2633. /* [out] */ DWORD *pdwMksys);
  2634. void __RPC_STUB IMoniker_IsSystemMoniker_Stub(
  2635. IRpcStubBuffer *This,
  2636. IRpcChannelBuffer *_pRpcChannelBuffer,
  2637. PRPC_MESSAGE _pRpcMessage,
  2638. DWORD *_pdwStubPhase);
  2639. #endif /* __IMoniker_INTERFACE_DEFINED__ */
  2640. #ifndef __IROTData_INTERFACE_DEFINED__
  2641. #define __IROTData_INTERFACE_DEFINED__
  2642. /* interface IROTData */
  2643. /* [unique][uuid][object] */
  2644. EXTERN_C const IID IID_IROTData;
  2645. #if defined(__cplusplus) && !defined(CINTERFACE)
  2646. MIDL_INTERFACE("f29f6bc0-5021-11ce-aa15-00006901293f")
  2647. IROTData : public IUnknown
  2648. {
  2649. public:
  2650. virtual HRESULT STDMETHODCALLTYPE GetComparisonData(
  2651. /* [size_is][out] */ byte *pbData,
  2652. /* [in] */ ULONG cbMax,
  2653. /* [out] */ ULONG *pcbData) = 0;
  2654. };
  2655. #else /* C style interface */
  2656. typedef struct IROTDataVtbl
  2657. {
  2658. BEGIN_INTERFACE
  2659. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  2660. IROTData * This,
  2661. /* [in] */ REFIID riid,
  2662. /* [iid_is][out] */ void **ppvObject);
  2663. ULONG ( STDMETHODCALLTYPE *AddRef )(
  2664. IROTData * This);
  2665. ULONG ( STDMETHODCALLTYPE *Release )(
  2666. IROTData * This);
  2667. HRESULT ( STDMETHODCALLTYPE *GetComparisonData )(
  2668. IROTData * This,
  2669. /* [size_is][out] */ byte *pbData,
  2670. /* [in] */ ULONG cbMax,
  2671. /* [out] */ ULONG *pcbData);
  2672. END_INTERFACE
  2673. } IROTDataVtbl;
  2674. interface IROTData
  2675. {
  2676. CONST_VTBL struct IROTDataVtbl *lpVtbl;
  2677. };
  2678. #ifdef COBJMACROS
  2679. #define IROTData_QueryInterface(This,riid,ppvObject) \
  2680. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2681. #define IROTData_AddRef(This) \
  2682. (This)->lpVtbl -> AddRef(This)
  2683. #define IROTData_Release(This) \
  2684. (This)->lpVtbl -> Release(This)
  2685. #define IROTData_GetComparisonData(This,pbData,cbMax,pcbData) \
  2686. (This)->lpVtbl -> GetComparisonData(This,pbData,cbMax,pcbData)
  2687. #endif /* COBJMACROS */
  2688. #endif /* C style interface */
  2689. HRESULT STDMETHODCALLTYPE IROTData_GetComparisonData_Proxy(
  2690. IROTData * This,
  2691. /* [size_is][out] */ byte *pbData,
  2692. /* [in] */ ULONG cbMax,
  2693. /* [out] */ ULONG *pcbData);
  2694. void __RPC_STUB IROTData_GetComparisonData_Stub(
  2695. IRpcStubBuffer *This,
  2696. IRpcChannelBuffer *_pRpcChannelBuffer,
  2697. PRPC_MESSAGE _pRpcMessage,
  2698. DWORD *_pdwStubPhase);
  2699. #endif /* __IROTData_INTERFACE_DEFINED__ */
  2700. #ifndef __IEnumString_INTERFACE_DEFINED__
  2701. #define __IEnumString_INTERFACE_DEFINED__
  2702. /* interface IEnumString */
  2703. /* [unique][uuid][object] */
  2704. typedef /* [unique] */ IEnumString *LPENUMSTRING;
  2705. EXTERN_C const IID IID_IEnumString;
  2706. #if defined(__cplusplus) && !defined(CINTERFACE)
  2707. MIDL_INTERFACE("00000101-0000-0000-C000-000000000046")
  2708. IEnumString : public IUnknown
  2709. {
  2710. public:
  2711. virtual /* [local] */ HRESULT STDMETHODCALLTYPE Next(
  2712. /* [in] */ ULONG celt,
  2713. /* [length_is][size_is][out] */ LPOLESTR *rgelt,
  2714. /* [out] */ ULONG *pceltFetched) = 0;
  2715. virtual HRESULT STDMETHODCALLTYPE Skip(
  2716. /* [in] */ ULONG celt) = 0;
  2717. virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  2718. virtual HRESULT STDMETHODCALLTYPE Clone(
  2719. /* [out] */ IEnumString **ppenum) = 0;
  2720. };
  2721. #else /* C style interface */
  2722. typedef struct IEnumStringVtbl
  2723. {
  2724. BEGIN_INTERFACE
  2725. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  2726. IEnumString * This,
  2727. /* [in] */ REFIID riid,
  2728. /* [iid_is][out] */ void **ppvObject);
  2729. ULONG ( STDMETHODCALLTYPE *AddRef )(
  2730. IEnumString * This);
  2731. ULONG ( STDMETHODCALLTYPE *Release )(
  2732. IEnumString * This);
  2733. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Next )(
  2734. IEnumString * This,
  2735. /* [in] */ ULONG celt,
  2736. /* [length_is][size_is][out] */ LPOLESTR *rgelt,
  2737. /* [out] */ ULONG *pceltFetched);
  2738. HRESULT ( STDMETHODCALLTYPE *Skip )(
  2739. IEnumString * This,
  2740. /* [in] */ ULONG celt);
  2741. HRESULT ( STDMETHODCALLTYPE *Reset )(
  2742. IEnumString * This);
  2743. HRESULT ( STDMETHODCALLTYPE *Clone )(
  2744. IEnumString * This,
  2745. /* [out] */ IEnumString **ppenum);
  2746. END_INTERFACE
  2747. } IEnumStringVtbl;
  2748. interface IEnumString
  2749. {
  2750. CONST_VTBL struct IEnumStringVtbl *lpVtbl;
  2751. };
  2752. #ifdef COBJMACROS
  2753. #define IEnumString_QueryInterface(This,riid,ppvObject) \
  2754. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2755. #define IEnumString_AddRef(This) \
  2756. (This)->lpVtbl -> AddRef(This)
  2757. #define IEnumString_Release(This) \
  2758. (This)->lpVtbl -> Release(This)
  2759. #define IEnumString_Next(This,celt,rgelt,pceltFetched) \
  2760. (This)->lpVtbl -> Next(This,celt,rgelt,pceltFetched)
  2761. #define IEnumString_Skip(This,celt) \
  2762. (This)->lpVtbl -> Skip(This,celt)
  2763. #define IEnumString_Reset(This) \
  2764. (This)->lpVtbl -> Reset(This)
  2765. #define IEnumString_Clone(This,ppenum) \
  2766. (This)->lpVtbl -> Clone(This,ppenum)
  2767. #endif /* COBJMACROS */
  2768. #endif /* C style interface */
  2769. /* [call_as] */ HRESULT STDMETHODCALLTYPE IEnumString_RemoteNext_Proxy(
  2770. IEnumString * This,
  2771. /* [in] */ ULONG celt,
  2772. /* [length_is][size_is][out] */ LPOLESTR *rgelt,
  2773. /* [out] */ ULONG *pceltFetched);
  2774. void __RPC_STUB IEnumString_RemoteNext_Stub(
  2775. IRpcStubBuffer *This,
  2776. IRpcChannelBuffer *_pRpcChannelBuffer,
  2777. PRPC_MESSAGE _pRpcMessage,
  2778. DWORD *_pdwStubPhase);
  2779. HRESULT STDMETHODCALLTYPE IEnumString_Skip_Proxy(
  2780. IEnumString * This,
  2781. /* [in] */ ULONG celt);
  2782. void __RPC_STUB IEnumString_Skip_Stub(
  2783. IRpcStubBuffer *This,
  2784. IRpcChannelBuffer *_pRpcChannelBuffer,
  2785. PRPC_MESSAGE _pRpcMessage,
  2786. DWORD *_pdwStubPhase);
  2787. HRESULT STDMETHODCALLTYPE IEnumString_Reset_Proxy(
  2788. IEnumString * This);
  2789. void __RPC_STUB IEnumString_Reset_Stub(
  2790. IRpcStubBuffer *This,
  2791. IRpcChannelBuffer *_pRpcChannelBuffer,
  2792. PRPC_MESSAGE _pRpcMessage,
  2793. DWORD *_pdwStubPhase);
  2794. HRESULT STDMETHODCALLTYPE IEnumString_Clone_Proxy(
  2795. IEnumString * This,
  2796. /* [out] */ IEnumString **ppenum);
  2797. void __RPC_STUB IEnumString_Clone_Stub(
  2798. IRpcStubBuffer *This,
  2799. IRpcChannelBuffer *_pRpcChannelBuffer,
  2800. PRPC_MESSAGE _pRpcMessage,
  2801. DWORD *_pdwStubPhase);
  2802. #endif /* __IEnumString_INTERFACE_DEFINED__ */
  2803. #ifndef __ISequentialStream_INTERFACE_DEFINED__
  2804. #define __ISequentialStream_INTERFACE_DEFINED__
  2805. /* interface ISequentialStream */
  2806. /* [unique][uuid][object] */
  2807. EXTERN_C const IID IID_ISequentialStream;
  2808. #if defined(__cplusplus) && !defined(CINTERFACE)
  2809. MIDL_INTERFACE("0c733a30-2a1c-11ce-ade5-00aa0044773d")
  2810. ISequentialStream : public IUnknown
  2811. {
  2812. public:
  2813. virtual /* [local] */ HRESULT STDMETHODCALLTYPE Read(
  2814. /* [length_is][size_is][out] */ void *pv,
  2815. /* [in] */ ULONG cb,
  2816. /* [out] */ ULONG *pcbRead) = 0;
  2817. virtual /* [local] */ HRESULT STDMETHODCALLTYPE Write(
  2818. /* [size_is][in] */ const void *pv,
  2819. /* [in] */ ULONG cb,
  2820. /* [out] */ ULONG *pcbWritten) = 0;
  2821. };
  2822. #else /* C style interface */
  2823. typedef struct ISequentialStreamVtbl
  2824. {
  2825. BEGIN_INTERFACE
  2826. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  2827. ISequentialStream * This,
  2828. /* [in] */ REFIID riid,
  2829. /* [iid_is][out] */ void **ppvObject);
  2830. ULONG ( STDMETHODCALLTYPE *AddRef )(
  2831. ISequentialStream * This);
  2832. ULONG ( STDMETHODCALLTYPE *Release )(
  2833. ISequentialStream * This);
  2834. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Read )(
  2835. ISequentialStream * This,
  2836. /* [length_is][size_is][out] */ void *pv,
  2837. /* [in] */ ULONG cb,
  2838. /* [out] */ ULONG *pcbRead);
  2839. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Write )(
  2840. ISequentialStream * This,
  2841. /* [size_is][in] */ const void *pv,
  2842. /* [in] */ ULONG cb,
  2843. /* [out] */ ULONG *pcbWritten);
  2844. END_INTERFACE
  2845. } ISequentialStreamVtbl;
  2846. interface ISequentialStream
  2847. {
  2848. CONST_VTBL struct ISequentialStreamVtbl *lpVtbl;
  2849. };
  2850. #ifdef COBJMACROS
  2851. #define ISequentialStream_QueryInterface(This,riid,ppvObject) \
  2852. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2853. #define ISequentialStream_AddRef(This) \
  2854. (This)->lpVtbl -> AddRef(This)
  2855. #define ISequentialStream_Release(This) \
  2856. (This)->lpVtbl -> Release(This)
  2857. #define ISequentialStream_Read(This,pv,cb,pcbRead) \
  2858. (This)->lpVtbl -> Read(This,pv,cb,pcbRead)
  2859. #define ISequentialStream_Write(This,pv,cb,pcbWritten) \
  2860. (This)->lpVtbl -> Write(This,pv,cb,pcbWritten)
  2861. #endif /* COBJMACROS */
  2862. #endif /* C style interface */
  2863. /* [call_as] */ HRESULT STDMETHODCALLTYPE ISequentialStream_RemoteRead_Proxy(
  2864. ISequentialStream * This,
  2865. /* [length_is][size_is][out] */ byte *pv,
  2866. /* [in] */ ULONG cb,
  2867. /* [out] */ ULONG *pcbRead);
  2868. void __RPC_STUB ISequentialStream_RemoteRead_Stub(
  2869. IRpcStubBuffer *This,
  2870. IRpcChannelBuffer *_pRpcChannelBuffer,
  2871. PRPC_MESSAGE _pRpcMessage,
  2872. DWORD *_pdwStubPhase);
  2873. /* [call_as] */ HRESULT STDMETHODCALLTYPE ISequentialStream_RemoteWrite_Proxy(
  2874. ISequentialStream * This,
  2875. /* [size_is][in] */ const byte *pv,
  2876. /* [in] */ ULONG cb,
  2877. /* [out] */ ULONG *pcbWritten);
  2878. void __RPC_STUB ISequentialStream_RemoteWrite_Stub(
  2879. IRpcStubBuffer *This,
  2880. IRpcChannelBuffer *_pRpcChannelBuffer,
  2881. PRPC_MESSAGE _pRpcMessage,
  2882. DWORD *_pdwStubPhase);
  2883. #endif /* __ISequentialStream_INTERFACE_DEFINED__ */
  2884. #ifndef __IStream_INTERFACE_DEFINED__
  2885. #define __IStream_INTERFACE_DEFINED__
  2886. /* interface IStream */
  2887. /* [unique][uuid][object] */
  2888. typedef /* [unique] */ IStream *LPSTREAM;
  2889. //FSSpec is Macintosh only, defined in macos\files.h
  2890. #ifdef _MAC
  2891. typedef struct tagSTATSTG
  2892. {
  2893. LPOLESTR pwcsName;
  2894. FSSpec *pspec;
  2895. DWORD type;
  2896. ULARGE_INTEGER cbSize;
  2897. FILETIME mtime;
  2898. FILETIME ctime;
  2899. FILETIME atime;
  2900. DWORD grfMode;
  2901. DWORD grfLocksSupported;
  2902. CLSID clsid;
  2903. DWORD grfStateBits;
  2904. DWORD reserved;
  2905. } STATSTG;
  2906. #else //_MAC
  2907. typedef struct tagSTATSTG
  2908. {
  2909. LPOLESTR pwcsName;
  2910. DWORD type;
  2911. ULARGE_INTEGER cbSize;
  2912. FILETIME mtime;
  2913. FILETIME ctime;
  2914. FILETIME atime;
  2915. DWORD grfMode;
  2916. DWORD grfLocksSupported;
  2917. CLSID clsid;
  2918. DWORD grfStateBits;
  2919. DWORD reserved;
  2920. } STATSTG;
  2921. #endif //_MAC
  2922. typedef
  2923. enum tagSTGTY
  2924. { STGTY_STORAGE = 1,
  2925. STGTY_STREAM = 2,
  2926. STGTY_LOCKBYTES = 3,
  2927. STGTY_PROPERTY = 4
  2928. } STGTY;
  2929. typedef
  2930. enum tagSTREAM_SEEK
  2931. { STREAM_SEEK_SET = 0,
  2932. STREAM_SEEK_CUR = 1,
  2933. STREAM_SEEK_END = 2
  2934. } STREAM_SEEK;
  2935. typedef
  2936. enum tagLOCKTYPE
  2937. { LOCK_WRITE = 1,
  2938. LOCK_EXCLUSIVE = 2,
  2939. LOCK_ONLYONCE = 4
  2940. } LOCKTYPE;
  2941. EXTERN_C const IID IID_IStream;
  2942. #if defined(__cplusplus) && !defined(CINTERFACE)
  2943. MIDL_INTERFACE("0000000c-0000-0000-C000-000000000046")
  2944. IStream : public ISequentialStream
  2945. {
  2946. public:
  2947. virtual /* [local] */ HRESULT STDMETHODCALLTYPE Seek(
  2948. /* [in] */ LARGE_INTEGER dlibMove,
  2949. /* [in] */ DWORD dwOrigin,
  2950. /* [out] */ ULARGE_INTEGER *plibNewPosition) = 0;
  2951. virtual HRESULT STDMETHODCALLTYPE SetSize(
  2952. /* [in] */ ULARGE_INTEGER libNewSize) = 0;
  2953. virtual /* [local] */ HRESULT STDMETHODCALLTYPE CopyTo(
  2954. /* [unique][in] */ IStream *pstm,
  2955. /* [in] */ ULARGE_INTEGER cb,
  2956. /* [out] */ ULARGE_INTEGER *pcbRead,
  2957. /* [out] */ ULARGE_INTEGER *pcbWritten) = 0;
  2958. virtual HRESULT STDMETHODCALLTYPE Commit(
  2959. /* [in] */ DWORD grfCommitFlags) = 0;
  2960. virtual HRESULT STDMETHODCALLTYPE Revert( void) = 0;
  2961. virtual HRESULT STDMETHODCALLTYPE LockRegion(
  2962. /* [in] */ ULARGE_INTEGER libOffset,
  2963. /* [in] */ ULARGE_INTEGER cb,
  2964. /* [in] */ DWORD dwLockType) = 0;
  2965. virtual HRESULT STDMETHODCALLTYPE UnlockRegion(
  2966. /* [in] */ ULARGE_INTEGER libOffset,
  2967. /* [in] */ ULARGE_INTEGER cb,
  2968. /* [in] */ DWORD dwLockType) = 0;
  2969. virtual HRESULT STDMETHODCALLTYPE Stat(
  2970. /* [out] */ STATSTG *pstatstg,
  2971. /* [in] */ DWORD grfStatFlag) = 0;
  2972. virtual HRESULT STDMETHODCALLTYPE Clone(
  2973. /* [out] */ IStream **ppstm) = 0;
  2974. };
  2975. #else /* C style interface */
  2976. typedef struct IStreamVtbl
  2977. {
  2978. BEGIN_INTERFACE
  2979. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  2980. IStream * This,
  2981. /* [in] */ REFIID riid,
  2982. /* [iid_is][out] */ void **ppvObject);
  2983. ULONG ( STDMETHODCALLTYPE *AddRef )(
  2984. IStream * This);
  2985. ULONG ( STDMETHODCALLTYPE *Release )(
  2986. IStream * This);
  2987. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Read )(
  2988. IStream * This,
  2989. /* [length_is][size_is][out] */ void *pv,
  2990. /* [in] */ ULONG cb,
  2991. /* [out] */ ULONG *pcbRead);
  2992. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Write )(
  2993. IStream * This,
  2994. /* [size_is][in] */ const void *pv,
  2995. /* [in] */ ULONG cb,
  2996. /* [out] */ ULONG *pcbWritten);
  2997. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Seek )(
  2998. IStream * This,
  2999. /* [in] */ LARGE_INTEGER dlibMove,
  3000. /* [in] */ DWORD dwOrigin,
  3001. /* [out] */ ULARGE_INTEGER *plibNewPosition);
  3002. HRESULT ( STDMETHODCALLTYPE *SetSize )(
  3003. IStream * This,
  3004. /* [in] */ ULARGE_INTEGER libNewSize);
  3005. /* [local] */ HRESULT ( STDMETHODCALLTYPE *CopyTo )(
  3006. IStream * This,
  3007. /* [unique][in] */ IStream *pstm,
  3008. /* [in] */ ULARGE_INTEGER cb,
  3009. /* [out] */ ULARGE_INTEGER *pcbRead,
  3010. /* [out] */ ULARGE_INTEGER *pcbWritten);
  3011. HRESULT ( STDMETHODCALLTYPE *Commit )(
  3012. IStream * This,
  3013. /* [in] */ DWORD grfCommitFlags);
  3014. HRESULT ( STDMETHODCALLTYPE *Revert )(
  3015. IStream * This);
  3016. HRESULT ( STDMETHODCALLTYPE *LockRegion )(
  3017. IStream * This,
  3018. /* [in] */ ULARGE_INTEGER libOffset,
  3019. /* [in] */ ULARGE_INTEGER cb,
  3020. /* [in] */ DWORD dwLockType);
  3021. HRESULT ( STDMETHODCALLTYPE *UnlockRegion )(
  3022. IStream * This,
  3023. /* [in] */ ULARGE_INTEGER libOffset,
  3024. /* [in] */ ULARGE_INTEGER cb,
  3025. /* [in] */ DWORD dwLockType);
  3026. HRESULT ( STDMETHODCALLTYPE *Stat )(
  3027. IStream * This,
  3028. /* [out] */ STATSTG *pstatstg,
  3029. /* [in] */ DWORD grfStatFlag);
  3030. HRESULT ( STDMETHODCALLTYPE *Clone )(
  3031. IStream * This,
  3032. /* [out] */ IStream **ppstm);
  3033. END_INTERFACE
  3034. } IStreamVtbl;
  3035. interface IStream
  3036. {
  3037. CONST_VTBL struct IStreamVtbl *lpVtbl;
  3038. };
  3039. #ifdef COBJMACROS
  3040. #define IStream_QueryInterface(This,riid,ppvObject) \
  3041. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3042. #define IStream_AddRef(This) \
  3043. (This)->lpVtbl -> AddRef(This)
  3044. #define IStream_Release(This) \
  3045. (This)->lpVtbl -> Release(This)
  3046. #define IStream_Read(This,pv,cb,pcbRead) \
  3047. (This)->lpVtbl -> Read(This,pv,cb,pcbRead)
  3048. #define IStream_Write(This,pv,cb,pcbWritten) \
  3049. (This)->lpVtbl -> Write(This,pv,cb,pcbWritten)
  3050. #define IStream_Seek(This,dlibMove,dwOrigin,plibNewPosition) \
  3051. (This)->lpVtbl -> Seek(This,dlibMove,dwOrigin,plibNewPosition)
  3052. #define IStream_SetSize(This,libNewSize) \
  3053. (This)->lpVtbl -> SetSize(This,libNewSize)
  3054. #define IStream_CopyTo(This,pstm,cb,pcbRead,pcbWritten) \
  3055. (This)->lpVtbl -> CopyTo(This,pstm,cb,pcbRead,pcbWritten)
  3056. #define IStream_Commit(This,grfCommitFlags) \
  3057. (This)->lpVtbl -> Commit(This,grfCommitFlags)
  3058. #define IStream_Revert(This) \
  3059. (This)->lpVtbl -> Revert(This)
  3060. #define IStream_LockRegion(This,libOffset,cb,dwLockType) \
  3061. (This)->lpVtbl -> LockRegion(This,libOffset,cb,dwLockType)
  3062. #define IStream_UnlockRegion(This,libOffset,cb,dwLockType) \
  3063. (This)->lpVtbl -> UnlockRegion(This,libOffset,cb,dwLockType)
  3064. #define IStream_Stat(This,pstatstg,grfStatFlag) \
  3065. (This)->lpVtbl -> Stat(This,pstatstg,grfStatFlag)
  3066. #define IStream_Clone(This,ppstm) \
  3067. (This)->lpVtbl -> Clone(This,ppstm)
  3068. #endif /* COBJMACROS */
  3069. #endif /* C style interface */
  3070. /* [call_as] */ HRESULT STDMETHODCALLTYPE IStream_RemoteSeek_Proxy(
  3071. IStream * This,
  3072. /* [in] */ LARGE_INTEGER dlibMove,
  3073. /* [in] */ DWORD dwOrigin,
  3074. /* [out] */ ULARGE_INTEGER *plibNewPosition);
  3075. void __RPC_STUB IStream_RemoteSeek_Stub(
  3076. IRpcStubBuffer *This,
  3077. IRpcChannelBuffer *_pRpcChannelBuffer,
  3078. PRPC_MESSAGE _pRpcMessage,
  3079. DWORD *_pdwStubPhase);
  3080. HRESULT STDMETHODCALLTYPE IStream_SetSize_Proxy(
  3081. IStream * This,
  3082. /* [in] */ ULARGE_INTEGER libNewSize);
  3083. void __RPC_STUB IStream_SetSize_Stub(
  3084. IRpcStubBuffer *This,
  3085. IRpcChannelBuffer *_pRpcChannelBuffer,
  3086. PRPC_MESSAGE _pRpcMessage,
  3087. DWORD *_pdwStubPhase);
  3088. /* [call_as] */ HRESULT STDMETHODCALLTYPE IStream_RemoteCopyTo_Proxy(
  3089. IStream * This,
  3090. /* [unique][in] */ IStream *pstm,
  3091. /* [in] */ ULARGE_INTEGER cb,
  3092. /* [out] */ ULARGE_INTEGER *pcbRead,
  3093. /* [out] */ ULARGE_INTEGER *pcbWritten);
  3094. void __RPC_STUB IStream_RemoteCopyTo_Stub(
  3095. IRpcStubBuffer *This,
  3096. IRpcChannelBuffer *_pRpcChannelBuffer,
  3097. PRPC_MESSAGE _pRpcMessage,
  3098. DWORD *_pdwStubPhase);
  3099. HRESULT STDMETHODCALLTYPE IStream_Commit_Proxy(
  3100. IStream * This,
  3101. /* [in] */ DWORD grfCommitFlags);
  3102. void __RPC_STUB IStream_Commit_Stub(
  3103. IRpcStubBuffer *This,
  3104. IRpcChannelBuffer *_pRpcChannelBuffer,
  3105. PRPC_MESSAGE _pRpcMessage,
  3106. DWORD *_pdwStubPhase);
  3107. HRESULT STDMETHODCALLTYPE IStream_Revert_Proxy(
  3108. IStream * This);
  3109. void __RPC_STUB IStream_Revert_Stub(
  3110. IRpcStubBuffer *This,
  3111. IRpcChannelBuffer *_pRpcChannelBuffer,
  3112. PRPC_MESSAGE _pRpcMessage,
  3113. DWORD *_pdwStubPhase);
  3114. HRESULT STDMETHODCALLTYPE IStream_LockRegion_Proxy(
  3115. IStream * This,
  3116. /* [in] */ ULARGE_INTEGER libOffset,
  3117. /* [in] */ ULARGE_INTEGER cb,
  3118. /* [in] */ DWORD dwLockType);
  3119. void __RPC_STUB IStream_LockRegion_Stub(
  3120. IRpcStubBuffer *This,
  3121. IRpcChannelBuffer *_pRpcChannelBuffer,
  3122. PRPC_MESSAGE _pRpcMessage,
  3123. DWORD *_pdwStubPhase);
  3124. HRESULT STDMETHODCALLTYPE IStream_UnlockRegion_Proxy(
  3125. IStream * This,
  3126. /* [in] */ ULARGE_INTEGER libOffset,
  3127. /* [in] */ ULARGE_INTEGER cb,
  3128. /* [in] */ DWORD dwLockType);
  3129. void __RPC_STUB IStream_UnlockRegion_Stub(
  3130. IRpcStubBuffer *This,
  3131. IRpcChannelBuffer *_pRpcChannelBuffer,
  3132. PRPC_MESSAGE _pRpcMessage,
  3133. DWORD *_pdwStubPhase);
  3134. HRESULT STDMETHODCALLTYPE IStream_Stat_Proxy(
  3135. IStream * This,
  3136. /* [out] */ STATSTG *pstatstg,
  3137. /* [in] */ DWORD grfStatFlag);
  3138. void __RPC_STUB IStream_Stat_Stub(
  3139. IRpcStubBuffer *This,
  3140. IRpcChannelBuffer *_pRpcChannelBuffer,
  3141. PRPC_MESSAGE _pRpcMessage,
  3142. DWORD *_pdwStubPhase);
  3143. HRESULT STDMETHODCALLTYPE IStream_Clone_Proxy(
  3144. IStream * This,
  3145. /* [out] */ IStream **ppstm);
  3146. void __RPC_STUB IStream_Clone_Stub(
  3147. IRpcStubBuffer *This,
  3148. IRpcChannelBuffer *_pRpcChannelBuffer,
  3149. PRPC_MESSAGE _pRpcMessage,
  3150. DWORD *_pdwStubPhase);
  3151. #endif /* __IStream_INTERFACE_DEFINED__ */
  3152. #ifndef __IEnumSTATSTG_INTERFACE_DEFINED__
  3153. #define __IEnumSTATSTG_INTERFACE_DEFINED__
  3154. /* interface IEnumSTATSTG */
  3155. /* [unique][uuid][object] */
  3156. typedef /* [unique] */ IEnumSTATSTG *LPENUMSTATSTG;
  3157. EXTERN_C const IID IID_IEnumSTATSTG;
  3158. #if defined(__cplusplus) && !defined(CINTERFACE)
  3159. MIDL_INTERFACE("0000000d-0000-0000-C000-000000000046")
  3160. IEnumSTATSTG : public IUnknown
  3161. {
  3162. public:
  3163. virtual /* [local] */ HRESULT STDMETHODCALLTYPE Next(
  3164. /* [in] */ ULONG celt,
  3165. /* [length_is][size_is][out] */ STATSTG *rgelt,
  3166. /* [out] */ ULONG *pceltFetched) = 0;
  3167. virtual HRESULT STDMETHODCALLTYPE Skip(
  3168. /* [in] */ ULONG celt) = 0;
  3169. virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  3170. virtual HRESULT STDMETHODCALLTYPE Clone(
  3171. /* [out] */ IEnumSTATSTG **ppenum) = 0;
  3172. };
  3173. #else /* C style interface */
  3174. typedef struct IEnumSTATSTGVtbl
  3175. {
  3176. BEGIN_INTERFACE
  3177. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  3178. IEnumSTATSTG * This,
  3179. /* [in] */ REFIID riid,
  3180. /* [iid_is][out] */ void **ppvObject);
  3181. ULONG ( STDMETHODCALLTYPE *AddRef )(
  3182. IEnumSTATSTG * This);
  3183. ULONG ( STDMETHODCALLTYPE *Release )(
  3184. IEnumSTATSTG * This);
  3185. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Next )(
  3186. IEnumSTATSTG * This,
  3187. /* [in] */ ULONG celt,
  3188. /* [length_is][size_is][out] */ STATSTG *rgelt,
  3189. /* [out] */ ULONG *pceltFetched);
  3190. HRESULT ( STDMETHODCALLTYPE *Skip )(
  3191. IEnumSTATSTG * This,
  3192. /* [in] */ ULONG celt);
  3193. HRESULT ( STDMETHODCALLTYPE *Reset )(
  3194. IEnumSTATSTG * This);
  3195. HRESULT ( STDMETHODCALLTYPE *Clone )(
  3196. IEnumSTATSTG * This,
  3197. /* [out] */ IEnumSTATSTG **ppenum);
  3198. END_INTERFACE
  3199. } IEnumSTATSTGVtbl;
  3200. interface IEnumSTATSTG
  3201. {
  3202. CONST_VTBL struct IEnumSTATSTGVtbl *lpVtbl;
  3203. };
  3204. #ifdef COBJMACROS
  3205. #define IEnumSTATSTG_QueryInterface(This,riid,ppvObject) \
  3206. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3207. #define IEnumSTATSTG_AddRef(This) \
  3208. (This)->lpVtbl -> AddRef(This)
  3209. #define IEnumSTATSTG_Release(This) \
  3210. (This)->lpVtbl -> Release(This)
  3211. #define IEnumSTATSTG_Next(This,celt,rgelt,pceltFetched) \
  3212. (This)->lpVtbl -> Next(This,celt,rgelt,pceltFetched)
  3213. #define IEnumSTATSTG_Skip(This,celt) \
  3214. (This)->lpVtbl -> Skip(This,celt)
  3215. #define IEnumSTATSTG_Reset(This) \
  3216. (This)->lpVtbl -> Reset(This)
  3217. #define IEnumSTATSTG_Clone(This,ppenum) \
  3218. (This)->lpVtbl -> Clone(This,ppenum)
  3219. #endif /* COBJMACROS */
  3220. #endif /* C style interface */
  3221. /* [call_as] */ HRESULT STDMETHODCALLTYPE IEnumSTATSTG_RemoteNext_Proxy(
  3222. IEnumSTATSTG * This,
  3223. /* [in] */ ULONG celt,
  3224. /* [length_is][size_is][out] */ STATSTG *rgelt,
  3225. /* [out] */ ULONG *pceltFetched);
  3226. void __RPC_STUB IEnumSTATSTG_RemoteNext_Stub(
  3227. IRpcStubBuffer *This,
  3228. IRpcChannelBuffer *_pRpcChannelBuffer,
  3229. PRPC_MESSAGE _pRpcMessage,
  3230. DWORD *_pdwStubPhase);
  3231. HRESULT STDMETHODCALLTYPE IEnumSTATSTG_Skip_Proxy(
  3232. IEnumSTATSTG * This,
  3233. /* [in] */ ULONG celt);
  3234. void __RPC_STUB IEnumSTATSTG_Skip_Stub(
  3235. IRpcStubBuffer *This,
  3236. IRpcChannelBuffer *_pRpcChannelBuffer,
  3237. PRPC_MESSAGE _pRpcMessage,
  3238. DWORD *_pdwStubPhase);
  3239. HRESULT STDMETHODCALLTYPE IEnumSTATSTG_Reset_Proxy(
  3240. IEnumSTATSTG * This);
  3241. void __RPC_STUB IEnumSTATSTG_Reset_Stub(
  3242. IRpcStubBuffer *This,
  3243. IRpcChannelBuffer *_pRpcChannelBuffer,
  3244. PRPC_MESSAGE _pRpcMessage,
  3245. DWORD *_pdwStubPhase);
  3246. HRESULT STDMETHODCALLTYPE IEnumSTATSTG_Clone_Proxy(
  3247. IEnumSTATSTG * This,
  3248. /* [out] */ IEnumSTATSTG **ppenum);
  3249. void __RPC_STUB IEnumSTATSTG_Clone_Stub(
  3250. IRpcStubBuffer *This,
  3251. IRpcChannelBuffer *_pRpcChannelBuffer,
  3252. PRPC_MESSAGE _pRpcMessage,
  3253. DWORD *_pdwStubPhase);
  3254. #endif /* __IEnumSTATSTG_INTERFACE_DEFINED__ */
  3255. #ifndef __IStorage_INTERFACE_DEFINED__
  3256. #define __IStorage_INTERFACE_DEFINED__
  3257. /* interface IStorage */
  3258. /* [unique][uuid][object] */
  3259. typedef /* [unique] */ IStorage *LPSTORAGE;
  3260. typedef struct tagRemSNB
  3261. {
  3262. unsigned long ulCntStr;
  3263. unsigned long ulCntChar;
  3264. /* [size_is] */ OLECHAR rgString[ 1 ];
  3265. } RemSNB;
  3266. typedef /* [unique] */ RemSNB *wireSNB;
  3267. typedef /* [wire_marshal] */ OLECHAR **SNB;
  3268. EXTERN_C const IID IID_IStorage;
  3269. #if defined(__cplusplus) && !defined(CINTERFACE)
  3270. MIDL_INTERFACE("0000000b-0000-0000-C000-000000000046")
  3271. IStorage : public IUnknown
  3272. {
  3273. public:
  3274. virtual HRESULT STDMETHODCALLTYPE CreateStream(
  3275. /* [string][in] */ const OLECHAR *pwcsName,
  3276. /* [in] */ DWORD grfMode,
  3277. /* [in] */ DWORD reserved1,
  3278. /* [in] */ DWORD reserved2,
  3279. /* [out] */ IStream **ppstm) = 0;
  3280. virtual /* [local] */ HRESULT STDMETHODCALLTYPE OpenStream(
  3281. /* [string][in] */ const OLECHAR *pwcsName,
  3282. /* [unique][in] */ void *reserved1,
  3283. /* [in] */ DWORD grfMode,
  3284. /* [in] */ DWORD reserved2,
  3285. /* [out] */ IStream **ppstm) = 0;
  3286. virtual HRESULT STDMETHODCALLTYPE CreateStorage(
  3287. /* [string][in] */ const OLECHAR *pwcsName,
  3288. /* [in] */ DWORD grfMode,
  3289. /* [in] */ DWORD reserved1,
  3290. /* [in] */ DWORD reserved2,
  3291. /* [out] */ IStorage **ppstg) = 0;
  3292. virtual HRESULT STDMETHODCALLTYPE OpenStorage(
  3293. /* [string][unique][in] */ const OLECHAR *pwcsName,
  3294. /* [unique][in] */ IStorage *pstgPriority,
  3295. /* [in] */ DWORD grfMode,
  3296. /* [unique][in] */ SNB snbExclude,
  3297. /* [in] */ DWORD reserved,
  3298. /* [out] */ IStorage **ppstg) = 0;
  3299. virtual HRESULT STDMETHODCALLTYPE CopyTo(
  3300. /* [in] */ DWORD ciidExclude,
  3301. /* [size_is][unique][in] */ const IID *rgiidExclude,
  3302. /* [unique][in] */ SNB snbExclude,
  3303. /* [unique][in] */ IStorage *pstgDest) = 0;
  3304. virtual HRESULT STDMETHODCALLTYPE MoveElementTo(
  3305. /* [string][in] */ const OLECHAR *pwcsName,
  3306. /* [unique][in] */ IStorage *pstgDest,
  3307. /* [string][in] */ const OLECHAR *pwcsNewName,
  3308. /* [in] */ DWORD grfFlags) = 0;
  3309. virtual HRESULT STDMETHODCALLTYPE Commit(
  3310. /* [in] */ DWORD grfCommitFlags) = 0;
  3311. virtual HRESULT STDMETHODCALLTYPE Revert( void) = 0;
  3312. virtual /* [local] */ HRESULT STDMETHODCALLTYPE EnumElements(
  3313. /* [in] */ DWORD reserved1,
  3314. /* [size_is][unique][in] */ void *reserved2,
  3315. /* [in] */ DWORD reserved3,
  3316. /* [out] */ IEnumSTATSTG **ppenum) = 0;
  3317. virtual HRESULT STDMETHODCALLTYPE DestroyElement(
  3318. /* [string][in] */ const OLECHAR *pwcsName) = 0;
  3319. virtual HRESULT STDMETHODCALLTYPE RenameElement(
  3320. /* [string][in] */ const OLECHAR *pwcsOldName,
  3321. /* [string][in] */ const OLECHAR *pwcsNewName) = 0;
  3322. virtual HRESULT STDMETHODCALLTYPE SetElementTimes(
  3323. /* [string][unique][in] */ const OLECHAR *pwcsName,
  3324. /* [unique][in] */ const FILETIME *pctime,
  3325. /* [unique][in] */ const FILETIME *patime,
  3326. /* [unique][in] */ const FILETIME *pmtime) = 0;
  3327. virtual HRESULT STDMETHODCALLTYPE SetClass(
  3328. /* [in] */ REFCLSID clsid) = 0;
  3329. virtual HRESULT STDMETHODCALLTYPE SetStateBits(
  3330. /* [in] */ DWORD grfStateBits,
  3331. /* [in] */ DWORD grfMask) = 0;
  3332. virtual HRESULT STDMETHODCALLTYPE Stat(
  3333. /* [out] */ STATSTG *pstatstg,
  3334. /* [in] */ DWORD grfStatFlag) = 0;
  3335. };
  3336. #else /* C style interface */
  3337. typedef struct IStorageVtbl
  3338. {
  3339. BEGIN_INTERFACE
  3340. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  3341. IStorage * This,
  3342. /* [in] */ REFIID riid,
  3343. /* [iid_is][out] */ void **ppvObject);
  3344. ULONG ( STDMETHODCALLTYPE *AddRef )(
  3345. IStorage * This);
  3346. ULONG ( STDMETHODCALLTYPE *Release )(
  3347. IStorage * This);
  3348. HRESULT ( STDMETHODCALLTYPE *CreateStream )(
  3349. IStorage * This,
  3350. /* [string][in] */ const OLECHAR *pwcsName,
  3351. /* [in] */ DWORD grfMode,
  3352. /* [in] */ DWORD reserved1,
  3353. /* [in] */ DWORD reserved2,
  3354. /* [out] */ IStream **ppstm);
  3355. /* [local] */ HRESULT ( STDMETHODCALLTYPE *OpenStream )(
  3356. IStorage * This,
  3357. /* [string][in] */ const OLECHAR *pwcsName,
  3358. /* [unique][in] */ void *reserved1,
  3359. /* [in] */ DWORD grfMode,
  3360. /* [in] */ DWORD reserved2,
  3361. /* [out] */ IStream **ppstm);
  3362. HRESULT ( STDMETHODCALLTYPE *CreateStorage )(
  3363. IStorage * This,
  3364. /* [string][in] */ const OLECHAR *pwcsName,
  3365. /* [in] */ DWORD grfMode,
  3366. /* [in] */ DWORD reserved1,
  3367. /* [in] */ DWORD reserved2,
  3368. /* [out] */ IStorage **ppstg);
  3369. HRESULT ( STDMETHODCALLTYPE *OpenStorage )(
  3370. IStorage * This,
  3371. /* [string][unique][in] */ const OLECHAR *pwcsName,
  3372. /* [unique][in] */ IStorage *pstgPriority,
  3373. /* [in] */ DWORD grfMode,
  3374. /* [unique][in] */ SNB snbExclude,
  3375. /* [in] */ DWORD reserved,
  3376. /* [out] */ IStorage **ppstg);
  3377. HRESULT ( STDMETHODCALLTYPE *CopyTo )(
  3378. IStorage * This,
  3379. /* [in] */ DWORD ciidExclude,
  3380. /* [size_is][unique][in] */ const IID *rgiidExclude,
  3381. /* [unique][in] */ SNB snbExclude,
  3382. /* [unique][in] */ IStorage *pstgDest);
  3383. HRESULT ( STDMETHODCALLTYPE *MoveElementTo )(
  3384. IStorage * This,
  3385. /* [string][in] */ const OLECHAR *pwcsName,
  3386. /* [unique][in] */ IStorage *pstgDest,
  3387. /* [string][in] */ const OLECHAR *pwcsNewName,
  3388. /* [in] */ DWORD grfFlags);
  3389. HRESULT ( STDMETHODCALLTYPE *Commit )(
  3390. IStorage * This,
  3391. /* [in] */ DWORD grfCommitFlags);
  3392. HRESULT ( STDMETHODCALLTYPE *Revert )(
  3393. IStorage * This);
  3394. /* [local] */ HRESULT ( STDMETHODCALLTYPE *EnumElements )(
  3395. IStorage * This,
  3396. /* [in] */ DWORD reserved1,
  3397. /* [size_is][unique][in] */ void *reserved2,
  3398. /* [in] */ DWORD reserved3,
  3399. /* [out] */ IEnumSTATSTG **ppenum);
  3400. HRESULT ( STDMETHODCALLTYPE *DestroyElement )(
  3401. IStorage * This,
  3402. /* [string][in] */ const OLECHAR *pwcsName);
  3403. HRESULT ( STDMETHODCALLTYPE *RenameElement )(
  3404. IStorage * This,
  3405. /* [string][in] */ const OLECHAR *pwcsOldName,
  3406. /* [string][in] */ const OLECHAR *pwcsNewName);
  3407. HRESULT ( STDMETHODCALLTYPE *SetElementTimes )(
  3408. IStorage * This,
  3409. /* [string][unique][in] */ const OLECHAR *pwcsName,
  3410. /* [unique][in] */ const FILETIME *pctime,
  3411. /* [unique][in] */ const FILETIME *patime,
  3412. /* [unique][in] */ const FILETIME *pmtime);
  3413. HRESULT ( STDMETHODCALLTYPE *SetClass )(
  3414. IStorage * This,
  3415. /* [in] */ REFCLSID clsid);
  3416. HRESULT ( STDMETHODCALLTYPE *SetStateBits )(
  3417. IStorage * This,
  3418. /* [in] */ DWORD grfStateBits,
  3419. /* [in] */ DWORD grfMask);
  3420. HRESULT ( STDMETHODCALLTYPE *Stat )(
  3421. IStorage * This,
  3422. /* [out] */ STATSTG *pstatstg,
  3423. /* [in] */ DWORD grfStatFlag);
  3424. END_INTERFACE
  3425. } IStorageVtbl;
  3426. interface IStorage
  3427. {
  3428. CONST_VTBL struct IStorageVtbl *lpVtbl;
  3429. };
  3430. #ifdef COBJMACROS
  3431. #define IStorage_QueryInterface(This,riid,ppvObject) \
  3432. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3433. #define IStorage_AddRef(This) \
  3434. (This)->lpVtbl -> AddRef(This)
  3435. #define IStorage_Release(This) \
  3436. (This)->lpVtbl -> Release(This)
  3437. #define IStorage_CreateStream(This,pwcsName,grfMode,reserved1,reserved2,ppstm) \
  3438. (This)->lpVtbl -> CreateStream(This,pwcsName,grfMode,reserved1,reserved2,ppstm)
  3439. #define IStorage_OpenStream(This,pwcsName,reserved1,grfMode,reserved2,ppstm) \
  3440. (This)->lpVtbl -> OpenStream(This,pwcsName,reserved1,grfMode,reserved2,ppstm)
  3441. #define IStorage_CreateStorage(This,pwcsName,grfMode,reserved1,reserved2,ppstg) \
  3442. (This)->lpVtbl -> CreateStorage(This,pwcsName,grfMode,reserved1,reserved2,ppstg)
  3443. #define IStorage_OpenStorage(This,pwcsName,pstgPriority,grfMode,snbExclude,reserved,ppstg) \
  3444. (This)->lpVtbl -> OpenStorage(This,pwcsName,pstgPriority,grfMode,snbExclude,reserved,ppstg)
  3445. #define IStorage_CopyTo(This,ciidExclude,rgiidExclude,snbExclude,pstgDest) \
  3446. (This)->lpVtbl -> CopyTo(This,ciidExclude,rgiidExclude,snbExclude,pstgDest)
  3447. #define IStorage_MoveElementTo(This,pwcsName,pstgDest,pwcsNewName,grfFlags) \
  3448. (This)->lpVtbl -> MoveElementTo(This,pwcsName,pstgDest,pwcsNewName,grfFlags)
  3449. #define IStorage_Commit(This,grfCommitFlags) \
  3450. (This)->lpVtbl -> Commit(This,grfCommitFlags)
  3451. #define IStorage_Revert(This) \
  3452. (This)->lpVtbl -> Revert(This)
  3453. #define IStorage_EnumElements(This,reserved1,reserved2,reserved3,ppenum) \
  3454. (This)->lpVtbl -> EnumElements(This,reserved1,reserved2,reserved3,ppenum)
  3455. #define IStorage_DestroyElement(This,pwcsName) \
  3456. (This)->lpVtbl -> DestroyElement(This,pwcsName)
  3457. #define IStorage_RenameElement(This,pwcsOldName,pwcsNewName) \
  3458. (This)->lpVtbl -> RenameElement(This,pwcsOldName,pwcsNewName)
  3459. #define IStorage_SetElementTimes(This,pwcsName,pctime,patime,pmtime) \
  3460. (This)->lpVtbl -> SetElementTimes(This,pwcsName,pctime,patime,pmtime)
  3461. #define IStorage_SetClass(This,clsid) \
  3462. (This)->lpVtbl -> SetClass(This,clsid)
  3463. #define IStorage_SetStateBits(This,grfStateBits,grfMask) \
  3464. (This)->lpVtbl -> SetStateBits(This,grfStateBits,grfMask)
  3465. #define IStorage_Stat(This,pstatstg,grfStatFlag) \
  3466. (This)->lpVtbl -> Stat(This,pstatstg,grfStatFlag)
  3467. #endif /* COBJMACROS */
  3468. #endif /* C style interface */
  3469. HRESULT STDMETHODCALLTYPE IStorage_CreateStream_Proxy(
  3470. IStorage * This,
  3471. /* [string][in] */ const OLECHAR *pwcsName,
  3472. /* [in] */ DWORD grfMode,
  3473. /* [in] */ DWORD reserved1,
  3474. /* [in] */ DWORD reserved2,
  3475. /* [out] */ IStream **ppstm);
  3476. void __RPC_STUB IStorage_CreateStream_Stub(
  3477. IRpcStubBuffer *This,
  3478. IRpcChannelBuffer *_pRpcChannelBuffer,
  3479. PRPC_MESSAGE _pRpcMessage,
  3480. DWORD *_pdwStubPhase);
  3481. /* [call_as] */ HRESULT STDMETHODCALLTYPE IStorage_RemoteOpenStream_Proxy(
  3482. IStorage * This,
  3483. /* [string][in] */ const OLECHAR *pwcsName,
  3484. /* [in] */ unsigned long cbReserved1,
  3485. /* [size_is][unique][in] */ byte *reserved1,
  3486. /* [in] */ DWORD grfMode,
  3487. /* [in] */ DWORD reserved2,
  3488. /* [out] */ IStream **ppstm);
  3489. void __RPC_STUB IStorage_RemoteOpenStream_Stub(
  3490. IRpcStubBuffer *This,
  3491. IRpcChannelBuffer *_pRpcChannelBuffer,
  3492. PRPC_MESSAGE _pRpcMessage,
  3493. DWORD *_pdwStubPhase);
  3494. HRESULT STDMETHODCALLTYPE IStorage_CreateStorage_Proxy(
  3495. IStorage * This,
  3496. /* [string][in] */ const OLECHAR *pwcsName,
  3497. /* [in] */ DWORD grfMode,
  3498. /* [in] */ DWORD reserved1,
  3499. /* [in] */ DWORD reserved2,
  3500. /* [out] */ IStorage **ppstg);
  3501. void __RPC_STUB IStorage_CreateStorage_Stub(
  3502. IRpcStubBuffer *This,
  3503. IRpcChannelBuffer *_pRpcChannelBuffer,
  3504. PRPC_MESSAGE _pRpcMessage,
  3505. DWORD *_pdwStubPhase);
  3506. HRESULT STDMETHODCALLTYPE IStorage_OpenStorage_Proxy(
  3507. IStorage * This,
  3508. /* [string][unique][in] */ const OLECHAR *pwcsName,
  3509. /* [unique][in] */ IStorage *pstgPriority,
  3510. /* [in] */ DWORD grfMode,
  3511. /* [unique][in] */ SNB snbExclude,
  3512. /* [in] */ DWORD reserved,
  3513. /* [out] */ IStorage **ppstg);
  3514. void __RPC_STUB IStorage_OpenStorage_Stub(
  3515. IRpcStubBuffer *This,
  3516. IRpcChannelBuffer *_pRpcChannelBuffer,
  3517. PRPC_MESSAGE _pRpcMessage,
  3518. DWORD *_pdwStubPhase);
  3519. HRESULT STDMETHODCALLTYPE IStorage_CopyTo_Proxy(
  3520. IStorage * This,
  3521. /* [in] */ DWORD ciidExclude,
  3522. /* [size_is][unique][in] */ const IID *rgiidExclude,
  3523. /* [unique][in] */ SNB snbExclude,
  3524. /* [unique][in] */ IStorage *pstgDest);
  3525. void __RPC_STUB IStorage_CopyTo_Stub(
  3526. IRpcStubBuffer *This,
  3527. IRpcChannelBuffer *_pRpcChannelBuffer,
  3528. PRPC_MESSAGE _pRpcMessage,
  3529. DWORD *_pdwStubPhase);
  3530. HRESULT STDMETHODCALLTYPE IStorage_MoveElementTo_Proxy(
  3531. IStorage * This,
  3532. /* [string][in] */ const OLECHAR *pwcsName,
  3533. /* [unique][in] */ IStorage *pstgDest,
  3534. /* [string][in] */ const OLECHAR *pwcsNewName,
  3535. /* [in] */ DWORD grfFlags);
  3536. void __RPC_STUB IStorage_MoveElementTo_Stub(
  3537. IRpcStubBuffer *This,
  3538. IRpcChannelBuffer *_pRpcChannelBuffer,
  3539. PRPC_MESSAGE _pRpcMessage,
  3540. DWORD *_pdwStubPhase);
  3541. HRESULT STDMETHODCALLTYPE IStorage_Commit_Proxy(
  3542. IStorage * This,
  3543. /* [in] */ DWORD grfCommitFlags);
  3544. void __RPC_STUB IStorage_Commit_Stub(
  3545. IRpcStubBuffer *This,
  3546. IRpcChannelBuffer *_pRpcChannelBuffer,
  3547. PRPC_MESSAGE _pRpcMessage,
  3548. DWORD *_pdwStubPhase);
  3549. HRESULT STDMETHODCALLTYPE IStorage_Revert_Proxy(
  3550. IStorage * This);
  3551. void __RPC_STUB IStorage_Revert_Stub(
  3552. IRpcStubBuffer *This,
  3553. IRpcChannelBuffer *_pRpcChannelBuffer,
  3554. PRPC_MESSAGE _pRpcMessage,
  3555. DWORD *_pdwStubPhase);
  3556. /* [call_as] */ HRESULT STDMETHODCALLTYPE IStorage_RemoteEnumElements_Proxy(
  3557. IStorage * This,
  3558. /* [in] */ DWORD reserved1,
  3559. /* [in] */ unsigned long cbReserved2,
  3560. /* [size_is][unique][in] */ byte *reserved2,
  3561. /* [in] */ DWORD reserved3,
  3562. /* [out] */ IEnumSTATSTG **ppenum);
  3563. void __RPC_STUB IStorage_RemoteEnumElements_Stub(
  3564. IRpcStubBuffer *This,
  3565. IRpcChannelBuffer *_pRpcChannelBuffer,
  3566. PRPC_MESSAGE _pRpcMessage,
  3567. DWORD *_pdwStubPhase);
  3568. HRESULT STDMETHODCALLTYPE IStorage_DestroyElement_Proxy(
  3569. IStorage * This,
  3570. /* [string][in] */ const OLECHAR *pwcsName);
  3571. void __RPC_STUB IStorage_DestroyElement_Stub(
  3572. IRpcStubBuffer *This,
  3573. IRpcChannelBuffer *_pRpcChannelBuffer,
  3574. PRPC_MESSAGE _pRpcMessage,
  3575. DWORD *_pdwStubPhase);
  3576. HRESULT STDMETHODCALLTYPE IStorage_RenameElement_Proxy(
  3577. IStorage * This,
  3578. /* [string][in] */ const OLECHAR *pwcsOldName,
  3579. /* [string][in] */ const OLECHAR *pwcsNewName);
  3580. void __RPC_STUB IStorage_RenameElement_Stub(
  3581. IRpcStubBuffer *This,
  3582. IRpcChannelBuffer *_pRpcChannelBuffer,
  3583. PRPC_MESSAGE _pRpcMessage,
  3584. DWORD *_pdwStubPhase);
  3585. HRESULT STDMETHODCALLTYPE IStorage_SetElementTimes_Proxy(
  3586. IStorage * This,
  3587. /* [string][unique][in] */ const OLECHAR *pwcsName,
  3588. /* [unique][in] */ const FILETIME *pctime,
  3589. /* [unique][in] */ const FILETIME *patime,
  3590. /* [unique][in] */ const FILETIME *pmtime);
  3591. void __RPC_STUB IStorage_SetElementTimes_Stub(
  3592. IRpcStubBuffer *This,
  3593. IRpcChannelBuffer *_pRpcChannelBuffer,
  3594. PRPC_MESSAGE _pRpcMessage,
  3595. DWORD *_pdwStubPhase);
  3596. HRESULT STDMETHODCALLTYPE IStorage_SetClass_Proxy(
  3597. IStorage * This,
  3598. /* [in] */ REFCLSID clsid);
  3599. void __RPC_STUB IStorage_SetClass_Stub(
  3600. IRpcStubBuffer *This,
  3601. IRpcChannelBuffer *_pRpcChannelBuffer,
  3602. PRPC_MESSAGE _pRpcMessage,
  3603. DWORD *_pdwStubPhase);
  3604. HRESULT STDMETHODCALLTYPE IStorage_SetStateBits_Proxy(
  3605. IStorage * This,
  3606. /* [in] */ DWORD grfStateBits,
  3607. /* [in] */ DWORD grfMask);
  3608. void __RPC_STUB IStorage_SetStateBits_Stub(
  3609. IRpcStubBuffer *This,
  3610. IRpcChannelBuffer *_pRpcChannelBuffer,
  3611. PRPC_MESSAGE _pRpcMessage,
  3612. DWORD *_pdwStubPhase);
  3613. HRESULT STDMETHODCALLTYPE IStorage_Stat_Proxy(
  3614. IStorage * This,
  3615. /* [out] */ STATSTG *pstatstg,
  3616. /* [in] */ DWORD grfStatFlag);
  3617. void __RPC_STUB IStorage_Stat_Stub(
  3618. IRpcStubBuffer *This,
  3619. IRpcChannelBuffer *_pRpcChannelBuffer,
  3620. PRPC_MESSAGE _pRpcMessage,
  3621. DWORD *_pdwStubPhase);
  3622. #endif /* __IStorage_INTERFACE_DEFINED__ */
  3623. #ifndef __IPersistFile_INTERFACE_DEFINED__
  3624. #define __IPersistFile_INTERFACE_DEFINED__
  3625. /* interface IPersistFile */
  3626. /* [unique][uuid][object] */
  3627. typedef /* [unique] */ IPersistFile *LPPERSISTFILE;
  3628. EXTERN_C const IID IID_IPersistFile;
  3629. #if defined(__cplusplus) && !defined(CINTERFACE)
  3630. MIDL_INTERFACE("0000010b-0000-0000-C000-000000000046")
  3631. IPersistFile : public IPersist
  3632. {
  3633. public:
  3634. virtual HRESULT STDMETHODCALLTYPE IsDirty( void) = 0;
  3635. virtual HRESULT STDMETHODCALLTYPE Load(
  3636. /* [in] */ LPCOLESTR pszFileName,
  3637. /* [in] */ DWORD dwMode) = 0;
  3638. virtual HRESULT STDMETHODCALLTYPE Save(
  3639. /* [unique][in] */ LPCOLESTR pszFileName,
  3640. /* [in] */ BOOL fRemember) = 0;
  3641. virtual HRESULT STDMETHODCALLTYPE SaveCompleted(
  3642. /* [unique][in] */ LPCOLESTR pszFileName) = 0;
  3643. virtual HRESULT STDMETHODCALLTYPE GetCurFile(
  3644. /* [out] */ LPOLESTR *ppszFileName) = 0;
  3645. };
  3646. #else /* C style interface */
  3647. typedef struct IPersistFileVtbl
  3648. {
  3649. BEGIN_INTERFACE
  3650. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  3651. IPersistFile * This,
  3652. /* [in] */ REFIID riid,
  3653. /* [iid_is][out] */ void **ppvObject);
  3654. ULONG ( STDMETHODCALLTYPE *AddRef )(
  3655. IPersistFile * This);
  3656. ULONG ( STDMETHODCALLTYPE *Release )(
  3657. IPersistFile * This);
  3658. HRESULT ( STDMETHODCALLTYPE *GetClassID )(
  3659. IPersistFile * This,
  3660. /* [out] */ CLSID *pClassID);
  3661. HRESULT ( STDMETHODCALLTYPE *IsDirty )(
  3662. IPersistFile * This);
  3663. HRESULT ( STDMETHODCALLTYPE *Load )(
  3664. IPersistFile * This,
  3665. /* [in] */ LPCOLESTR pszFileName,
  3666. /* [in] */ DWORD dwMode);
  3667. HRESULT ( STDMETHODCALLTYPE *Save )(
  3668. IPersistFile * This,
  3669. /* [unique][in] */ LPCOLESTR pszFileName,
  3670. /* [in] */ BOOL fRemember);
  3671. HRESULT ( STDMETHODCALLTYPE *SaveCompleted )(
  3672. IPersistFile * This,
  3673. /* [unique][in] */ LPCOLESTR pszFileName);
  3674. HRESULT ( STDMETHODCALLTYPE *GetCurFile )(
  3675. IPersistFile * This,
  3676. /* [out] */ LPOLESTR *ppszFileName);
  3677. END_INTERFACE
  3678. } IPersistFileVtbl;
  3679. interface IPersistFile
  3680. {
  3681. CONST_VTBL struct IPersistFileVtbl *lpVtbl;
  3682. };
  3683. #ifdef COBJMACROS
  3684. #define IPersistFile_QueryInterface(This,riid,ppvObject) \
  3685. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3686. #define IPersistFile_AddRef(This) \
  3687. (This)->lpVtbl -> AddRef(This)
  3688. #define IPersistFile_Release(This) \
  3689. (This)->lpVtbl -> Release(This)
  3690. #define IPersistFile_GetClassID(This,pClassID) \
  3691. (This)->lpVtbl -> GetClassID(This,pClassID)
  3692. #define IPersistFile_IsDirty(This) \
  3693. (This)->lpVtbl -> IsDirty(This)
  3694. #define IPersistFile_Load(This,pszFileName,dwMode) \
  3695. (This)->lpVtbl -> Load(This,pszFileName,dwMode)
  3696. #define IPersistFile_Save(This,pszFileName,fRemember) \
  3697. (This)->lpVtbl -> Save(This,pszFileName,fRemember)
  3698. #define IPersistFile_SaveCompleted(This,pszFileName) \
  3699. (This)->lpVtbl -> SaveCompleted(This,pszFileName)
  3700. #define IPersistFile_GetCurFile(This,ppszFileName) \
  3701. (This)->lpVtbl -> GetCurFile(This,ppszFileName)
  3702. #endif /* COBJMACROS */
  3703. #endif /* C style interface */
  3704. HRESULT STDMETHODCALLTYPE IPersistFile_IsDirty_Proxy(
  3705. IPersistFile * This);
  3706. void __RPC_STUB IPersistFile_IsDirty_Stub(
  3707. IRpcStubBuffer *This,
  3708. IRpcChannelBuffer *_pRpcChannelBuffer,
  3709. PRPC_MESSAGE _pRpcMessage,
  3710. DWORD *_pdwStubPhase);
  3711. HRESULT STDMETHODCALLTYPE IPersistFile_Load_Proxy(
  3712. IPersistFile * This,
  3713. /* [in] */ LPCOLESTR pszFileName,
  3714. /* [in] */ DWORD dwMode);
  3715. void __RPC_STUB IPersistFile_Load_Stub(
  3716. IRpcStubBuffer *This,
  3717. IRpcChannelBuffer *_pRpcChannelBuffer,
  3718. PRPC_MESSAGE _pRpcMessage,
  3719. DWORD *_pdwStubPhase);
  3720. HRESULT STDMETHODCALLTYPE IPersistFile_Save_Proxy(
  3721. IPersistFile * This,
  3722. /* [unique][in] */ LPCOLESTR pszFileName,
  3723. /* [in] */ BOOL fRemember);
  3724. void __RPC_STUB IPersistFile_Save_Stub(
  3725. IRpcStubBuffer *This,
  3726. IRpcChannelBuffer *_pRpcChannelBuffer,
  3727. PRPC_MESSAGE _pRpcMessage,
  3728. DWORD *_pdwStubPhase);
  3729. HRESULT STDMETHODCALLTYPE IPersistFile_SaveCompleted_Proxy(
  3730. IPersistFile * This,
  3731. /* [unique][in] */ LPCOLESTR pszFileName);
  3732. void __RPC_STUB IPersistFile_SaveCompleted_Stub(
  3733. IRpcStubBuffer *This,
  3734. IRpcChannelBuffer *_pRpcChannelBuffer,
  3735. PRPC_MESSAGE _pRpcMessage,
  3736. DWORD *_pdwStubPhase);
  3737. HRESULT STDMETHODCALLTYPE IPersistFile_GetCurFile_Proxy(
  3738. IPersistFile * This,
  3739. /* [out] */ LPOLESTR *ppszFileName);
  3740. void __RPC_STUB IPersistFile_GetCurFile_Stub(
  3741. IRpcStubBuffer *This,
  3742. IRpcChannelBuffer *_pRpcChannelBuffer,
  3743. PRPC_MESSAGE _pRpcMessage,
  3744. DWORD *_pdwStubPhase);
  3745. #endif /* __IPersistFile_INTERFACE_DEFINED__ */
  3746. #ifndef __IPersistStorage_INTERFACE_DEFINED__
  3747. #define __IPersistStorage_INTERFACE_DEFINED__
  3748. /* interface IPersistStorage */
  3749. /* [unique][uuid][object] */
  3750. typedef /* [unique] */ IPersistStorage *LPPERSISTSTORAGE;
  3751. EXTERN_C const IID IID_IPersistStorage;
  3752. #if defined(__cplusplus) && !defined(CINTERFACE)
  3753. MIDL_INTERFACE("0000010a-0000-0000-C000-000000000046")
  3754. IPersistStorage : public IPersist
  3755. {
  3756. public:
  3757. virtual HRESULT STDMETHODCALLTYPE IsDirty( void) = 0;
  3758. virtual HRESULT STDMETHODCALLTYPE InitNew(
  3759. /* [unique][in] */ IStorage *pStg) = 0;
  3760. virtual HRESULT STDMETHODCALLTYPE Load(
  3761. /* [unique][in] */ IStorage *pStg) = 0;
  3762. virtual HRESULT STDMETHODCALLTYPE Save(
  3763. /* [unique][in] */ IStorage *pStgSave,
  3764. /* [in] */ BOOL fSameAsLoad) = 0;
  3765. virtual HRESULT STDMETHODCALLTYPE SaveCompleted(
  3766. /* [unique][in] */ IStorage *pStgNew) = 0;
  3767. virtual HRESULT STDMETHODCALLTYPE HandsOffStorage( void) = 0;
  3768. };
  3769. #else /* C style interface */
  3770. typedef struct IPersistStorageVtbl
  3771. {
  3772. BEGIN_INTERFACE
  3773. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  3774. IPersistStorage * This,
  3775. /* [in] */ REFIID riid,
  3776. /* [iid_is][out] */ void **ppvObject);
  3777. ULONG ( STDMETHODCALLTYPE *AddRef )(
  3778. IPersistStorage * This);
  3779. ULONG ( STDMETHODCALLTYPE *Release )(
  3780. IPersistStorage * This);
  3781. HRESULT ( STDMETHODCALLTYPE *GetClassID )(
  3782. IPersistStorage * This,
  3783. /* [out] */ CLSID *pClassID);
  3784. HRESULT ( STDMETHODCALLTYPE *IsDirty )(
  3785. IPersistStorage * This);
  3786. HRESULT ( STDMETHODCALLTYPE *InitNew )(
  3787. IPersistStorage * This,
  3788. /* [unique][in] */ IStorage *pStg);
  3789. HRESULT ( STDMETHODCALLTYPE *Load )(
  3790. IPersistStorage * This,
  3791. /* [unique][in] */ IStorage *pStg);
  3792. HRESULT ( STDMETHODCALLTYPE *Save )(
  3793. IPersistStorage * This,
  3794. /* [unique][in] */ IStorage *pStgSave,
  3795. /* [in] */ BOOL fSameAsLoad);
  3796. HRESULT ( STDMETHODCALLTYPE *SaveCompleted )(
  3797. IPersistStorage * This,
  3798. /* [unique][in] */ IStorage *pStgNew);
  3799. HRESULT ( STDMETHODCALLTYPE *HandsOffStorage )(
  3800. IPersistStorage * This);
  3801. END_INTERFACE
  3802. } IPersistStorageVtbl;
  3803. interface IPersistStorage
  3804. {
  3805. CONST_VTBL struct IPersistStorageVtbl *lpVtbl;
  3806. };
  3807. #ifdef COBJMACROS
  3808. #define IPersistStorage_QueryInterface(This,riid,ppvObject) \
  3809. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3810. #define IPersistStorage_AddRef(This) \
  3811. (This)->lpVtbl -> AddRef(This)
  3812. #define IPersistStorage_Release(This) \
  3813. (This)->lpVtbl -> Release(This)
  3814. #define IPersistStorage_GetClassID(This,pClassID) \
  3815. (This)->lpVtbl -> GetClassID(This,pClassID)
  3816. #define IPersistStorage_IsDirty(This) \
  3817. (This)->lpVtbl -> IsDirty(This)
  3818. #define IPersistStorage_InitNew(This,pStg) \
  3819. (This)->lpVtbl -> InitNew(This,pStg)
  3820. #define IPersistStorage_Load(This,pStg) \
  3821. (This)->lpVtbl -> Load(This,pStg)
  3822. #define IPersistStorage_Save(This,pStgSave,fSameAsLoad) \
  3823. (This)->lpVtbl -> Save(This,pStgSave,fSameAsLoad)
  3824. #define IPersistStorage_SaveCompleted(This,pStgNew) \
  3825. (This)->lpVtbl -> SaveCompleted(This,pStgNew)
  3826. #define IPersistStorage_HandsOffStorage(This) \
  3827. (This)->lpVtbl -> HandsOffStorage(This)
  3828. #endif /* COBJMACROS */
  3829. #endif /* C style interface */
  3830. HRESULT STDMETHODCALLTYPE IPersistStorage_IsDirty_Proxy(
  3831. IPersistStorage * This);
  3832. void __RPC_STUB IPersistStorage_IsDirty_Stub(
  3833. IRpcStubBuffer *This,
  3834. IRpcChannelBuffer *_pRpcChannelBuffer,
  3835. PRPC_MESSAGE _pRpcMessage,
  3836. DWORD *_pdwStubPhase);
  3837. HRESULT STDMETHODCALLTYPE IPersistStorage_InitNew_Proxy(
  3838. IPersistStorage * This,
  3839. /* [unique][in] */ IStorage *pStg);
  3840. void __RPC_STUB IPersistStorage_InitNew_Stub(
  3841. IRpcStubBuffer *This,
  3842. IRpcChannelBuffer *_pRpcChannelBuffer,
  3843. PRPC_MESSAGE _pRpcMessage,
  3844. DWORD *_pdwStubPhase);
  3845. HRESULT STDMETHODCALLTYPE IPersistStorage_Load_Proxy(
  3846. IPersistStorage * This,
  3847. /* [unique][in] */ IStorage *pStg);
  3848. void __RPC_STUB IPersistStorage_Load_Stub(
  3849. IRpcStubBuffer *This,
  3850. IRpcChannelBuffer *_pRpcChannelBuffer,
  3851. PRPC_MESSAGE _pRpcMessage,
  3852. DWORD *_pdwStubPhase);
  3853. HRESULT STDMETHODCALLTYPE IPersistStorage_Save_Proxy(
  3854. IPersistStorage * This,
  3855. /* [unique][in] */ IStorage *pStgSave,
  3856. /* [in] */ BOOL fSameAsLoad);
  3857. void __RPC_STUB IPersistStorage_Save_Stub(
  3858. IRpcStubBuffer *This,
  3859. IRpcChannelBuffer *_pRpcChannelBuffer,
  3860. PRPC_MESSAGE _pRpcMessage,
  3861. DWORD *_pdwStubPhase);
  3862. HRESULT STDMETHODCALLTYPE IPersistStorage_SaveCompleted_Proxy(
  3863. IPersistStorage * This,
  3864. /* [unique][in] */ IStorage *pStgNew);
  3865. void __RPC_STUB IPersistStorage_SaveCompleted_Stub(
  3866. IRpcStubBuffer *This,
  3867. IRpcChannelBuffer *_pRpcChannelBuffer,
  3868. PRPC_MESSAGE _pRpcMessage,
  3869. DWORD *_pdwStubPhase);
  3870. HRESULT STDMETHODCALLTYPE IPersistStorage_HandsOffStorage_Proxy(
  3871. IPersistStorage * This);
  3872. void __RPC_STUB IPersistStorage_HandsOffStorage_Stub(
  3873. IRpcStubBuffer *This,
  3874. IRpcChannelBuffer *_pRpcChannelBuffer,
  3875. PRPC_MESSAGE _pRpcMessage,
  3876. DWORD *_pdwStubPhase);
  3877. #endif /* __IPersistStorage_INTERFACE_DEFINED__ */
  3878. #ifndef __ILockBytes_INTERFACE_DEFINED__
  3879. #define __ILockBytes_INTERFACE_DEFINED__
  3880. /* interface ILockBytes */
  3881. /* [unique][uuid][object] */
  3882. typedef /* [unique] */ ILockBytes *LPLOCKBYTES;
  3883. EXTERN_C const IID IID_ILockBytes;
  3884. #if defined(__cplusplus) && !defined(CINTERFACE)
  3885. MIDL_INTERFACE("0000000a-0000-0000-C000-000000000046")
  3886. ILockBytes : public IUnknown
  3887. {
  3888. public:
  3889. virtual /* [local] */ HRESULT STDMETHODCALLTYPE ReadAt(
  3890. /* [in] */ ULARGE_INTEGER ulOffset,
  3891. /* [length_is][size_is][out] */ void *pv,
  3892. /* [in] */ ULONG cb,
  3893. /* [out] */ ULONG *pcbRead) = 0;
  3894. virtual /* [local] */ HRESULT STDMETHODCALLTYPE WriteAt(
  3895. /* [in] */ ULARGE_INTEGER ulOffset,
  3896. /* [size_is][in] */ const void *pv,
  3897. /* [in] */ ULONG cb,
  3898. /* [out] */ ULONG *pcbWritten) = 0;
  3899. virtual HRESULT STDMETHODCALLTYPE Flush( void) = 0;
  3900. virtual HRESULT STDMETHODCALLTYPE SetSize(
  3901. /* [in] */ ULARGE_INTEGER cb) = 0;
  3902. virtual HRESULT STDMETHODCALLTYPE LockRegion(
  3903. /* [in] */ ULARGE_INTEGER libOffset,
  3904. /* [in] */ ULARGE_INTEGER cb,
  3905. /* [in] */ DWORD dwLockType) = 0;
  3906. virtual HRESULT STDMETHODCALLTYPE UnlockRegion(
  3907. /* [in] */ ULARGE_INTEGER libOffset,
  3908. /* [in] */ ULARGE_INTEGER cb,
  3909. /* [in] */ DWORD dwLockType) = 0;
  3910. virtual HRESULT STDMETHODCALLTYPE Stat(
  3911. /* [out] */ STATSTG *pstatstg,
  3912. /* [in] */ DWORD grfStatFlag) = 0;
  3913. };
  3914. #else /* C style interface */
  3915. typedef struct ILockBytesVtbl
  3916. {
  3917. BEGIN_INTERFACE
  3918. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  3919. ILockBytes * This,
  3920. /* [in] */ REFIID riid,
  3921. /* [iid_is][out] */ void **ppvObject);
  3922. ULONG ( STDMETHODCALLTYPE *AddRef )(
  3923. ILockBytes * This);
  3924. ULONG ( STDMETHODCALLTYPE *Release )(
  3925. ILockBytes * This);
  3926. /* [local] */ HRESULT ( STDMETHODCALLTYPE *ReadAt )(
  3927. ILockBytes * This,
  3928. /* [in] */ ULARGE_INTEGER ulOffset,
  3929. /* [length_is][size_is][out] */ void *pv,
  3930. /* [in] */ ULONG cb,
  3931. /* [out] */ ULONG *pcbRead);
  3932. /* [local] */ HRESULT ( STDMETHODCALLTYPE *WriteAt )(
  3933. ILockBytes * This,
  3934. /* [in] */ ULARGE_INTEGER ulOffset,
  3935. /* [size_is][in] */ const void *pv,
  3936. /* [in] */ ULONG cb,
  3937. /* [out] */ ULONG *pcbWritten);
  3938. HRESULT ( STDMETHODCALLTYPE *Flush )(
  3939. ILockBytes * This);
  3940. HRESULT ( STDMETHODCALLTYPE *SetSize )(
  3941. ILockBytes * This,
  3942. /* [in] */ ULARGE_INTEGER cb);
  3943. HRESULT ( STDMETHODCALLTYPE *LockRegion )(
  3944. ILockBytes * This,
  3945. /* [in] */ ULARGE_INTEGER libOffset,
  3946. /* [in] */ ULARGE_INTEGER cb,
  3947. /* [in] */ DWORD dwLockType);
  3948. HRESULT ( STDMETHODCALLTYPE *UnlockRegion )(
  3949. ILockBytes * This,
  3950. /* [in] */ ULARGE_INTEGER libOffset,
  3951. /* [in] */ ULARGE_INTEGER cb,
  3952. /* [in] */ DWORD dwLockType);
  3953. HRESULT ( STDMETHODCALLTYPE *Stat )(
  3954. ILockBytes * This,
  3955. /* [out] */ STATSTG *pstatstg,
  3956. /* [in] */ DWORD grfStatFlag);
  3957. END_INTERFACE
  3958. } ILockBytesVtbl;
  3959. interface ILockBytes
  3960. {
  3961. CONST_VTBL struct ILockBytesVtbl *lpVtbl;
  3962. };
  3963. #ifdef COBJMACROS
  3964. #define ILockBytes_QueryInterface(This,riid,ppvObject) \
  3965. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3966. #define ILockBytes_AddRef(This) \
  3967. (This)->lpVtbl -> AddRef(This)
  3968. #define ILockBytes_Release(This) \
  3969. (This)->lpVtbl -> Release(This)
  3970. #define ILockBytes_ReadAt(This,ulOffset,pv,cb,pcbRead) \
  3971. (This)->lpVtbl -> ReadAt(This,ulOffset,pv,cb,pcbRead)
  3972. #define ILockBytes_WriteAt(This,ulOffset,pv,cb,pcbWritten) \
  3973. (This)->lpVtbl -> WriteAt(This,ulOffset,pv,cb,pcbWritten)
  3974. #define ILockBytes_Flush(This) \
  3975. (This)->lpVtbl -> Flush(This)
  3976. #define ILockBytes_SetSize(This,cb) \
  3977. (This)->lpVtbl -> SetSize(This,cb)
  3978. #define ILockBytes_LockRegion(This,libOffset,cb,dwLockType) \
  3979. (This)->lpVtbl -> LockRegion(This,libOffset,cb,dwLockType)
  3980. #define ILockBytes_UnlockRegion(This,libOffset,cb,dwLockType) \
  3981. (This)->lpVtbl -> UnlockRegion(This,libOffset,cb,dwLockType)
  3982. #define ILockBytes_Stat(This,pstatstg,grfStatFlag) \
  3983. (This)->lpVtbl -> Stat(This,pstatstg,grfStatFlag)
  3984. #endif /* COBJMACROS */
  3985. #endif /* C style interface */
  3986. /* [call_as] */ HRESULT __stdcall ILockBytes_RemoteReadAt_Proxy(
  3987. ILockBytes * This,
  3988. /* [in] */ ULARGE_INTEGER ulOffset,
  3989. /* [length_is][size_is][out] */ byte *pv,
  3990. /* [in] */ ULONG cb,
  3991. /* [out] */ ULONG *pcbRead);
  3992. void __RPC_STUB ILockBytes_RemoteReadAt_Stub(
  3993. IRpcStubBuffer *This,
  3994. IRpcChannelBuffer *_pRpcChannelBuffer,
  3995. PRPC_MESSAGE _pRpcMessage,
  3996. DWORD *_pdwStubPhase);
  3997. /* [call_as] */ HRESULT STDMETHODCALLTYPE ILockBytes_RemoteWriteAt_Proxy(
  3998. ILockBytes * This,
  3999. /* [in] */ ULARGE_INTEGER ulOffset,
  4000. /* [size_is][in] */ const byte *pv,
  4001. /* [in] */ ULONG cb,
  4002. /* [out] */ ULONG *pcbWritten);
  4003. void __RPC_STUB ILockBytes_RemoteWriteAt_Stub(
  4004. IRpcStubBuffer *This,
  4005. IRpcChannelBuffer *_pRpcChannelBuffer,
  4006. PRPC_MESSAGE _pRpcMessage,
  4007. DWORD *_pdwStubPhase);
  4008. HRESULT STDMETHODCALLTYPE ILockBytes_Flush_Proxy(
  4009. ILockBytes * This);
  4010. void __RPC_STUB ILockBytes_Flush_Stub(
  4011. IRpcStubBuffer *This,
  4012. IRpcChannelBuffer *_pRpcChannelBuffer,
  4013. PRPC_MESSAGE _pRpcMessage,
  4014. DWORD *_pdwStubPhase);
  4015. HRESULT STDMETHODCALLTYPE ILockBytes_SetSize_Proxy(
  4016. ILockBytes * This,
  4017. /* [in] */ ULARGE_INTEGER cb);
  4018. void __RPC_STUB ILockBytes_SetSize_Stub(
  4019. IRpcStubBuffer *This,
  4020. IRpcChannelBuffer *_pRpcChannelBuffer,
  4021. PRPC_MESSAGE _pRpcMessage,
  4022. DWORD *_pdwStubPhase);
  4023. HRESULT STDMETHODCALLTYPE ILockBytes_LockRegion_Proxy(
  4024. ILockBytes * This,
  4025. /* [in] */ ULARGE_INTEGER libOffset,
  4026. /* [in] */ ULARGE_INTEGER cb,
  4027. /* [in] */ DWORD dwLockType);
  4028. void __RPC_STUB ILockBytes_LockRegion_Stub(
  4029. IRpcStubBuffer *This,
  4030. IRpcChannelBuffer *_pRpcChannelBuffer,
  4031. PRPC_MESSAGE _pRpcMessage,
  4032. DWORD *_pdwStubPhase);
  4033. HRESULT STDMETHODCALLTYPE ILockBytes_UnlockRegion_Proxy(
  4034. ILockBytes * This,
  4035. /* [in] */ ULARGE_INTEGER libOffset,
  4036. /* [in] */ ULARGE_INTEGER cb,
  4037. /* [in] */ DWORD dwLockType);
  4038. void __RPC_STUB ILockBytes_UnlockRegion_Stub(
  4039. IRpcStubBuffer *This,
  4040. IRpcChannelBuffer *_pRpcChannelBuffer,
  4041. PRPC_MESSAGE _pRpcMessage,
  4042. DWORD *_pdwStubPhase);
  4043. HRESULT STDMETHODCALLTYPE ILockBytes_Stat_Proxy(
  4044. ILockBytes * This,
  4045. /* [out] */ STATSTG *pstatstg,
  4046. /* [in] */ DWORD grfStatFlag);
  4047. void __RPC_STUB ILockBytes_Stat_Stub(
  4048. IRpcStubBuffer *This,
  4049. IRpcChannelBuffer *_pRpcChannelBuffer,
  4050. PRPC_MESSAGE _pRpcMessage,
  4051. DWORD *_pdwStubPhase);
  4052. #endif /* __ILockBytes_INTERFACE_DEFINED__ */
  4053. #ifndef __IEnumFORMATETC_INTERFACE_DEFINED__
  4054. #define __IEnumFORMATETC_INTERFACE_DEFINED__
  4055. /* interface IEnumFORMATETC */
  4056. /* [unique][uuid][object] */
  4057. typedef /* [unique] */ IEnumFORMATETC *LPENUMFORMATETC;
  4058. typedef struct tagDVTARGETDEVICE
  4059. {
  4060. DWORD tdSize;
  4061. WORD tdDriverNameOffset;
  4062. WORD tdDeviceNameOffset;
  4063. WORD tdPortNameOffset;
  4064. WORD tdExtDevmodeOffset;
  4065. /* [size_is] */ BYTE tdData[ 1 ];
  4066. } DVTARGETDEVICE;
  4067. typedef CLIPFORMAT *LPCLIPFORMAT;
  4068. typedef struct tagFORMATETC
  4069. {
  4070. CLIPFORMAT cfFormat;
  4071. /* [unique] */ DVTARGETDEVICE *ptd;
  4072. DWORD dwAspect;
  4073. LONG lindex;
  4074. DWORD tymed;
  4075. } FORMATETC;
  4076. typedef struct tagFORMATETC *LPFORMATETC;
  4077. EXTERN_C const IID IID_IEnumFORMATETC;
  4078. #if defined(__cplusplus) && !defined(CINTERFACE)
  4079. MIDL_INTERFACE("00000103-0000-0000-C000-000000000046")
  4080. IEnumFORMATETC : public IUnknown
  4081. {
  4082. public:
  4083. virtual /* [local] */ HRESULT STDMETHODCALLTYPE Next(
  4084. /* [in] */ ULONG celt,
  4085. /* [length_is][size_is][out] */ FORMATETC *rgelt,
  4086. /* [out] */ ULONG *pceltFetched) = 0;
  4087. virtual HRESULT STDMETHODCALLTYPE Skip(
  4088. /* [in] */ ULONG celt) = 0;
  4089. virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  4090. virtual HRESULT STDMETHODCALLTYPE Clone(
  4091. /* [out] */ IEnumFORMATETC **ppenum) = 0;
  4092. };
  4093. #else /* C style interface */
  4094. typedef struct IEnumFORMATETCVtbl
  4095. {
  4096. BEGIN_INTERFACE
  4097. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  4098. IEnumFORMATETC * This,
  4099. /* [in] */ REFIID riid,
  4100. /* [iid_is][out] */ void **ppvObject);
  4101. ULONG ( STDMETHODCALLTYPE *AddRef )(
  4102. IEnumFORMATETC * This);
  4103. ULONG ( STDMETHODCALLTYPE *Release )(
  4104. IEnumFORMATETC * This);
  4105. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Next )(
  4106. IEnumFORMATETC * This,
  4107. /* [in] */ ULONG celt,
  4108. /* [length_is][size_is][out] */ FORMATETC *rgelt,
  4109. /* [out] */ ULONG *pceltFetched);
  4110. HRESULT ( STDMETHODCALLTYPE *Skip )(
  4111. IEnumFORMATETC * This,
  4112. /* [in] */ ULONG celt);
  4113. HRESULT ( STDMETHODCALLTYPE *Reset )(
  4114. IEnumFORMATETC * This);
  4115. HRESULT ( STDMETHODCALLTYPE *Clone )(
  4116. IEnumFORMATETC * This,
  4117. /* [out] */ IEnumFORMATETC **ppenum);
  4118. END_INTERFACE
  4119. } IEnumFORMATETCVtbl;
  4120. interface IEnumFORMATETC
  4121. {
  4122. CONST_VTBL struct IEnumFORMATETCVtbl *lpVtbl;
  4123. };
  4124. #ifdef COBJMACROS
  4125. #define IEnumFORMATETC_QueryInterface(This,riid,ppvObject) \
  4126. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4127. #define IEnumFORMATETC_AddRef(This) \
  4128. (This)->lpVtbl -> AddRef(This)
  4129. #define IEnumFORMATETC_Release(This) \
  4130. (This)->lpVtbl -> Release(This)
  4131. #define IEnumFORMATETC_Next(This,celt,rgelt,pceltFetched) \
  4132. (This)->lpVtbl -> Next(This,celt,rgelt,pceltFetched)
  4133. #define IEnumFORMATETC_Skip(This,celt) \
  4134. (This)->lpVtbl -> Skip(This,celt)
  4135. #define IEnumFORMATETC_Reset(This) \
  4136. (This)->lpVtbl -> Reset(This)
  4137. #define IEnumFORMATETC_Clone(This,ppenum) \
  4138. (This)->lpVtbl -> Clone(This,ppenum)
  4139. #endif /* COBJMACROS */
  4140. #endif /* C style interface */
  4141. /* [call_as] */ HRESULT STDMETHODCALLTYPE IEnumFORMATETC_RemoteNext_Proxy(
  4142. IEnumFORMATETC * This,
  4143. /* [in] */ ULONG celt,
  4144. /* [length_is][size_is][out] */ FORMATETC *rgelt,
  4145. /* [out] */ ULONG *pceltFetched);
  4146. void __RPC_STUB IEnumFORMATETC_RemoteNext_Stub(
  4147. IRpcStubBuffer *This,
  4148. IRpcChannelBuffer *_pRpcChannelBuffer,
  4149. PRPC_MESSAGE _pRpcMessage,
  4150. DWORD *_pdwStubPhase);
  4151. HRESULT STDMETHODCALLTYPE IEnumFORMATETC_Skip_Proxy(
  4152. IEnumFORMATETC * This,
  4153. /* [in] */ ULONG celt);
  4154. void __RPC_STUB IEnumFORMATETC_Skip_Stub(
  4155. IRpcStubBuffer *This,
  4156. IRpcChannelBuffer *_pRpcChannelBuffer,
  4157. PRPC_MESSAGE _pRpcMessage,
  4158. DWORD *_pdwStubPhase);
  4159. HRESULT STDMETHODCALLTYPE IEnumFORMATETC_Reset_Proxy(
  4160. IEnumFORMATETC * This);
  4161. void __RPC_STUB IEnumFORMATETC_Reset_Stub(
  4162. IRpcStubBuffer *This,
  4163. IRpcChannelBuffer *_pRpcChannelBuffer,
  4164. PRPC_MESSAGE _pRpcMessage,
  4165. DWORD *_pdwStubPhase);
  4166. HRESULT STDMETHODCALLTYPE IEnumFORMATETC_Clone_Proxy(
  4167. IEnumFORMATETC * This,
  4168. /* [out] */ IEnumFORMATETC **ppenum);
  4169. void __RPC_STUB IEnumFORMATETC_Clone_Stub(
  4170. IRpcStubBuffer *This,
  4171. IRpcChannelBuffer *_pRpcChannelBuffer,
  4172. PRPC_MESSAGE _pRpcMessage,
  4173. DWORD *_pdwStubPhase);
  4174. #endif /* __IEnumFORMATETC_INTERFACE_DEFINED__ */
  4175. #ifndef __IEnumSTATDATA_INTERFACE_DEFINED__
  4176. #define __IEnumSTATDATA_INTERFACE_DEFINED__
  4177. /* interface IEnumSTATDATA */
  4178. /* [unique][uuid][object] */
  4179. typedef /* [unique] */ IEnumSTATDATA *LPENUMSTATDATA;
  4180. typedef
  4181. enum tagADVF
  4182. { ADVF_NODATA = 1,
  4183. ADVF_PRIMEFIRST = 2,
  4184. ADVF_ONLYONCE = 4,
  4185. ADVF_DATAONSTOP = 64,
  4186. ADVFCACHE_NOHANDLER = 8,
  4187. ADVFCACHE_FORCEBUILTIN = 16,
  4188. ADVFCACHE_ONSAVE = 32
  4189. } ADVF;
  4190. typedef struct tagSTATDATA
  4191. {
  4192. FORMATETC formatetc;
  4193. DWORD advf;
  4194. /* [unique] */ IAdviseSink *pAdvSink;
  4195. DWORD dwConnection;
  4196. } STATDATA;
  4197. typedef STATDATA *LPSTATDATA;
  4198. EXTERN_C const IID IID_IEnumSTATDATA;
  4199. #if defined(__cplusplus) && !defined(CINTERFACE)
  4200. MIDL_INTERFACE("00000105-0000-0000-C000-000000000046")
  4201. IEnumSTATDATA : public IUnknown
  4202. {
  4203. public:
  4204. virtual /* [local] */ HRESULT STDMETHODCALLTYPE Next(
  4205. /* [in] */ ULONG celt,
  4206. /* [length_is][size_is][out] */ STATDATA *rgelt,
  4207. /* [out] */ ULONG *pceltFetched) = 0;
  4208. virtual HRESULT STDMETHODCALLTYPE Skip(
  4209. /* [in] */ ULONG celt) = 0;
  4210. virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  4211. virtual HRESULT STDMETHODCALLTYPE Clone(
  4212. /* [out] */ IEnumSTATDATA **ppenum) = 0;
  4213. };
  4214. #else /* C style interface */
  4215. typedef struct IEnumSTATDATAVtbl
  4216. {
  4217. BEGIN_INTERFACE
  4218. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  4219. IEnumSTATDATA * This,
  4220. /* [in] */ REFIID riid,
  4221. /* [iid_is][out] */ void **ppvObject);
  4222. ULONG ( STDMETHODCALLTYPE *AddRef )(
  4223. IEnumSTATDATA * This);
  4224. ULONG ( STDMETHODCALLTYPE *Release )(
  4225. IEnumSTATDATA * This);
  4226. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Next )(
  4227. IEnumSTATDATA * This,
  4228. /* [in] */ ULONG celt,
  4229. /* [length_is][size_is][out] */ STATDATA *rgelt,
  4230. /* [out] */ ULONG *pceltFetched);
  4231. HRESULT ( STDMETHODCALLTYPE *Skip )(
  4232. IEnumSTATDATA * This,
  4233. /* [in] */ ULONG celt);
  4234. HRESULT ( STDMETHODCALLTYPE *Reset )(
  4235. IEnumSTATDATA * This);
  4236. HRESULT ( STDMETHODCALLTYPE *Clone )(
  4237. IEnumSTATDATA * This,
  4238. /* [out] */ IEnumSTATDATA **ppenum);
  4239. END_INTERFACE
  4240. } IEnumSTATDATAVtbl;
  4241. interface IEnumSTATDATA
  4242. {
  4243. CONST_VTBL struct IEnumSTATDATAVtbl *lpVtbl;
  4244. };
  4245. #ifdef COBJMACROS
  4246. #define IEnumSTATDATA_QueryInterface(This,riid,ppvObject) \
  4247. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4248. #define IEnumSTATDATA_AddRef(This) \
  4249. (This)->lpVtbl -> AddRef(This)
  4250. #define IEnumSTATDATA_Release(This) \
  4251. (This)->lpVtbl -> Release(This)
  4252. #define IEnumSTATDATA_Next(This,celt,rgelt,pceltFetched) \
  4253. (This)->lpVtbl -> Next(This,celt,rgelt,pceltFetched)
  4254. #define IEnumSTATDATA_Skip(This,celt) \
  4255. (This)->lpVtbl -> Skip(This,celt)
  4256. #define IEnumSTATDATA_Reset(This) \
  4257. (This)->lpVtbl -> Reset(This)
  4258. #define IEnumSTATDATA_Clone(This,ppenum) \
  4259. (This)->lpVtbl -> Clone(This,ppenum)
  4260. #endif /* COBJMACROS */
  4261. #endif /* C style interface */
  4262. /* [call_as] */ HRESULT STDMETHODCALLTYPE IEnumSTATDATA_RemoteNext_Proxy(
  4263. IEnumSTATDATA * This,
  4264. /* [in] */ ULONG celt,
  4265. /* [length_is][size_is][out] */ STATDATA *rgelt,
  4266. /* [out] */ ULONG *pceltFetched);
  4267. void __RPC_STUB IEnumSTATDATA_RemoteNext_Stub(
  4268. IRpcStubBuffer *This,
  4269. IRpcChannelBuffer *_pRpcChannelBuffer,
  4270. PRPC_MESSAGE _pRpcMessage,
  4271. DWORD *_pdwStubPhase);
  4272. HRESULT STDMETHODCALLTYPE IEnumSTATDATA_Skip_Proxy(
  4273. IEnumSTATDATA * This,
  4274. /* [in] */ ULONG celt);
  4275. void __RPC_STUB IEnumSTATDATA_Skip_Stub(
  4276. IRpcStubBuffer *This,
  4277. IRpcChannelBuffer *_pRpcChannelBuffer,
  4278. PRPC_MESSAGE _pRpcMessage,
  4279. DWORD *_pdwStubPhase);
  4280. HRESULT STDMETHODCALLTYPE IEnumSTATDATA_Reset_Proxy(
  4281. IEnumSTATDATA * This);
  4282. void __RPC_STUB IEnumSTATDATA_Reset_Stub(
  4283. IRpcStubBuffer *This,
  4284. IRpcChannelBuffer *_pRpcChannelBuffer,
  4285. PRPC_MESSAGE _pRpcMessage,
  4286. DWORD *_pdwStubPhase);
  4287. HRESULT STDMETHODCALLTYPE IEnumSTATDATA_Clone_Proxy(
  4288. IEnumSTATDATA * This,
  4289. /* [out] */ IEnumSTATDATA **ppenum);
  4290. void __RPC_STUB IEnumSTATDATA_Clone_Stub(
  4291. IRpcStubBuffer *This,
  4292. IRpcChannelBuffer *_pRpcChannelBuffer,
  4293. PRPC_MESSAGE _pRpcMessage,
  4294. DWORD *_pdwStubPhase);
  4295. #endif /* __IEnumSTATDATA_INTERFACE_DEFINED__ */
  4296. #ifndef __IRootStorage_INTERFACE_DEFINED__
  4297. #define __IRootStorage_INTERFACE_DEFINED__
  4298. /* interface IRootStorage */
  4299. /* [unique][uuid][object] */
  4300. typedef /* [unique] */ IRootStorage *LPROOTSTORAGE;
  4301. EXTERN_C const IID IID_IRootStorage;
  4302. #if defined(__cplusplus) && !defined(CINTERFACE)
  4303. MIDL_INTERFACE("00000012-0000-0000-C000-000000000046")
  4304. IRootStorage : public IUnknown
  4305. {
  4306. public:
  4307. virtual HRESULT STDMETHODCALLTYPE SwitchToFile(
  4308. /* [in] */ LPOLESTR pszFile) = 0;
  4309. };
  4310. #else /* C style interface */
  4311. typedef struct IRootStorageVtbl
  4312. {
  4313. BEGIN_INTERFACE
  4314. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  4315. IRootStorage * This,
  4316. /* [in] */ REFIID riid,
  4317. /* [iid_is][out] */ void **ppvObject);
  4318. ULONG ( STDMETHODCALLTYPE *AddRef )(
  4319. IRootStorage * This);
  4320. ULONG ( STDMETHODCALLTYPE *Release )(
  4321. IRootStorage * This);
  4322. HRESULT ( STDMETHODCALLTYPE *SwitchToFile )(
  4323. IRootStorage * This,
  4324. /* [in] */ LPOLESTR pszFile);
  4325. END_INTERFACE
  4326. } IRootStorageVtbl;
  4327. interface IRootStorage
  4328. {
  4329. CONST_VTBL struct IRootStorageVtbl *lpVtbl;
  4330. };
  4331. #ifdef COBJMACROS
  4332. #define IRootStorage_QueryInterface(This,riid,ppvObject) \
  4333. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4334. #define IRootStorage_AddRef(This) \
  4335. (This)->lpVtbl -> AddRef(This)
  4336. #define IRootStorage_Release(This) \
  4337. (This)->lpVtbl -> Release(This)
  4338. #define IRootStorage_SwitchToFile(This,pszFile) \
  4339. (This)->lpVtbl -> SwitchToFile(This,pszFile)
  4340. #endif /* COBJMACROS */
  4341. #endif /* C style interface */
  4342. HRESULT STDMETHODCALLTYPE IRootStorage_SwitchToFile_Proxy(
  4343. IRootStorage * This,
  4344. /* [in] */ LPOLESTR pszFile);
  4345. void __RPC_STUB IRootStorage_SwitchToFile_Stub(
  4346. IRpcStubBuffer *This,
  4347. IRpcChannelBuffer *_pRpcChannelBuffer,
  4348. PRPC_MESSAGE _pRpcMessage,
  4349. DWORD *_pdwStubPhase);
  4350. #endif /* __IRootStorage_INTERFACE_DEFINED__ */
  4351. #ifndef __IAdviseSink_INTERFACE_DEFINED__
  4352. #define __IAdviseSink_INTERFACE_DEFINED__
  4353. /* interface IAdviseSink */
  4354. /* [unique][async_uuid][uuid][object] */
  4355. typedef IAdviseSink *LPADVISESINK;
  4356. typedef /* [v1_enum] */
  4357. enum tagTYMED
  4358. { TYMED_HGLOBAL = 1,
  4359. TYMED_FILE = 2,
  4360. TYMED_ISTREAM = 4,
  4361. TYMED_ISTORAGE = 8,
  4362. TYMED_GDI = 16,
  4363. TYMED_MFPICT = 32,
  4364. TYMED_ENHMF = 64,
  4365. TYMED_NULL = 0
  4366. } TYMED;
  4367. #ifndef RC_INVOKED
  4368. #if _MSC_VER >= 1200
  4369. #pragma warning(push)
  4370. #endif
  4371. #pragma warning(disable:4200)
  4372. #endif
  4373. typedef struct tagRemSTGMEDIUM
  4374. {
  4375. DWORD tymed;
  4376. DWORD dwHandleType;
  4377. unsigned long pData;
  4378. unsigned long pUnkForRelease;
  4379. unsigned long cbData;
  4380. /* [size_is] */ byte data[ 1 ];
  4381. } RemSTGMEDIUM;
  4382. #ifndef RC_INVOKED
  4383. #if _MSC_VER >= 1200
  4384. #pragma warning(pop)
  4385. #else
  4386. #pragma warning(default:4200)
  4387. #endif
  4388. #endif
  4389. #ifdef NONAMELESSUNION
  4390. typedef struct tagSTGMEDIUM {
  4391. DWORD tymed;
  4392. union {
  4393. HBITMAP hBitmap;
  4394. HMETAFILEPICT hMetaFilePict;
  4395. HENHMETAFILE hEnhMetaFile;
  4396. HGLOBAL hGlobal;
  4397. LPOLESTR lpszFileName;
  4398. IStream *pstm;
  4399. IStorage *pstg;
  4400. } u;
  4401. IUnknown *pUnkForRelease;
  4402. }uSTGMEDIUM;
  4403. #else
  4404. typedef struct tagSTGMEDIUM
  4405. {
  4406. DWORD tymed;
  4407. /* [switch_is][switch_type] */ union
  4408. {
  4409. /* [case()] */ HBITMAP hBitmap;
  4410. /* [case()] */ HMETAFILEPICT hMetaFilePict;
  4411. /* [case()] */ HENHMETAFILE hEnhMetaFile;
  4412. /* [case()] */ HGLOBAL hGlobal;
  4413. /* [case()] */ LPOLESTR lpszFileName;
  4414. /* [case()] */ IStream *pstm;
  4415. /* [case()] */ IStorage *pstg;
  4416. /* [default] */ /* Empty union arm */
  4417. } ;
  4418. /* [unique] */ IUnknown *pUnkForRelease;
  4419. } uSTGMEDIUM;
  4420. #endif /* !NONAMELESSUNION */
  4421. typedef struct _GDI_OBJECT
  4422. {
  4423. DWORD ObjectType;
  4424. /* [switch_is] */ /* [switch_type] */ union __MIDL_IAdviseSink_0002
  4425. {
  4426. /* [case()] */ wireHBITMAP hBitmap;
  4427. /* [case()] */ wireHPALETTE hPalette;
  4428. /* [default] */ wireHGLOBAL hGeneric;
  4429. } u;
  4430. } GDI_OBJECT;
  4431. typedef struct _userSTGMEDIUM
  4432. {
  4433. struct _STGMEDIUM_UNION
  4434. {
  4435. DWORD tymed;
  4436. /* [switch_is] */ /* [switch_type] */ union __MIDL_IAdviseSink_0003
  4437. {
  4438. /* [case()] */ /* Empty union arm */
  4439. /* [case()] */ wireHMETAFILEPICT hMetaFilePict;
  4440. /* [case()] */ wireHENHMETAFILE hHEnhMetaFile;
  4441. /* [case()] */ GDI_OBJECT *hGdiHandle;
  4442. /* [case()] */ wireHGLOBAL hGlobal;
  4443. /* [case()] */ LPOLESTR lpszFileName;
  4444. /* [case()] */ BYTE_BLOB *pstm;
  4445. /* [case()] */ BYTE_BLOB *pstg;
  4446. } u;
  4447. } ;
  4448. IUnknown *pUnkForRelease;
  4449. } userSTGMEDIUM;
  4450. typedef /* [unique] */ userSTGMEDIUM *wireSTGMEDIUM;
  4451. typedef /* [wire_marshal] */ uSTGMEDIUM STGMEDIUM;
  4452. typedef /* [unique] */ userSTGMEDIUM *wireASYNC_STGMEDIUM;
  4453. typedef /* [wire_marshal] */ STGMEDIUM ASYNC_STGMEDIUM;
  4454. typedef STGMEDIUM *LPSTGMEDIUM;
  4455. typedef struct _userFLAG_STGMEDIUM
  4456. {
  4457. long ContextFlags;
  4458. long fPassOwnership;
  4459. userSTGMEDIUM Stgmed;
  4460. } userFLAG_STGMEDIUM;
  4461. typedef /* [unique] */ userFLAG_STGMEDIUM *wireFLAG_STGMEDIUM;
  4462. typedef /* [wire_marshal] */ struct _FLAG_STGMEDIUM
  4463. {
  4464. long ContextFlags;
  4465. long fPassOwnership;
  4466. STGMEDIUM Stgmed;
  4467. } FLAG_STGMEDIUM;
  4468. EXTERN_C const IID IID_IAdviseSink;
  4469. #if defined(__cplusplus) && !defined(CINTERFACE)
  4470. MIDL_INTERFACE("0000010f-0000-0000-C000-000000000046")
  4471. IAdviseSink : public IUnknown
  4472. {
  4473. public:
  4474. virtual /* [local] */ void STDMETHODCALLTYPE OnDataChange(
  4475. /* [unique][in] */ FORMATETC *pFormatetc,
  4476. /* [unique][in] */ STGMEDIUM *pStgmed) = 0;
  4477. virtual /* [local] */ void STDMETHODCALLTYPE OnViewChange(
  4478. /* [in] */ DWORD dwAspect,
  4479. /* [in] */ LONG lindex) = 0;
  4480. virtual /* [local] */ void STDMETHODCALLTYPE OnRename(
  4481. /* [in] */ IMoniker *pmk) = 0;
  4482. virtual /* [local] */ void STDMETHODCALLTYPE OnSave( void) = 0;
  4483. virtual /* [local] */ void STDMETHODCALLTYPE OnClose( void) = 0;
  4484. };
  4485. #else /* C style interface */
  4486. typedef struct IAdviseSinkVtbl
  4487. {
  4488. BEGIN_INTERFACE
  4489. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  4490. IAdviseSink * This,
  4491. /* [in] */ REFIID riid,
  4492. /* [iid_is][out] */ void **ppvObject);
  4493. ULONG ( STDMETHODCALLTYPE *AddRef )(
  4494. IAdviseSink * This);
  4495. ULONG ( STDMETHODCALLTYPE *Release )(
  4496. IAdviseSink * This);
  4497. /* [local] */ void ( STDMETHODCALLTYPE *OnDataChange )(
  4498. IAdviseSink * This,
  4499. /* [unique][in] */ FORMATETC *pFormatetc,
  4500. /* [unique][in] */ STGMEDIUM *pStgmed);
  4501. /* [local] */ void ( STDMETHODCALLTYPE *OnViewChange )(
  4502. IAdviseSink * This,
  4503. /* [in] */ DWORD dwAspect,
  4504. /* [in] */ LONG lindex);
  4505. /* [local] */ void ( STDMETHODCALLTYPE *OnRename )(
  4506. IAdviseSink * This,
  4507. /* [in] */ IMoniker *pmk);
  4508. /* [local] */ void ( STDMETHODCALLTYPE *OnSave )(
  4509. IAdviseSink * This);
  4510. /* [local] */ void ( STDMETHODCALLTYPE *OnClose )(
  4511. IAdviseSink * This);
  4512. END_INTERFACE
  4513. } IAdviseSinkVtbl;
  4514. interface IAdviseSink
  4515. {
  4516. CONST_VTBL struct IAdviseSinkVtbl *lpVtbl;
  4517. };
  4518. #ifdef COBJMACROS
  4519. #define IAdviseSink_QueryInterface(This,riid,ppvObject) \
  4520. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4521. #define IAdviseSink_AddRef(This) \
  4522. (This)->lpVtbl -> AddRef(This)
  4523. #define IAdviseSink_Release(This) \
  4524. (This)->lpVtbl -> Release(This)
  4525. #define IAdviseSink_OnDataChange(This,pFormatetc,pStgmed) \
  4526. (This)->lpVtbl -> OnDataChange(This,pFormatetc,pStgmed)
  4527. #define IAdviseSink_OnViewChange(This,dwAspect,lindex) \
  4528. (This)->lpVtbl -> OnViewChange(This,dwAspect,lindex)
  4529. #define IAdviseSink_OnRename(This,pmk) \
  4530. (This)->lpVtbl -> OnRename(This,pmk)
  4531. #define IAdviseSink_OnSave(This) \
  4532. (This)->lpVtbl -> OnSave(This)
  4533. #define IAdviseSink_OnClose(This) \
  4534. (This)->lpVtbl -> OnClose(This)
  4535. #endif /* COBJMACROS */
  4536. #endif /* C style interface */
  4537. /* [call_as] */ HRESULT STDMETHODCALLTYPE IAdviseSink_RemoteOnDataChange_Proxy(
  4538. IAdviseSink * This,
  4539. /* [unique][in] */ FORMATETC *pFormatetc,
  4540. /* [unique][in] */ ASYNC_STGMEDIUM *pStgmed);
  4541. void __RPC_STUB IAdviseSink_RemoteOnDataChange_Stub(
  4542. IRpcStubBuffer *This,
  4543. IRpcChannelBuffer *_pRpcChannelBuffer,
  4544. PRPC_MESSAGE _pRpcMessage,
  4545. DWORD *_pdwStubPhase);
  4546. /* [call_as] */ HRESULT STDMETHODCALLTYPE IAdviseSink_RemoteOnViewChange_Proxy(
  4547. IAdviseSink * This,
  4548. /* [in] */ DWORD dwAspect,
  4549. /* [in] */ LONG lindex);
  4550. void __RPC_STUB IAdviseSink_RemoteOnViewChange_Stub(
  4551. IRpcStubBuffer *This,
  4552. IRpcChannelBuffer *_pRpcChannelBuffer,
  4553. PRPC_MESSAGE _pRpcMessage,
  4554. DWORD *_pdwStubPhase);
  4555. /* [call_as] */ HRESULT STDMETHODCALLTYPE IAdviseSink_RemoteOnRename_Proxy(
  4556. IAdviseSink * This,
  4557. /* [in] */ IMoniker *pmk);
  4558. void __RPC_STUB IAdviseSink_RemoteOnRename_Stub(
  4559. IRpcStubBuffer *This,
  4560. IRpcChannelBuffer *_pRpcChannelBuffer,
  4561. PRPC_MESSAGE _pRpcMessage,
  4562. DWORD *_pdwStubPhase);
  4563. /* [call_as] */ HRESULT STDMETHODCALLTYPE IAdviseSink_RemoteOnSave_Proxy(
  4564. IAdviseSink * This);
  4565. void __RPC_STUB IAdviseSink_RemoteOnSave_Stub(
  4566. IRpcStubBuffer *This,
  4567. IRpcChannelBuffer *_pRpcChannelBuffer,
  4568. PRPC_MESSAGE _pRpcMessage,
  4569. DWORD *_pdwStubPhase);
  4570. /* [call_as] */ HRESULT STDMETHODCALLTYPE IAdviseSink_RemoteOnClose_Proxy(
  4571. IAdviseSink * This);
  4572. void __RPC_STUB IAdviseSink_RemoteOnClose_Stub(
  4573. IRpcStubBuffer *This,
  4574. IRpcChannelBuffer *_pRpcChannelBuffer,
  4575. PRPC_MESSAGE _pRpcMessage,
  4576. DWORD *_pdwStubPhase);
  4577. #endif /* __IAdviseSink_INTERFACE_DEFINED__ */
  4578. #ifndef __AsyncIAdviseSink_INTERFACE_DEFINED__
  4579. #define __AsyncIAdviseSink_INTERFACE_DEFINED__
  4580. /* interface AsyncIAdviseSink */
  4581. /* [uuid][unique][object] */
  4582. EXTERN_C const IID IID_AsyncIAdviseSink;
  4583. #if defined(__cplusplus) && !defined(CINTERFACE)
  4584. MIDL_INTERFACE("00000150-0000-0000-C000-000000000046")
  4585. AsyncIAdviseSink : public IUnknown
  4586. {
  4587. public:
  4588. virtual /* [local] */ void STDMETHODCALLTYPE Begin_OnDataChange(
  4589. /* [unique][in] */ FORMATETC *pFormatetc,
  4590. /* [unique][in] */ STGMEDIUM *pStgmed) = 0;
  4591. virtual /* [local] */ void STDMETHODCALLTYPE Finish_OnDataChange( void) = 0;
  4592. virtual /* [local] */ void STDMETHODCALLTYPE Begin_OnViewChange(
  4593. /* [in] */ DWORD dwAspect,
  4594. /* [in] */ LONG lindex) = 0;
  4595. virtual /* [local] */ void STDMETHODCALLTYPE Finish_OnViewChange( void) = 0;
  4596. virtual /* [local] */ void STDMETHODCALLTYPE Begin_OnRename(
  4597. /* [in] */ IMoniker *pmk) = 0;
  4598. virtual /* [local] */ void STDMETHODCALLTYPE Finish_OnRename( void) = 0;
  4599. virtual /* [local] */ void STDMETHODCALLTYPE Begin_OnSave( void) = 0;
  4600. virtual /* [local] */ void STDMETHODCALLTYPE Finish_OnSave( void) = 0;
  4601. virtual /* [local] */ void STDMETHODCALLTYPE Begin_OnClose( void) = 0;
  4602. virtual /* [local] */ void STDMETHODCALLTYPE Finish_OnClose( void) = 0;
  4603. };
  4604. #else /* C style interface */
  4605. typedef struct AsyncIAdviseSinkVtbl
  4606. {
  4607. BEGIN_INTERFACE
  4608. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  4609. AsyncIAdviseSink * This,
  4610. /* [in] */ REFIID riid,
  4611. /* [iid_is][out] */ void **ppvObject);
  4612. ULONG ( STDMETHODCALLTYPE *AddRef )(
  4613. AsyncIAdviseSink * This);
  4614. ULONG ( STDMETHODCALLTYPE *Release )(
  4615. AsyncIAdviseSink * This);
  4616. /* [local] */ void ( STDMETHODCALLTYPE *Begin_OnDataChange )(
  4617. AsyncIAdviseSink * This,
  4618. /* [unique][in] */ FORMATETC *pFormatetc,
  4619. /* [unique][in] */ STGMEDIUM *pStgmed);
  4620. /* [local] */ void ( STDMETHODCALLTYPE *Finish_OnDataChange )(
  4621. AsyncIAdviseSink * This);
  4622. /* [local] */ void ( STDMETHODCALLTYPE *Begin_OnViewChange )(
  4623. AsyncIAdviseSink * This,
  4624. /* [in] */ DWORD dwAspect,
  4625. /* [in] */ LONG lindex);
  4626. /* [local] */ void ( STDMETHODCALLTYPE *Finish_OnViewChange )(
  4627. AsyncIAdviseSink * This);
  4628. /* [local] */ void ( STDMETHODCALLTYPE *Begin_OnRename )(
  4629. AsyncIAdviseSink * This,
  4630. /* [in] */ IMoniker *pmk);
  4631. /* [local] */ void ( STDMETHODCALLTYPE *Finish_OnRename )(
  4632. AsyncIAdviseSink * This);
  4633. /* [local] */ void ( STDMETHODCALLTYPE *Begin_OnSave )(
  4634. AsyncIAdviseSink * This);
  4635. /* [local] */ void ( STDMETHODCALLTYPE *Finish_OnSave )(
  4636. AsyncIAdviseSink * This);
  4637. /* [local] */ void ( STDMETHODCALLTYPE *Begin_OnClose )(
  4638. AsyncIAdviseSink * This);
  4639. /* [local] */ void ( STDMETHODCALLTYPE *Finish_OnClose )(
  4640. AsyncIAdviseSink * This);
  4641. END_INTERFACE
  4642. } AsyncIAdviseSinkVtbl;
  4643. interface AsyncIAdviseSink
  4644. {
  4645. CONST_VTBL struct AsyncIAdviseSinkVtbl *lpVtbl;
  4646. };
  4647. #ifdef COBJMACROS
  4648. #define AsyncIAdviseSink_QueryInterface(This,riid,ppvObject) \
  4649. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4650. #define AsyncIAdviseSink_AddRef(This) \
  4651. (This)->lpVtbl -> AddRef(This)
  4652. #define AsyncIAdviseSink_Release(This) \
  4653. (This)->lpVtbl -> Release(This)
  4654. #define AsyncIAdviseSink_Begin_OnDataChange(This,pFormatetc,pStgmed) \
  4655. (This)->lpVtbl -> Begin_OnDataChange(This,pFormatetc,pStgmed)
  4656. #define AsyncIAdviseSink_Finish_OnDataChange(This) \
  4657. (This)->lpVtbl -> Finish_OnDataChange(This)
  4658. #define AsyncIAdviseSink_Begin_OnViewChange(This,dwAspect,lindex) \
  4659. (This)->lpVtbl -> Begin_OnViewChange(This,dwAspect,lindex)
  4660. #define AsyncIAdviseSink_Finish_OnViewChange(This) \
  4661. (This)->lpVtbl -> Finish_OnViewChange(This)
  4662. #define AsyncIAdviseSink_Begin_OnRename(This,pmk) \
  4663. (This)->lpVtbl -> Begin_OnRename(This,pmk)
  4664. #define AsyncIAdviseSink_Finish_OnRename(This) \
  4665. (This)->lpVtbl -> Finish_OnRename(This)
  4666. #define AsyncIAdviseSink_Begin_OnSave(This) \
  4667. (This)->lpVtbl -> Begin_OnSave(This)
  4668. #define AsyncIAdviseSink_Finish_OnSave(This) \
  4669. (This)->lpVtbl -> Finish_OnSave(This)
  4670. #define AsyncIAdviseSink_Begin_OnClose(This) \
  4671. (This)->lpVtbl -> Begin_OnClose(This)
  4672. #define AsyncIAdviseSink_Finish_OnClose(This) \
  4673. (This)->lpVtbl -> Finish_OnClose(This)
  4674. #endif /* COBJMACROS */
  4675. #endif /* C style interface */
  4676. /* [call_as] */ HRESULT STDMETHODCALLTYPE AsyncIAdviseSink_Begin_RemoteOnDataChange_Proxy(
  4677. AsyncIAdviseSink * This,
  4678. /* [unique][in] */ FORMATETC *pFormatetc,
  4679. /* [unique][in] */ ASYNC_STGMEDIUM *pStgmed);
  4680. void __RPC_STUB AsyncIAdviseSink_Begin_RemoteOnDataChange_Stub(
  4681. IRpcStubBuffer *This,
  4682. IRpcChannelBuffer *_pRpcChannelBuffer,
  4683. PRPC_MESSAGE _pRpcMessage,
  4684. DWORD *_pdwStubPhase);
  4685. /* [call_as] */ HRESULT STDMETHODCALLTYPE AsyncIAdviseSink_Finish_RemoteOnDataChange_Proxy(
  4686. AsyncIAdviseSink * This);
  4687. void __RPC_STUB AsyncIAdviseSink_Finish_RemoteOnDataChange_Stub(
  4688. IRpcStubBuffer *This,
  4689. IRpcChannelBuffer *_pRpcChannelBuffer,
  4690. PRPC_MESSAGE _pRpcMessage,
  4691. DWORD *_pdwStubPhase);
  4692. /* [call_as] */ HRESULT STDMETHODCALLTYPE AsyncIAdviseSink_Begin_RemoteOnViewChange_Proxy(
  4693. AsyncIAdviseSink * This,
  4694. /* [in] */ DWORD dwAspect,
  4695. /* [in] */ LONG lindex);
  4696. void __RPC_STUB AsyncIAdviseSink_Begin_RemoteOnViewChange_Stub(
  4697. IRpcStubBuffer *This,
  4698. IRpcChannelBuffer *_pRpcChannelBuffer,
  4699. PRPC_MESSAGE _pRpcMessage,
  4700. DWORD *_pdwStubPhase);
  4701. /* [call_as] */ HRESULT STDMETHODCALLTYPE AsyncIAdviseSink_Finish_RemoteOnViewChange_Proxy(
  4702. AsyncIAdviseSink * This);
  4703. void __RPC_STUB AsyncIAdviseSink_Finish_RemoteOnViewChange_Stub(
  4704. IRpcStubBuffer *This,
  4705. IRpcChannelBuffer *_pRpcChannelBuffer,
  4706. PRPC_MESSAGE _pRpcMessage,
  4707. DWORD *_pdwStubPhase);
  4708. /* [call_as] */ HRESULT STDMETHODCALLTYPE AsyncIAdviseSink_Begin_RemoteOnRename_Proxy(
  4709. AsyncIAdviseSink * This,
  4710. /* [in] */ IMoniker *pmk);
  4711. void __RPC_STUB AsyncIAdviseSink_Begin_RemoteOnRename_Stub(
  4712. IRpcStubBuffer *This,
  4713. IRpcChannelBuffer *_pRpcChannelBuffer,
  4714. PRPC_MESSAGE _pRpcMessage,
  4715. DWORD *_pdwStubPhase);
  4716. /* [call_as] */ HRESULT STDMETHODCALLTYPE AsyncIAdviseSink_Finish_RemoteOnRename_Proxy(
  4717. AsyncIAdviseSink * This);
  4718. void __RPC_STUB AsyncIAdviseSink_Finish_RemoteOnRename_Stub(
  4719. IRpcStubBuffer *This,
  4720. IRpcChannelBuffer *_pRpcChannelBuffer,
  4721. PRPC_MESSAGE _pRpcMessage,
  4722. DWORD *_pdwStubPhase);
  4723. /* [call_as] */ HRESULT STDMETHODCALLTYPE AsyncIAdviseSink_Begin_RemoteOnSave_Proxy(
  4724. AsyncIAdviseSink * This);
  4725. void __RPC_STUB AsyncIAdviseSink_Begin_RemoteOnSave_Stub(
  4726. IRpcStubBuffer *This,
  4727. IRpcChannelBuffer *_pRpcChannelBuffer,
  4728. PRPC_MESSAGE _pRpcMessage,
  4729. DWORD *_pdwStubPhase);
  4730. /* [call_as] */ HRESULT STDMETHODCALLTYPE AsyncIAdviseSink_Finish_RemoteOnSave_Proxy(
  4731. AsyncIAdviseSink * This);
  4732. void __RPC_STUB AsyncIAdviseSink_Finish_RemoteOnSave_Stub(
  4733. IRpcStubBuffer *This,
  4734. IRpcChannelBuffer *_pRpcChannelBuffer,
  4735. PRPC_MESSAGE _pRpcMessage,
  4736. DWORD *_pdwStubPhase);
  4737. /* [call_as] */ HRESULT STDMETHODCALLTYPE AsyncIAdviseSink_Begin_RemoteOnClose_Proxy(
  4738. AsyncIAdviseSink * This);
  4739. void __RPC_STUB AsyncIAdviseSink_Begin_RemoteOnClose_Stub(
  4740. IRpcStubBuffer *This,
  4741. IRpcChannelBuffer *_pRpcChannelBuffer,
  4742. PRPC_MESSAGE _pRpcMessage,
  4743. DWORD *_pdwStubPhase);
  4744. /* [call_as] */ HRESULT STDMETHODCALLTYPE AsyncIAdviseSink_Finish_RemoteOnClose_Proxy(
  4745. AsyncIAdviseSink * This);
  4746. void __RPC_STUB AsyncIAdviseSink_Finish_RemoteOnClose_Stub(
  4747. IRpcStubBuffer *This,
  4748. IRpcChannelBuffer *_pRpcChannelBuffer,
  4749. PRPC_MESSAGE _pRpcMessage,
  4750. DWORD *_pdwStubPhase);
  4751. #endif /* __AsyncIAdviseSink_INTERFACE_DEFINED__ */
  4752. #ifndef __IAdviseSink2_INTERFACE_DEFINED__
  4753. #define __IAdviseSink2_INTERFACE_DEFINED__
  4754. /* interface IAdviseSink2 */
  4755. /* [unique][async_uuid][uuid][object] */
  4756. typedef /* [unique] */ IAdviseSink2 *LPADVISESINK2;
  4757. EXTERN_C const IID IID_IAdviseSink2;
  4758. #if defined(__cplusplus) && !defined(CINTERFACE)
  4759. MIDL_INTERFACE("00000125-0000-0000-C000-000000000046")
  4760. IAdviseSink2 : public IAdviseSink
  4761. {
  4762. public:
  4763. virtual /* [local] */ void STDMETHODCALLTYPE OnLinkSrcChange(
  4764. /* [unique][in] */ IMoniker *pmk) = 0;
  4765. };
  4766. #else /* C style interface */
  4767. typedef struct IAdviseSink2Vtbl
  4768. {
  4769. BEGIN_INTERFACE
  4770. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  4771. IAdviseSink2 * This,
  4772. /* [in] */ REFIID riid,
  4773. /* [iid_is][out] */ void **ppvObject);
  4774. ULONG ( STDMETHODCALLTYPE *AddRef )(
  4775. IAdviseSink2 * This);
  4776. ULONG ( STDMETHODCALLTYPE *Release )(
  4777. IAdviseSink2 * This);
  4778. /* [local] */ void ( STDMETHODCALLTYPE *OnDataChange )(
  4779. IAdviseSink2 * This,
  4780. /* [unique][in] */ FORMATETC *pFormatetc,
  4781. /* [unique][in] */ STGMEDIUM *pStgmed);
  4782. /* [local] */ void ( STDMETHODCALLTYPE *OnViewChange )(
  4783. IAdviseSink2 * This,
  4784. /* [in] */ DWORD dwAspect,
  4785. /* [in] */ LONG lindex);
  4786. /* [local] */ void ( STDMETHODCALLTYPE *OnRename )(
  4787. IAdviseSink2 * This,
  4788. /* [in] */ IMoniker *pmk);
  4789. /* [local] */ void ( STDMETHODCALLTYPE *OnSave )(
  4790. IAdviseSink2 * This);
  4791. /* [local] */ void ( STDMETHODCALLTYPE *OnClose )(
  4792. IAdviseSink2 * This);
  4793. /* [local] */ void ( STDMETHODCALLTYPE *OnLinkSrcChange )(
  4794. IAdviseSink2 * This,
  4795. /* [unique][in] */ IMoniker *pmk);
  4796. END_INTERFACE
  4797. } IAdviseSink2Vtbl;
  4798. interface IAdviseSink2
  4799. {
  4800. CONST_VTBL struct IAdviseSink2Vtbl *lpVtbl;
  4801. };
  4802. #ifdef COBJMACROS
  4803. #define IAdviseSink2_QueryInterface(This,riid,ppvObject) \
  4804. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4805. #define IAdviseSink2_AddRef(This) \
  4806. (This)->lpVtbl -> AddRef(This)
  4807. #define IAdviseSink2_Release(This) \
  4808. (This)->lpVtbl -> Release(This)
  4809. #define IAdviseSink2_OnDataChange(This,pFormatetc,pStgmed) \
  4810. (This)->lpVtbl -> OnDataChange(This,pFormatetc,pStgmed)
  4811. #define IAdviseSink2_OnViewChange(This,dwAspect,lindex) \
  4812. (This)->lpVtbl -> OnViewChange(This,dwAspect,lindex)
  4813. #define IAdviseSink2_OnRename(This,pmk) \
  4814. (This)->lpVtbl -> OnRename(This,pmk)
  4815. #define IAdviseSink2_OnSave(This) \
  4816. (This)->lpVtbl -> OnSave(This)
  4817. #define IAdviseSink2_OnClose(This) \
  4818. (This)->lpVtbl -> OnClose(This)
  4819. #define IAdviseSink2_OnLinkSrcChange(This,pmk) \
  4820. (This)->lpVtbl -> OnLinkSrcChange(This,pmk)
  4821. #endif /* COBJMACROS */
  4822. #endif /* C style interface */
  4823. /* [call_as] */ HRESULT STDMETHODCALLTYPE IAdviseSink2_RemoteOnLinkSrcChange_Proxy(
  4824. IAdviseSink2 * This,
  4825. /* [unique][in] */ IMoniker *pmk);
  4826. void __RPC_STUB IAdviseSink2_RemoteOnLinkSrcChange_Stub(
  4827. IRpcStubBuffer *This,
  4828. IRpcChannelBuffer *_pRpcChannelBuffer,
  4829. PRPC_MESSAGE _pRpcMessage,
  4830. DWORD *_pdwStubPhase);
  4831. #endif /* __IAdviseSink2_INTERFACE_DEFINED__ */
  4832. #ifndef __AsyncIAdviseSink2_INTERFACE_DEFINED__
  4833. #define __AsyncIAdviseSink2_INTERFACE_DEFINED__
  4834. /* interface AsyncIAdviseSink2 */
  4835. /* [uuid][unique][object] */
  4836. EXTERN_C const IID IID_AsyncIAdviseSink2;
  4837. #if defined(__cplusplus) && !defined(CINTERFACE)
  4838. MIDL_INTERFACE("00000151-0000-0000-C000-000000000046")
  4839. AsyncIAdviseSink2 : public AsyncIAdviseSink
  4840. {
  4841. public:
  4842. virtual /* [local] */ void STDMETHODCALLTYPE Begin_OnLinkSrcChange(
  4843. /* [unique][in] */ IMoniker *pmk) = 0;
  4844. virtual /* [local] */ void STDMETHODCALLTYPE Finish_OnLinkSrcChange( void) = 0;
  4845. };
  4846. #else /* C style interface */
  4847. typedef struct AsyncIAdviseSink2Vtbl
  4848. {
  4849. BEGIN_INTERFACE
  4850. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  4851. AsyncIAdviseSink2 * This,
  4852. /* [in] */ REFIID riid,
  4853. /* [iid_is][out] */ void **ppvObject);
  4854. ULONG ( STDMETHODCALLTYPE *AddRef )(
  4855. AsyncIAdviseSink2 * This);
  4856. ULONG ( STDMETHODCALLTYPE *Release )(
  4857. AsyncIAdviseSink2 * This);
  4858. /* [local] */ void ( STDMETHODCALLTYPE *Begin_OnDataChange )(
  4859. AsyncIAdviseSink2 * This,
  4860. /* [unique][in] */ FORMATETC *pFormatetc,
  4861. /* [unique][in] */ STGMEDIUM *pStgmed);
  4862. /* [local] */ void ( STDMETHODCALLTYPE *Finish_OnDataChange )(
  4863. AsyncIAdviseSink2 * This);
  4864. /* [local] */ void ( STDMETHODCALLTYPE *Begin_OnViewChange )(
  4865. AsyncIAdviseSink2 * This,
  4866. /* [in] */ DWORD dwAspect,
  4867. /* [in] */ LONG lindex);
  4868. /* [local] */ void ( STDMETHODCALLTYPE *Finish_OnViewChange )(
  4869. AsyncIAdviseSink2 * This);
  4870. /* [local] */ void ( STDMETHODCALLTYPE *Begin_OnRename )(
  4871. AsyncIAdviseSink2 * This,
  4872. /* [in] */ IMoniker *pmk);
  4873. /* [local] */ void ( STDMETHODCALLTYPE *Finish_OnRename )(
  4874. AsyncIAdviseSink2 * This);
  4875. /* [local] */ void ( STDMETHODCALLTYPE *Begin_OnSave )(
  4876. AsyncIAdviseSink2 * This);
  4877. /* [local] */ void ( STDMETHODCALLTYPE *Finish_OnSave )(
  4878. AsyncIAdviseSink2 * This);
  4879. /* [local] */ void ( STDMETHODCALLTYPE *Begin_OnClose )(
  4880. AsyncIAdviseSink2 * This);
  4881. /* [local] */ void ( STDMETHODCALLTYPE *Finish_OnClose )(
  4882. AsyncIAdviseSink2 * This);
  4883. /* [local] */ void ( STDMETHODCALLTYPE *Begin_OnLinkSrcChange )(
  4884. AsyncIAdviseSink2 * This,
  4885. /* [unique][in] */ IMoniker *pmk);
  4886. /* [local] */ void ( STDMETHODCALLTYPE *Finish_OnLinkSrcChange )(
  4887. AsyncIAdviseSink2 * This);
  4888. END_INTERFACE
  4889. } AsyncIAdviseSink2Vtbl;
  4890. interface AsyncIAdviseSink2
  4891. {
  4892. CONST_VTBL struct AsyncIAdviseSink2Vtbl *lpVtbl;
  4893. };
  4894. #ifdef COBJMACROS
  4895. #define AsyncIAdviseSink2_QueryInterface(This,riid,ppvObject) \
  4896. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  4897. #define AsyncIAdviseSink2_AddRef(This) \
  4898. (This)->lpVtbl -> AddRef(This)
  4899. #define AsyncIAdviseSink2_Release(This) \
  4900. (This)->lpVtbl -> Release(This)
  4901. #define AsyncIAdviseSink2_Begin_OnDataChange(This,pFormatetc,pStgmed) \
  4902. (This)->lpVtbl -> Begin_OnDataChange(This,pFormatetc,pStgmed)
  4903. #define AsyncIAdviseSink2_Finish_OnDataChange(This) \
  4904. (This)->lpVtbl -> Finish_OnDataChange(This)
  4905. #define AsyncIAdviseSink2_Begin_OnViewChange(This,dwAspect,lindex) \
  4906. (This)->lpVtbl -> Begin_OnViewChange(This,dwAspect,lindex)
  4907. #define AsyncIAdviseSink2_Finish_OnViewChange(This) \
  4908. (This)->lpVtbl -> Finish_OnViewChange(This)
  4909. #define AsyncIAdviseSink2_Begin_OnRename(This,pmk) \
  4910. (This)->lpVtbl -> Begin_OnRename(This,pmk)
  4911. #define AsyncIAdviseSink2_Finish_OnRename(This) \
  4912. (This)->lpVtbl -> Finish_OnRename(This)
  4913. #define AsyncIAdviseSink2_Begin_OnSave(This) \
  4914. (This)->lpVtbl -> Begin_OnSave(This)
  4915. #define AsyncIAdviseSink2_Finish_OnSave(This) \
  4916. (This)->lpVtbl -> Finish_OnSave(This)
  4917. #define AsyncIAdviseSink2_Begin_OnClose(This) \
  4918. (This)->lpVtbl -> Begin_OnClose(This)
  4919. #define AsyncIAdviseSink2_Finish_OnClose(This) \
  4920. (This)->lpVtbl -> Finish_OnClose(This)
  4921. #define AsyncIAdviseSink2_Begin_OnLinkSrcChange(This,pmk) \
  4922. (This)->lpVtbl -> Begin_OnLinkSrcChange(This,pmk)
  4923. #define AsyncIAdviseSink2_Finish_OnLinkSrcChange(This) \
  4924. (This)->lpVtbl -> Finish_OnLinkSrcChange(This)
  4925. #endif /* COBJMACROS */
  4926. #endif /* C style interface */
  4927. /* [call_as] */ HRESULT STDMETHODCALLTYPE AsyncIAdviseSink2_Begin_RemoteOnLinkSrcChange_Proxy(
  4928. AsyncIAdviseSink2 * This,
  4929. /* [unique][in] */ IMoniker *pmk);
  4930. void __RPC_STUB AsyncIAdviseSink2_Begin_RemoteOnLinkSrcChange_Stub(
  4931. IRpcStubBuffer *This,
  4932. IRpcChannelBuffer *_pRpcChannelBuffer,
  4933. PRPC_MESSAGE _pRpcMessage,
  4934. DWORD *_pdwStubPhase);
  4935. /* [call_as] */ HRESULT STDMETHODCALLTYPE AsyncIAdviseSink2_Finish_RemoteOnLinkSrcChange_Proxy(
  4936. AsyncIAdviseSink2 * This);
  4937. void __RPC_STUB AsyncIAdviseSink2_Finish_RemoteOnLinkSrcChange_Stub(
  4938. IRpcStubBuffer *This,
  4939. IRpcChannelBuffer *_pRpcChannelBuffer,
  4940. PRPC_MESSAGE _pRpcMessage,
  4941. DWORD *_pdwStubPhase);
  4942. #endif /* __AsyncIAdviseSink2_INTERFACE_DEFINED__ */
  4943. #ifndef __IDataObject_INTERFACE_DEFINED__
  4944. #define __IDataObject_INTERFACE_DEFINED__
  4945. /* interface IDataObject */
  4946. /* [unique][uuid][object] */
  4947. typedef /* [unique] */ IDataObject *LPDATAOBJECT;
  4948. typedef
  4949. enum tagDATADIR
  4950. { DATADIR_GET = 1,
  4951. DATADIR_SET = 2
  4952. } DATADIR;
  4953. EXTERN_C const IID IID_IDataObject;
  4954. #if defined(__cplusplus) && !defined(CINTERFACE)
  4955. MIDL_INTERFACE("0000010e-0000-0000-C000-000000000046")
  4956. IDataObject : public IUnknown
  4957. {
  4958. public:
  4959. virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetData(
  4960. /* [unique][in] */ FORMATETC *pformatetcIn,
  4961. /* [out] */ STGMEDIUM *pmedium) = 0;
  4962. virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetDataHere(
  4963. /* [unique][in] */ FORMATETC *pformatetc,
  4964. /* [out][in] */ STGMEDIUM *pmedium) = 0;
  4965. virtual HRESULT STDMETHODCALLTYPE QueryGetData(
  4966. /* [unique][in] */ FORMATETC *pformatetc) = 0;
  4967. virtual HRESULT STDMETHODCALLTYPE GetCanonicalFormatEtc(
  4968. /* [unique][in] */ FORMATETC *pformatectIn,
  4969. /* [out] */ FORMATETC *pformatetcOut) = 0;
  4970. virtual /* [local] */ HRESULT STDMETHODCALLTYPE SetData(
  4971. /* [unique][in] */ FORMATETC *pformatetc,
  4972. /* [unique][in] */ STGMEDIUM *pmedium,
  4973. /* [in] */ BOOL fRelease) = 0;
  4974. virtual HRESULT STDMETHODCALLTYPE EnumFormatEtc(
  4975. /* [in] */ DWORD dwDirection,
  4976. /* [out] */ IEnumFORMATETC **ppenumFormatEtc) = 0;
  4977. virtual HRESULT STDMETHODCALLTYPE DAdvise(
  4978. /* [in] */ FORMATETC *pformatetc,
  4979. /* [in] */ DWORD advf,
  4980. /* [unique][in] */ IAdviseSink *pAdvSink,
  4981. /* [out] */ DWORD *pdwConnection) = 0;
  4982. virtual HRESULT STDMETHODCALLTYPE DUnadvise(
  4983. /* [in] */ DWORD dwConnection) = 0;
  4984. virtual HRESULT STDMETHODCALLTYPE EnumDAdvise(
  4985. /* [out] */ IEnumSTATDATA **ppenumAdvise) = 0;
  4986. };
  4987. #else /* C style interface */
  4988. typedef struct IDataObjectVtbl
  4989. {
  4990. BEGIN_INTERFACE
  4991. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  4992. IDataObject * This,
  4993. /* [in] */ REFIID riid,
  4994. /* [iid_is][out] */ void **ppvObject);
  4995. ULONG ( STDMETHODCALLTYPE *AddRef )(
  4996. IDataObject * This);
  4997. ULONG ( STDMETHODCALLTYPE *Release )(
  4998. IDataObject * This);
  4999. /* [local] */ HRESULT ( STDMETHODCALLTYPE *GetData )(
  5000. IDataObject * This,
  5001. /* [unique][in] */ FORMATETC *pformatetcIn,
  5002. /* [out] */ STGMEDIUM *pmedium);
  5003. /* [local] */ HRESULT ( STDMETHODCALLTYPE *GetDataHere )(
  5004. IDataObject * This,
  5005. /* [unique][in] */ FORMATETC *pformatetc,
  5006. /* [out][in] */ STGMEDIUM *pmedium);
  5007. HRESULT ( STDMETHODCALLTYPE *QueryGetData )(
  5008. IDataObject * This,
  5009. /* [unique][in] */ FORMATETC *pformatetc);
  5010. HRESULT ( STDMETHODCALLTYPE *GetCanonicalFormatEtc )(
  5011. IDataObject * This,
  5012. /* [unique][in] */ FORMATETC *pformatectIn,
  5013. /* [out] */ FORMATETC *pformatetcOut);
  5014. /* [local] */ HRESULT ( STDMETHODCALLTYPE *SetData )(
  5015. IDataObject * This,
  5016. /* [unique][in] */ FORMATETC *pformatetc,
  5017. /* [unique][in] */ STGMEDIUM *pmedium,
  5018. /* [in] */ BOOL fRelease);
  5019. HRESULT ( STDMETHODCALLTYPE *EnumFormatEtc )(
  5020. IDataObject * This,
  5021. /* [in] */ DWORD dwDirection,
  5022. /* [out] */ IEnumFORMATETC **ppenumFormatEtc);
  5023. HRESULT ( STDMETHODCALLTYPE *DAdvise )(
  5024. IDataObject * This,
  5025. /* [in] */ FORMATETC *pformatetc,
  5026. /* [in] */ DWORD advf,
  5027. /* [unique][in] */ IAdviseSink *pAdvSink,
  5028. /* [out] */ DWORD *pdwConnection);
  5029. HRESULT ( STDMETHODCALLTYPE *DUnadvise )(
  5030. IDataObject * This,
  5031. /* [in] */ DWORD dwConnection);
  5032. HRESULT ( STDMETHODCALLTYPE *EnumDAdvise )(
  5033. IDataObject * This,
  5034. /* [out] */ IEnumSTATDATA **ppenumAdvise);
  5035. END_INTERFACE
  5036. } IDataObjectVtbl;
  5037. interface IDataObject
  5038. {
  5039. CONST_VTBL struct IDataObjectVtbl *lpVtbl;
  5040. };
  5041. #ifdef COBJMACROS
  5042. #define IDataObject_QueryInterface(This,riid,ppvObject) \
  5043. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  5044. #define IDataObject_AddRef(This) \
  5045. (This)->lpVtbl -> AddRef(This)
  5046. #define IDataObject_Release(This) \
  5047. (This)->lpVtbl -> Release(This)
  5048. #define IDataObject_GetData(This,pformatetcIn,pmedium) \
  5049. (This)->lpVtbl -> GetData(This,pformatetcIn,pmedium)
  5050. #define IDataObject_GetDataHere(This,pformatetc,pmedium) \
  5051. (This)->lpVtbl -> GetDataHere(This,pformatetc,pmedium)
  5052. #define IDataObject_QueryGetData(This,pformatetc) \
  5053. (This)->lpVtbl -> QueryGetData(This,pformatetc)
  5054. #define IDataObject_GetCanonicalFormatEtc(This,pformatectIn,pformatetcOut) \
  5055. (This)->lpVtbl -> GetCanonicalFormatEtc(This,pformatectIn,pformatetcOut)
  5056. #define IDataObject_SetData(This,pformatetc,pmedium,fRelease) \
  5057. (This)->lpVtbl -> SetData(This,pformatetc,pmedium,fRelease)
  5058. #define IDataObject_EnumFormatEtc(This,dwDirection,ppenumFormatEtc) \
  5059. (This)->lpVtbl -> EnumFormatEtc(This,dwDirection,ppenumFormatEtc)
  5060. #define IDataObject_DAdvise(This,pformatetc,advf,pAdvSink,pdwConnection) \
  5061. (This)->lpVtbl -> DAdvise(This,pformatetc,advf,pAdvSink,pdwConnection)
  5062. #define IDataObject_DUnadvise(This,dwConnection) \
  5063. (This)->lpVtbl -> DUnadvise(This,dwConnection)
  5064. #define IDataObject_EnumDAdvise(This,ppenumAdvise) \
  5065. (This)->lpVtbl -> EnumDAdvise(This,ppenumAdvise)
  5066. #endif /* COBJMACROS */
  5067. #endif /* C style interface */
  5068. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDataObject_RemoteGetData_Proxy(
  5069. IDataObject * This,
  5070. /* [unique][in] */ FORMATETC *pformatetcIn,
  5071. /* [out] */ STGMEDIUM *pRemoteMedium);
  5072. void __RPC_STUB IDataObject_RemoteGetData_Stub(
  5073. IRpcStubBuffer *This,
  5074. IRpcChannelBuffer *_pRpcChannelBuffer,
  5075. PRPC_MESSAGE _pRpcMessage,
  5076. DWORD *_pdwStubPhase);
  5077. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDataObject_RemoteGetDataHere_Proxy(
  5078. IDataObject * This,
  5079. /* [unique][in] */ FORMATETC *pformatetc,
  5080. /* [out][in] */ STGMEDIUM *pRemoteMedium);
  5081. void __RPC_STUB IDataObject_RemoteGetDataHere_Stub(
  5082. IRpcStubBuffer *This,
  5083. IRpcChannelBuffer *_pRpcChannelBuffer,
  5084. PRPC_MESSAGE _pRpcMessage,
  5085. DWORD *_pdwStubPhase);
  5086. HRESULT STDMETHODCALLTYPE IDataObject_QueryGetData_Proxy(
  5087. IDataObject * This,
  5088. /* [unique][in] */ FORMATETC *pformatetc);
  5089. void __RPC_STUB IDataObject_QueryGetData_Stub(
  5090. IRpcStubBuffer *This,
  5091. IRpcChannelBuffer *_pRpcChannelBuffer,
  5092. PRPC_MESSAGE _pRpcMessage,
  5093. DWORD *_pdwStubPhase);
  5094. HRESULT STDMETHODCALLTYPE IDataObject_GetCanonicalFormatEtc_Proxy(
  5095. IDataObject * This,
  5096. /* [unique][in] */ FORMATETC *pformatectIn,
  5097. /* [out] */ FORMATETC *pformatetcOut);
  5098. void __RPC_STUB IDataObject_GetCanonicalFormatEtc_Stub(
  5099. IRpcStubBuffer *This,
  5100. IRpcChannelBuffer *_pRpcChannelBuffer,
  5101. PRPC_MESSAGE _pRpcMessage,
  5102. DWORD *_pdwStubPhase);
  5103. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDataObject_RemoteSetData_Proxy(
  5104. IDataObject * This,
  5105. /* [unique][in] */ FORMATETC *pformatetc,
  5106. /* [unique][in] */ FLAG_STGMEDIUM *pmedium,
  5107. /* [in] */ BOOL fRelease);
  5108. void __RPC_STUB IDataObject_RemoteSetData_Stub(
  5109. IRpcStubBuffer *This,
  5110. IRpcChannelBuffer *_pRpcChannelBuffer,
  5111. PRPC_MESSAGE _pRpcMessage,
  5112. DWORD *_pdwStubPhase);
  5113. HRESULT STDMETHODCALLTYPE IDataObject_EnumFormatEtc_Proxy(
  5114. IDataObject * This,
  5115. /* [in] */ DWORD dwDirection,
  5116. /* [out] */ IEnumFORMATETC **ppenumFormatEtc);
  5117. void __RPC_STUB IDataObject_EnumFormatEtc_Stub(
  5118. IRpcStubBuffer *This,
  5119. IRpcChannelBuffer *_pRpcChannelBuffer,
  5120. PRPC_MESSAGE _pRpcMessage,
  5121. DWORD *_pdwStubPhase);
  5122. HRESULT STDMETHODCALLTYPE IDataObject_DAdvise_Proxy(
  5123. IDataObject * This,
  5124. /* [in] */ FORMATETC *pformatetc,
  5125. /* [in] */ DWORD advf,
  5126. /* [unique][in] */ IAdviseSink *pAdvSink,
  5127. /* [out] */ DWORD *pdwConnection);
  5128. void __RPC_STUB IDataObject_DAdvise_Stub(
  5129. IRpcStubBuffer *This,
  5130. IRpcChannelBuffer *_pRpcChannelBuffer,
  5131. PRPC_MESSAGE _pRpcMessage,
  5132. DWORD *_pdwStubPhase);
  5133. HRESULT STDMETHODCALLTYPE IDataObject_DUnadvise_Proxy(
  5134. IDataObject * This,
  5135. /* [in] */ DWORD dwConnection);
  5136. void __RPC_STUB IDataObject_DUnadvise_Stub(
  5137. IRpcStubBuffer *This,
  5138. IRpcChannelBuffer *_pRpcChannelBuffer,
  5139. PRPC_MESSAGE _pRpcMessage,
  5140. DWORD *_pdwStubPhase);
  5141. HRESULT STDMETHODCALLTYPE IDataObject_EnumDAdvise_Proxy(
  5142. IDataObject * This,
  5143. /* [out] */ IEnumSTATDATA **ppenumAdvise);
  5144. void __RPC_STUB IDataObject_EnumDAdvise_Stub(
  5145. IRpcStubBuffer *This,
  5146. IRpcChannelBuffer *_pRpcChannelBuffer,
  5147. PRPC_MESSAGE _pRpcMessage,
  5148. DWORD *_pdwStubPhase);
  5149. #endif /* __IDataObject_INTERFACE_DEFINED__ */
  5150. #ifndef __IDataAdviseHolder_INTERFACE_DEFINED__
  5151. #define __IDataAdviseHolder_INTERFACE_DEFINED__
  5152. /* interface IDataAdviseHolder */
  5153. /* [uuid][object][local] */
  5154. typedef /* [unique] */ IDataAdviseHolder *LPDATAADVISEHOLDER;
  5155. EXTERN_C const IID IID_IDataAdviseHolder;
  5156. #if defined(__cplusplus) && !defined(CINTERFACE)
  5157. MIDL_INTERFACE("00000110-0000-0000-C000-000000000046")
  5158. IDataAdviseHolder : public IUnknown
  5159. {
  5160. public:
  5161. virtual HRESULT STDMETHODCALLTYPE Advise(
  5162. /* [unique][in] */ IDataObject *pDataObject,
  5163. /* [unique][in] */ FORMATETC *pFetc,
  5164. /* [in] */ DWORD advf,
  5165. /* [unique][in] */ IAdviseSink *pAdvise,
  5166. /* [out] */ DWORD *pdwConnection) = 0;
  5167. virtual HRESULT STDMETHODCALLTYPE Unadvise(
  5168. /* [in] */ DWORD dwConnection) = 0;
  5169. virtual HRESULT STDMETHODCALLTYPE EnumAdvise(
  5170. /* [out] */ IEnumSTATDATA **ppenumAdvise) = 0;
  5171. virtual HRESULT STDMETHODCALLTYPE SendOnDataChange(
  5172. /* [unique][in] */ IDataObject *pDataObject,
  5173. /* [in] */ DWORD dwReserved,
  5174. /* [in] */ DWORD advf) = 0;
  5175. };
  5176. #else /* C style interface */
  5177. typedef struct IDataAdviseHolderVtbl
  5178. {
  5179. BEGIN_INTERFACE
  5180. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  5181. IDataAdviseHolder * This,
  5182. /* [in] */ REFIID riid,
  5183. /* [iid_is][out] */ void **ppvObject);
  5184. ULONG ( STDMETHODCALLTYPE *AddRef )(
  5185. IDataAdviseHolder * This);
  5186. ULONG ( STDMETHODCALLTYPE *Release )(
  5187. IDataAdviseHolder * This);
  5188. HRESULT ( STDMETHODCALLTYPE *Advise )(
  5189. IDataAdviseHolder * This,
  5190. /* [unique][in] */ IDataObject *pDataObject,
  5191. /* [unique][in] */ FORMATETC *pFetc,
  5192. /* [in] */ DWORD advf,
  5193. /* [unique][in] */ IAdviseSink *pAdvise,
  5194. /* [out] */ DWORD *pdwConnection);
  5195. HRESULT ( STDMETHODCALLTYPE *Unadvise )(
  5196. IDataAdviseHolder * This,
  5197. /* [in] */ DWORD dwConnection);
  5198. HRESULT ( STDMETHODCALLTYPE *EnumAdvise )(
  5199. IDataAdviseHolder * This,
  5200. /* [out] */ IEnumSTATDATA **ppenumAdvise);
  5201. HRESULT ( STDMETHODCALLTYPE *SendOnDataChange )(
  5202. IDataAdviseHolder * This,
  5203. /* [unique][in] */ IDataObject *pDataObject,
  5204. /* [in] */ DWORD dwReserved,
  5205. /* [in] */ DWORD advf);
  5206. END_INTERFACE
  5207. } IDataAdviseHolderVtbl;
  5208. interface IDataAdviseHolder
  5209. {
  5210. CONST_VTBL struct IDataAdviseHolderVtbl *lpVtbl;
  5211. };
  5212. #ifdef COBJMACROS
  5213. #define IDataAdviseHolder_QueryInterface(This,riid,ppvObject) \
  5214. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  5215. #define IDataAdviseHolder_AddRef(This) \
  5216. (This)->lpVtbl -> AddRef(This)
  5217. #define IDataAdviseHolder_Release(This) \
  5218. (This)->lpVtbl -> Release(This)
  5219. #define IDataAdviseHolder_Advise(This,pDataObject,pFetc,advf,pAdvise,pdwConnection) \
  5220. (This)->lpVtbl -> Advise(This,pDataObject,pFetc,advf,pAdvise,pdwConnection)
  5221. #define IDataAdviseHolder_Unadvise(This,dwConnection) \
  5222. (This)->lpVtbl -> Unadvise(This,dwConnection)
  5223. #define IDataAdviseHolder_EnumAdvise(This,ppenumAdvise) \
  5224. (This)->lpVtbl -> EnumAdvise(This,ppenumAdvise)
  5225. #define IDataAdviseHolder_SendOnDataChange(This,pDataObject,dwReserved,advf) \
  5226. (This)->lpVtbl -> SendOnDataChange(This,pDataObject,dwReserved,advf)
  5227. #endif /* COBJMACROS */
  5228. #endif /* C style interface */
  5229. HRESULT STDMETHODCALLTYPE IDataAdviseHolder_Advise_Proxy(
  5230. IDataAdviseHolder * This,
  5231. /* [unique][in] */ IDataObject *pDataObject,
  5232. /* [unique][in] */ FORMATETC *pFetc,
  5233. /* [in] */ DWORD advf,
  5234. /* [unique][in] */ IAdviseSink *pAdvise,
  5235. /* [out] */ DWORD *pdwConnection);
  5236. void __RPC_STUB IDataAdviseHolder_Advise_Stub(
  5237. IRpcStubBuffer *This,
  5238. IRpcChannelBuffer *_pRpcChannelBuffer,
  5239. PRPC_MESSAGE _pRpcMessage,
  5240. DWORD *_pdwStubPhase);
  5241. HRESULT STDMETHODCALLTYPE IDataAdviseHolder_Unadvise_Proxy(
  5242. IDataAdviseHolder * This,
  5243. /* [in] */ DWORD dwConnection);
  5244. void __RPC_STUB IDataAdviseHolder_Unadvise_Stub(
  5245. IRpcStubBuffer *This,
  5246. IRpcChannelBuffer *_pRpcChannelBuffer,
  5247. PRPC_MESSAGE _pRpcMessage,
  5248. DWORD *_pdwStubPhase);
  5249. HRESULT STDMETHODCALLTYPE IDataAdviseHolder_EnumAdvise_Proxy(
  5250. IDataAdviseHolder * This,
  5251. /* [out] */ IEnumSTATDATA **ppenumAdvise);
  5252. void __RPC_STUB IDataAdviseHolder_EnumAdvise_Stub(
  5253. IRpcStubBuffer *This,
  5254. IRpcChannelBuffer *_pRpcChannelBuffer,
  5255. PRPC_MESSAGE _pRpcMessage,
  5256. DWORD *_pdwStubPhase);
  5257. HRESULT STDMETHODCALLTYPE IDataAdviseHolder_SendOnDataChange_Proxy(
  5258. IDataAdviseHolder * This,
  5259. /* [unique][in] */ IDataObject *pDataObject,
  5260. /* [in] */ DWORD dwReserved,
  5261. /* [in] */ DWORD advf);
  5262. void __RPC_STUB IDataAdviseHolder_SendOnDataChange_Stub(
  5263. IRpcStubBuffer *This,
  5264. IRpcChannelBuffer *_pRpcChannelBuffer,
  5265. PRPC_MESSAGE _pRpcMessage,
  5266. DWORD *_pdwStubPhase);
  5267. #endif /* __IDataAdviseHolder_INTERFACE_DEFINED__ */
  5268. #ifndef __IMessageFilter_INTERFACE_DEFINED__
  5269. #define __IMessageFilter_INTERFACE_DEFINED__
  5270. /* interface IMessageFilter */
  5271. /* [uuid][object][local] */
  5272. typedef /* [unique] */ IMessageFilter *LPMESSAGEFILTER;
  5273. typedef
  5274. enum tagCALLTYPE
  5275. { CALLTYPE_TOPLEVEL = 1,
  5276. CALLTYPE_NESTED = 2,
  5277. CALLTYPE_ASYNC = 3,
  5278. CALLTYPE_TOPLEVEL_CALLPENDING = 4,
  5279. CALLTYPE_ASYNC_CALLPENDING = 5
  5280. } CALLTYPE;
  5281. typedef
  5282. enum tagSERVERCALL
  5283. { SERVERCALL_ISHANDLED = 0,
  5284. SERVERCALL_REJECTED = 1,
  5285. SERVERCALL_RETRYLATER = 2
  5286. } SERVERCALL;
  5287. typedef
  5288. enum tagPENDINGTYPE
  5289. { PENDINGTYPE_TOPLEVEL = 1,
  5290. PENDINGTYPE_NESTED = 2
  5291. } PENDINGTYPE;
  5292. typedef
  5293. enum tagPENDINGMSG
  5294. { PENDINGMSG_CANCELCALL = 0,
  5295. PENDINGMSG_WAITNOPROCESS = 1,
  5296. PENDINGMSG_WAITDEFPROCESS = 2
  5297. } PENDINGMSG;
  5298. typedef struct tagINTERFACEINFO
  5299. {
  5300. IUnknown *pUnk;
  5301. IID iid;
  5302. WORD wMethod;
  5303. } INTERFACEINFO;
  5304. typedef struct tagINTERFACEINFO *LPINTERFACEINFO;
  5305. EXTERN_C const IID IID_IMessageFilter;
  5306. #if defined(__cplusplus) && !defined(CINTERFACE)
  5307. MIDL_INTERFACE("00000016-0000-0000-C000-000000000046")
  5308. IMessageFilter : public IUnknown
  5309. {
  5310. public:
  5311. virtual DWORD STDMETHODCALLTYPE HandleInComingCall(
  5312. /* [in] */ DWORD dwCallType,
  5313. /* [in] */ HTASK htaskCaller,
  5314. /* [in] */ DWORD dwTickCount,
  5315. /* [in] */ LPINTERFACEINFO lpInterfaceInfo) = 0;
  5316. virtual DWORD STDMETHODCALLTYPE RetryRejectedCall(
  5317. /* [in] */ HTASK htaskCallee,
  5318. /* [in] */ DWORD dwTickCount,
  5319. /* [in] */ DWORD dwRejectType) = 0;
  5320. virtual DWORD STDMETHODCALLTYPE MessagePending(
  5321. /* [in] */ HTASK htaskCallee,
  5322. /* [in] */ DWORD dwTickCount,
  5323. /* [in] */ DWORD dwPendingType) = 0;
  5324. };
  5325. #else /* C style interface */
  5326. typedef struct IMessageFilterVtbl
  5327. {
  5328. BEGIN_INTERFACE
  5329. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  5330. IMessageFilter * This,
  5331. /* [in] */ REFIID riid,
  5332. /* [iid_is][out] */ void **ppvObject);
  5333. ULONG ( STDMETHODCALLTYPE *AddRef )(
  5334. IMessageFilter * This);
  5335. ULONG ( STDMETHODCALLTYPE *Release )(
  5336. IMessageFilter * This);
  5337. DWORD ( STDMETHODCALLTYPE *HandleInComingCall )(
  5338. IMessageFilter * This,
  5339. /* [in] */ DWORD dwCallType,
  5340. /* [in] */ HTASK htaskCaller,
  5341. /* [in] */ DWORD dwTickCount,
  5342. /* [in] */ LPINTERFACEINFO lpInterfaceInfo);
  5343. DWORD ( STDMETHODCALLTYPE *RetryRejectedCall )(
  5344. IMessageFilter * This,
  5345. /* [in] */ HTASK htaskCallee,
  5346. /* [in] */ DWORD dwTickCount,
  5347. /* [in] */ DWORD dwRejectType);
  5348. DWORD ( STDMETHODCALLTYPE *MessagePending )(
  5349. IMessageFilter * This,
  5350. /* [in] */ HTASK htaskCallee,
  5351. /* [in] */ DWORD dwTickCount,
  5352. /* [in] */ DWORD dwPendingType);
  5353. END_INTERFACE
  5354. } IMessageFilterVtbl;
  5355. interface IMessageFilter
  5356. {
  5357. CONST_VTBL struct IMessageFilterVtbl *lpVtbl;
  5358. };
  5359. #ifdef COBJMACROS
  5360. #define IMessageFilter_QueryInterface(This,riid,ppvObject) \
  5361. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  5362. #define IMessageFilter_AddRef(This) \
  5363. (This)->lpVtbl -> AddRef(This)
  5364. #define IMessageFilter_Release(This) \
  5365. (This)->lpVtbl -> Release(This)
  5366. #define IMessageFilter_HandleInComingCall(This,dwCallType,htaskCaller,dwTickCount,lpInterfaceInfo) \
  5367. (This)->lpVtbl -> HandleInComingCall(This,dwCallType,htaskCaller,dwTickCount,lpInterfaceInfo)
  5368. #define IMessageFilter_RetryRejectedCall(This,htaskCallee,dwTickCount,dwRejectType) \
  5369. (This)->lpVtbl -> RetryRejectedCall(This,htaskCallee,dwTickCount,dwRejectType)
  5370. #define IMessageFilter_MessagePending(This,htaskCallee,dwTickCount,dwPendingType) \
  5371. (This)->lpVtbl -> MessagePending(This,htaskCallee,dwTickCount,dwPendingType)
  5372. #endif /* COBJMACROS */
  5373. #endif /* C style interface */
  5374. DWORD STDMETHODCALLTYPE IMessageFilter_HandleInComingCall_Proxy(
  5375. IMessageFilter * This,
  5376. /* [in] */ DWORD dwCallType,
  5377. /* [in] */ HTASK htaskCaller,
  5378. /* [in] */ DWORD dwTickCount,
  5379. /* [in] */ LPINTERFACEINFO lpInterfaceInfo);
  5380. void __RPC_STUB IMessageFilter_HandleInComingCall_Stub(
  5381. IRpcStubBuffer *This,
  5382. IRpcChannelBuffer *_pRpcChannelBuffer,
  5383. PRPC_MESSAGE _pRpcMessage,
  5384. DWORD *_pdwStubPhase);
  5385. DWORD STDMETHODCALLTYPE IMessageFilter_RetryRejectedCall_Proxy(
  5386. IMessageFilter * This,
  5387. /* [in] */ HTASK htaskCallee,
  5388. /* [in] */ DWORD dwTickCount,
  5389. /* [in] */ DWORD dwRejectType);
  5390. void __RPC_STUB IMessageFilter_RetryRejectedCall_Stub(
  5391. IRpcStubBuffer *This,
  5392. IRpcChannelBuffer *_pRpcChannelBuffer,
  5393. PRPC_MESSAGE _pRpcMessage,
  5394. DWORD *_pdwStubPhase);
  5395. DWORD STDMETHODCALLTYPE IMessageFilter_MessagePending_Proxy(
  5396. IMessageFilter * This,
  5397. /* [in] */ HTASK htaskCallee,
  5398. /* [in] */ DWORD dwTickCount,
  5399. /* [in] */ DWORD dwPendingType);
  5400. void __RPC_STUB IMessageFilter_MessagePending_Stub(
  5401. IRpcStubBuffer *This,
  5402. IRpcChannelBuffer *_pRpcChannelBuffer,
  5403. PRPC_MESSAGE _pRpcMessage,
  5404. DWORD *_pdwStubPhase);
  5405. #endif /* __IMessageFilter_INTERFACE_DEFINED__ */
  5406. #ifndef __IRpcChannelBuffer_INTERFACE_DEFINED__
  5407. #define __IRpcChannelBuffer_INTERFACE_DEFINED__
  5408. /* interface IRpcChannelBuffer */
  5409. /* [uuid][object][local] */
  5410. typedef unsigned long RPCOLEDATAREP;
  5411. typedef struct tagRPCOLEMESSAGE
  5412. {
  5413. void *reserved1;
  5414. RPCOLEDATAREP dataRepresentation;
  5415. void *Buffer;
  5416. ULONG cbBuffer;
  5417. ULONG iMethod;
  5418. void *reserved2[ 5 ];
  5419. ULONG rpcFlags;
  5420. } RPCOLEMESSAGE;
  5421. typedef RPCOLEMESSAGE *PRPCOLEMESSAGE;
  5422. EXTERN_C const IID IID_IRpcChannelBuffer;
  5423. #if defined(__cplusplus) && !defined(CINTERFACE)
  5424. MIDL_INTERFACE("D5F56B60-593B-101A-B569-08002B2DBF7A")
  5425. IRpcChannelBuffer : public IUnknown
  5426. {
  5427. public:
  5428. virtual HRESULT STDMETHODCALLTYPE GetBuffer(
  5429. /* [in] */ RPCOLEMESSAGE *pMessage,
  5430. /* [in] */ REFIID riid) = 0;
  5431. virtual HRESULT STDMETHODCALLTYPE SendReceive(
  5432. /* [out][in] */ RPCOLEMESSAGE *pMessage,
  5433. /* [out] */ ULONG *pStatus) = 0;
  5434. virtual HRESULT STDMETHODCALLTYPE FreeBuffer(
  5435. /* [in] */ RPCOLEMESSAGE *pMessage) = 0;
  5436. virtual HRESULT STDMETHODCALLTYPE GetDestCtx(
  5437. /* [out] */ DWORD *pdwDestContext,
  5438. /* [out] */ void **ppvDestContext) = 0;
  5439. virtual HRESULT STDMETHODCALLTYPE IsConnected( void) = 0;
  5440. };
  5441. #else /* C style interface */
  5442. typedef struct IRpcChannelBufferVtbl
  5443. {
  5444. BEGIN_INTERFACE
  5445. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  5446. IRpcChannelBuffer * This,
  5447. /* [in] */ REFIID riid,
  5448. /* [iid_is][out] */ void **ppvObject);
  5449. ULONG ( STDMETHODCALLTYPE *AddRef )(
  5450. IRpcChannelBuffer * This);
  5451. ULONG ( STDMETHODCALLTYPE *Release )(
  5452. IRpcChannelBuffer * This);
  5453. HRESULT ( STDMETHODCALLTYPE *GetBuffer )(
  5454. IRpcChannelBuffer * This,
  5455. /* [in] */ RPCOLEMESSAGE *pMessage,
  5456. /* [in] */ REFIID riid);
  5457. HRESULT ( STDMETHODCALLTYPE *SendReceive )(
  5458. IRpcChannelBuffer * This,
  5459. /* [out][in] */ RPCOLEMESSAGE *pMessage,
  5460. /* [out] */ ULONG *pStatus);
  5461. HRESULT ( STDMETHODCALLTYPE *FreeBuffer )(
  5462. IRpcChannelBuffer * This,
  5463. /* [in] */ RPCOLEMESSAGE *pMessage);
  5464. HRESULT ( STDMETHODCALLTYPE *GetDestCtx )(
  5465. IRpcChannelBuffer * This,
  5466. /* [out] */ DWORD *pdwDestContext,
  5467. /* [out] */ void **ppvDestContext);
  5468. HRESULT ( STDMETHODCALLTYPE *IsConnected )(
  5469. IRpcChannelBuffer * This);
  5470. END_INTERFACE
  5471. } IRpcChannelBufferVtbl;
  5472. interface IRpcChannelBuffer
  5473. {
  5474. CONST_VTBL struct IRpcChannelBufferVtbl *lpVtbl;
  5475. };
  5476. #ifdef COBJMACROS
  5477. #define IRpcChannelBuffer_QueryInterface(This,riid,ppvObject) \
  5478. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  5479. #define IRpcChannelBuffer_AddRef(This) \
  5480. (This)->lpVtbl -> AddRef(This)
  5481. #define IRpcChannelBuffer_Release(This) \
  5482. (This)->lpVtbl -> Release(This)
  5483. #define IRpcChannelBuffer_GetBuffer(This,pMessage,riid) \
  5484. (This)->lpVtbl -> GetBuffer(This,pMessage,riid)
  5485. #define IRpcChannelBuffer_SendReceive(This,pMessage,pStatus) \
  5486. (This)->lpVtbl -> SendReceive(This,pMessage,pStatus)
  5487. #define IRpcChannelBuffer_FreeBuffer(This,pMessage) \
  5488. (This)->lpVtbl -> FreeBuffer(This,pMessage)
  5489. #define IRpcChannelBuffer_GetDestCtx(This,pdwDestContext,ppvDestContext) \
  5490. (This)->lpVtbl -> GetDestCtx(This,pdwDestContext,ppvDestContext)
  5491. #define IRpcChannelBuffer_IsConnected(This) \
  5492. (This)->lpVtbl -> IsConnected(This)
  5493. #endif /* COBJMACROS */
  5494. #endif /* C style interface */
  5495. HRESULT STDMETHODCALLTYPE IRpcChannelBuffer_GetBuffer_Proxy(
  5496. IRpcChannelBuffer * This,
  5497. /* [in] */ RPCOLEMESSAGE *pMessage,
  5498. /* [in] */ REFIID riid);
  5499. void __RPC_STUB IRpcChannelBuffer_GetBuffer_Stub(
  5500. IRpcStubBuffer *This,
  5501. IRpcChannelBuffer *_pRpcChannelBuffer,
  5502. PRPC_MESSAGE _pRpcMessage,
  5503. DWORD *_pdwStubPhase);
  5504. HRESULT STDMETHODCALLTYPE IRpcChannelBuffer_SendReceive_Proxy(
  5505. IRpcChannelBuffer * This,
  5506. /* [out][in] */ RPCOLEMESSAGE *pMessage,
  5507. /* [out] */ ULONG *pStatus);
  5508. void __RPC_STUB IRpcChannelBuffer_SendReceive_Stub(
  5509. IRpcStubBuffer *This,
  5510. IRpcChannelBuffer *_pRpcChannelBuffer,
  5511. PRPC_MESSAGE _pRpcMessage,
  5512. DWORD *_pdwStubPhase);
  5513. HRESULT STDMETHODCALLTYPE IRpcChannelBuffer_FreeBuffer_Proxy(
  5514. IRpcChannelBuffer * This,
  5515. /* [in] */ RPCOLEMESSAGE *pMessage);
  5516. void __RPC_STUB IRpcChannelBuffer_FreeBuffer_Stub(
  5517. IRpcStubBuffer *This,
  5518. IRpcChannelBuffer *_pRpcChannelBuffer,
  5519. PRPC_MESSAGE _pRpcMessage,
  5520. DWORD *_pdwStubPhase);
  5521. HRESULT STDMETHODCALLTYPE IRpcChannelBuffer_GetDestCtx_Proxy(
  5522. IRpcChannelBuffer * This,
  5523. /* [out] */ DWORD *pdwDestContext,
  5524. /* [out] */ void **ppvDestContext);
  5525. void __RPC_STUB IRpcChannelBuffer_GetDestCtx_Stub(
  5526. IRpcStubBuffer *This,
  5527. IRpcChannelBuffer *_pRpcChannelBuffer,
  5528. PRPC_MESSAGE _pRpcMessage,
  5529. DWORD *_pdwStubPhase);
  5530. HRESULT STDMETHODCALLTYPE IRpcChannelBuffer_IsConnected_Proxy(
  5531. IRpcChannelBuffer * This);
  5532. void __RPC_STUB IRpcChannelBuffer_IsConnected_Stub(
  5533. IRpcStubBuffer *This,
  5534. IRpcChannelBuffer *_pRpcChannelBuffer,
  5535. PRPC_MESSAGE _pRpcMessage,
  5536. DWORD *_pdwStubPhase);
  5537. #endif /* __IRpcChannelBuffer_INTERFACE_DEFINED__ */
  5538. #ifndef __IRpcChannelBuffer2_INTERFACE_DEFINED__
  5539. #define __IRpcChannelBuffer2_INTERFACE_DEFINED__
  5540. /* interface IRpcChannelBuffer2 */
  5541. /* [uuid][object][local] */
  5542. EXTERN_C const IID IID_IRpcChannelBuffer2;
  5543. #if defined(__cplusplus) && !defined(CINTERFACE)
  5544. MIDL_INTERFACE("594f31d0-7f19-11d0-b194-00a0c90dc8bf")
  5545. IRpcChannelBuffer2 : public IRpcChannelBuffer
  5546. {
  5547. public:
  5548. virtual HRESULT STDMETHODCALLTYPE GetProtocolVersion(
  5549. /* [out][in] */ DWORD *pdwVersion) = 0;
  5550. };
  5551. #else /* C style interface */
  5552. typedef struct IRpcChannelBuffer2Vtbl
  5553. {
  5554. BEGIN_INTERFACE
  5555. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  5556. IRpcChannelBuffer2 * This,
  5557. /* [in] */ REFIID riid,
  5558. /* [iid_is][out] */ void **ppvObject);
  5559. ULONG ( STDMETHODCALLTYPE *AddRef )(
  5560. IRpcChannelBuffer2 * This);
  5561. ULONG ( STDMETHODCALLTYPE *Release )(
  5562. IRpcChannelBuffer2 * This);
  5563. HRESULT ( STDMETHODCALLTYPE *GetBuffer )(
  5564. IRpcChannelBuffer2 * This,
  5565. /* [in] */ RPCOLEMESSAGE *pMessage,
  5566. /* [in] */ REFIID riid);
  5567. HRESULT ( STDMETHODCALLTYPE *SendReceive )(
  5568. IRpcChannelBuffer2 * This,
  5569. /* [out][in] */ RPCOLEMESSAGE *pMessage,
  5570. /* [out] */ ULONG *pStatus);
  5571. HRESULT ( STDMETHODCALLTYPE *FreeBuffer )(
  5572. IRpcChannelBuffer2 * This,
  5573. /* [in] */ RPCOLEMESSAGE *pMessage);
  5574. HRESULT ( STDMETHODCALLTYPE *GetDestCtx )(
  5575. IRpcChannelBuffer2 * This,
  5576. /* [out] */ DWORD *pdwDestContext,
  5577. /* [out] */ void **ppvDestContext);
  5578. HRESULT ( STDMETHODCALLTYPE *IsConnected )(
  5579. IRpcChannelBuffer2 * This);
  5580. HRESULT ( STDMETHODCALLTYPE *GetProtocolVersion )(
  5581. IRpcChannelBuffer2 * This,
  5582. /* [out][in] */ DWORD *pdwVersion);
  5583. END_INTERFACE
  5584. } IRpcChannelBuffer2Vtbl;
  5585. interface IRpcChannelBuffer2
  5586. {
  5587. CONST_VTBL struct IRpcChannelBuffer2Vtbl *lpVtbl;
  5588. };
  5589. #ifdef COBJMACROS
  5590. #define IRpcChannelBuffer2_QueryInterface(This,riid,ppvObject) \
  5591. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  5592. #define IRpcChannelBuffer2_AddRef(This) \
  5593. (This)->lpVtbl -> AddRef(This)
  5594. #define IRpcChannelBuffer2_Release(This) \
  5595. (This)->lpVtbl -> Release(This)
  5596. #define IRpcChannelBuffer2_GetBuffer(This,pMessage,riid) \
  5597. (This)->lpVtbl -> GetBuffer(This,pMessage,riid)
  5598. #define IRpcChannelBuffer2_SendReceive(This,pMessage,pStatus) \
  5599. (This)->lpVtbl -> SendReceive(This,pMessage,pStatus)
  5600. #define IRpcChannelBuffer2_FreeBuffer(This,pMessage) \
  5601. (This)->lpVtbl -> FreeBuffer(This,pMessage)
  5602. #define IRpcChannelBuffer2_GetDestCtx(This,pdwDestContext,ppvDestContext) \
  5603. (This)->lpVtbl -> GetDestCtx(This,pdwDestContext,ppvDestContext)
  5604. #define IRpcChannelBuffer2_IsConnected(This) \
  5605. (This)->lpVtbl -> IsConnected(This)
  5606. #define IRpcChannelBuffer2_GetProtocolVersion(This,pdwVersion) \
  5607. (This)->lpVtbl -> GetProtocolVersion(This,pdwVersion)
  5608. #endif /* COBJMACROS */
  5609. #endif /* C style interface */
  5610. HRESULT STDMETHODCALLTYPE IRpcChannelBuffer2_GetProtocolVersion_Proxy(
  5611. IRpcChannelBuffer2 * This,
  5612. /* [out][in] */ DWORD *pdwVersion);
  5613. void __RPC_STUB IRpcChannelBuffer2_GetProtocolVersion_Stub(
  5614. IRpcStubBuffer *This,
  5615. IRpcChannelBuffer *_pRpcChannelBuffer,
  5616. PRPC_MESSAGE _pRpcMessage,
  5617. DWORD *_pdwStubPhase);
  5618. #endif /* __IRpcChannelBuffer2_INTERFACE_DEFINED__ */
  5619. #ifndef __IAsyncRpcChannelBuffer_INTERFACE_DEFINED__
  5620. #define __IAsyncRpcChannelBuffer_INTERFACE_DEFINED__
  5621. /* interface IAsyncRpcChannelBuffer */
  5622. /* [unique][uuid][object][local] */
  5623. EXTERN_C const IID IID_IAsyncRpcChannelBuffer;
  5624. #if defined(__cplusplus) && !defined(CINTERFACE)
  5625. MIDL_INTERFACE("a5029fb6-3c34-11d1-9c99-00c04fb998aa")
  5626. IAsyncRpcChannelBuffer : public IRpcChannelBuffer2
  5627. {
  5628. public:
  5629. virtual HRESULT STDMETHODCALLTYPE Send(
  5630. /* [out][in] */ RPCOLEMESSAGE *pMsg,
  5631. /* [in] */ ISynchronize *pSync,
  5632. /* [out] */ ULONG *pulStatus) = 0;
  5633. virtual HRESULT STDMETHODCALLTYPE Receive(
  5634. /* [out][in] */ RPCOLEMESSAGE *pMsg,
  5635. /* [out] */ ULONG *pulStatus) = 0;
  5636. virtual HRESULT STDMETHODCALLTYPE GetDestCtxEx(
  5637. /* [in] */ RPCOLEMESSAGE *pMsg,
  5638. /* [out] */ DWORD *pdwDestContext,
  5639. /* [out] */ void **ppvDestContext) = 0;
  5640. };
  5641. #else /* C style interface */
  5642. typedef struct IAsyncRpcChannelBufferVtbl
  5643. {
  5644. BEGIN_INTERFACE
  5645. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  5646. IAsyncRpcChannelBuffer * This,
  5647. /* [in] */ REFIID riid,
  5648. /* [iid_is][out] */ void **ppvObject);
  5649. ULONG ( STDMETHODCALLTYPE *AddRef )(
  5650. IAsyncRpcChannelBuffer * This);
  5651. ULONG ( STDMETHODCALLTYPE *Release )(
  5652. IAsyncRpcChannelBuffer * This);
  5653. HRESULT ( STDMETHODCALLTYPE *GetBuffer )(
  5654. IAsyncRpcChannelBuffer * This,
  5655. /* [in] */ RPCOLEMESSAGE *pMessage,
  5656. /* [in] */ REFIID riid);
  5657. HRESULT ( STDMETHODCALLTYPE *SendReceive )(
  5658. IAsyncRpcChannelBuffer * This,
  5659. /* [out][in] */ RPCOLEMESSAGE *pMessage,
  5660. /* [out] */ ULONG *pStatus);
  5661. HRESULT ( STDMETHODCALLTYPE *FreeBuffer )(
  5662. IAsyncRpcChannelBuffer * This,
  5663. /* [in] */ RPCOLEMESSAGE *pMessage);
  5664. HRESULT ( STDMETHODCALLTYPE *GetDestCtx )(
  5665. IAsyncRpcChannelBuffer * This,
  5666. /* [out] */ DWORD *pdwDestContext,
  5667. /* [out] */ void **ppvDestContext);
  5668. HRESULT ( STDMETHODCALLTYPE *IsConnected )(
  5669. IAsyncRpcChannelBuffer * This);
  5670. HRESULT ( STDMETHODCALLTYPE *GetProtocolVersion )(
  5671. IAsyncRpcChannelBuffer * This,
  5672. /* [out][in] */ DWORD *pdwVersion);
  5673. HRESULT ( STDMETHODCALLTYPE *Send )(
  5674. IAsyncRpcChannelBuffer * This,
  5675. /* [out][in] */ RPCOLEMESSAGE *pMsg,
  5676. /* [in] */ ISynchronize *pSync,
  5677. /* [out] */ ULONG *pulStatus);
  5678. HRESULT ( STDMETHODCALLTYPE *Receive )(
  5679. IAsyncRpcChannelBuffer * This,
  5680. /* [out][in] */ RPCOLEMESSAGE *pMsg,
  5681. /* [out] */ ULONG *pulStatus);
  5682. HRESULT ( STDMETHODCALLTYPE *GetDestCtxEx )(
  5683. IAsyncRpcChannelBuffer * This,
  5684. /* [in] */ RPCOLEMESSAGE *pMsg,
  5685. /* [out] */ DWORD *pdwDestContext,
  5686. /* [out] */ void **ppvDestContext);
  5687. END_INTERFACE
  5688. } IAsyncRpcChannelBufferVtbl;
  5689. interface IAsyncRpcChannelBuffer
  5690. {
  5691. CONST_VTBL struct IAsyncRpcChannelBufferVtbl *lpVtbl;
  5692. };
  5693. #ifdef COBJMACROS
  5694. #define IAsyncRpcChannelBuffer_QueryInterface(This,riid,ppvObject) \
  5695. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  5696. #define IAsyncRpcChannelBuffer_AddRef(This) \
  5697. (This)->lpVtbl -> AddRef(This)
  5698. #define IAsyncRpcChannelBuffer_Release(This) \
  5699. (This)->lpVtbl -> Release(This)
  5700. #define IAsyncRpcChannelBuffer_GetBuffer(This,pMessage,riid) \
  5701. (This)->lpVtbl -> GetBuffer(This,pMessage,riid)
  5702. #define IAsyncRpcChannelBuffer_SendReceive(This,pMessage,pStatus) \
  5703. (This)->lpVtbl -> SendReceive(This,pMessage,pStatus)
  5704. #define IAsyncRpcChannelBuffer_FreeBuffer(This,pMessage) \
  5705. (This)->lpVtbl -> FreeBuffer(This,pMessage)
  5706. #define IAsyncRpcChannelBuffer_GetDestCtx(This,pdwDestContext,ppvDestContext) \
  5707. (This)->lpVtbl -> GetDestCtx(This,pdwDestContext,ppvDestContext)
  5708. #define IAsyncRpcChannelBuffer_IsConnected(This) \
  5709. (This)->lpVtbl -> IsConnected(This)
  5710. #define IAsyncRpcChannelBuffer_GetProtocolVersion(This,pdwVersion) \
  5711. (This)->lpVtbl -> GetProtocolVersion(This,pdwVersion)
  5712. #define IAsyncRpcChannelBuffer_Send(This,pMsg,pSync,pulStatus) \
  5713. (This)->lpVtbl -> Send(This,pMsg,pSync,pulStatus)
  5714. #define IAsyncRpcChannelBuffer_Receive(This,pMsg,pulStatus) \
  5715. (This)->lpVtbl -> Receive(This,pMsg,pulStatus)
  5716. #define IAsyncRpcChannelBuffer_GetDestCtxEx(This,pMsg,pdwDestContext,ppvDestContext) \
  5717. (This)->lpVtbl -> GetDestCtxEx(This,pMsg,pdwDestContext,ppvDestContext)
  5718. #endif /* COBJMACROS */
  5719. #endif /* C style interface */
  5720. HRESULT STDMETHODCALLTYPE IAsyncRpcChannelBuffer_Send_Proxy(
  5721. IAsyncRpcChannelBuffer * This,
  5722. /* [out][in] */ RPCOLEMESSAGE *pMsg,
  5723. /* [in] */ ISynchronize *pSync,
  5724. /* [out] */ ULONG *pulStatus);
  5725. void __RPC_STUB IAsyncRpcChannelBuffer_Send_Stub(
  5726. IRpcStubBuffer *This,
  5727. IRpcChannelBuffer *_pRpcChannelBuffer,
  5728. PRPC_MESSAGE _pRpcMessage,
  5729. DWORD *_pdwStubPhase);
  5730. HRESULT STDMETHODCALLTYPE IAsyncRpcChannelBuffer_Receive_Proxy(
  5731. IAsyncRpcChannelBuffer * This,
  5732. /* [out][in] */ RPCOLEMESSAGE *pMsg,
  5733. /* [out] */ ULONG *pulStatus);
  5734. void __RPC_STUB IAsyncRpcChannelBuffer_Receive_Stub(
  5735. IRpcStubBuffer *This,
  5736. IRpcChannelBuffer *_pRpcChannelBuffer,
  5737. PRPC_MESSAGE _pRpcMessage,
  5738. DWORD *_pdwStubPhase);
  5739. HRESULT STDMETHODCALLTYPE IAsyncRpcChannelBuffer_GetDestCtxEx_Proxy(
  5740. IAsyncRpcChannelBuffer * This,
  5741. /* [in] */ RPCOLEMESSAGE *pMsg,
  5742. /* [out] */ DWORD *pdwDestContext,
  5743. /* [out] */ void **ppvDestContext);
  5744. void __RPC_STUB IAsyncRpcChannelBuffer_GetDestCtxEx_Stub(
  5745. IRpcStubBuffer *This,
  5746. IRpcChannelBuffer *_pRpcChannelBuffer,
  5747. PRPC_MESSAGE _pRpcMessage,
  5748. DWORD *_pdwStubPhase);
  5749. #endif /* __IAsyncRpcChannelBuffer_INTERFACE_DEFINED__ */
  5750. #ifndef __IRpcChannelBuffer3_INTERFACE_DEFINED__
  5751. #define __IRpcChannelBuffer3_INTERFACE_DEFINED__
  5752. /* interface IRpcChannelBuffer3 */
  5753. /* [uuid][object][local] */
  5754. EXTERN_C const IID IID_IRpcChannelBuffer3;
  5755. #if defined(__cplusplus) && !defined(CINTERFACE)
  5756. MIDL_INTERFACE("25B15600-0115-11d0-BF0D-00AA00B8DFD2")
  5757. IRpcChannelBuffer3 : public IRpcChannelBuffer2
  5758. {
  5759. public:
  5760. virtual HRESULT STDMETHODCALLTYPE Send(
  5761. /* [out][in] */ RPCOLEMESSAGE *pMsg,
  5762. /* [out] */ ULONG *pulStatus) = 0;
  5763. virtual HRESULT STDMETHODCALLTYPE Receive(
  5764. /* [out][in] */ RPCOLEMESSAGE *pMsg,
  5765. /* [in] */ ULONG ulSize,
  5766. /* [out] */ ULONG *pulStatus) = 0;
  5767. virtual HRESULT STDMETHODCALLTYPE Cancel(
  5768. /* [in] */ RPCOLEMESSAGE *pMsg) = 0;
  5769. virtual HRESULT STDMETHODCALLTYPE GetCallContext(
  5770. /* [in] */ RPCOLEMESSAGE *pMsg,
  5771. /* [in] */ REFIID riid,
  5772. /* [out] */ void **pInterface) = 0;
  5773. virtual HRESULT STDMETHODCALLTYPE GetDestCtxEx(
  5774. /* [in] */ RPCOLEMESSAGE *pMsg,
  5775. /* [out] */ DWORD *pdwDestContext,
  5776. /* [out] */ void **ppvDestContext) = 0;
  5777. virtual HRESULT STDMETHODCALLTYPE GetState(
  5778. /* [in] */ RPCOLEMESSAGE *pMsg,
  5779. /* [out] */ DWORD *pState) = 0;
  5780. virtual HRESULT STDMETHODCALLTYPE RegisterAsync(
  5781. /* [in] */ RPCOLEMESSAGE *pMsg,
  5782. /* [in] */ IAsyncManager *pAsyncMgr) = 0;
  5783. };
  5784. #else /* C style interface */
  5785. typedef struct IRpcChannelBuffer3Vtbl
  5786. {
  5787. BEGIN_INTERFACE
  5788. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  5789. IRpcChannelBuffer3 * This,
  5790. /* [in] */ REFIID riid,
  5791. /* [iid_is][out] */ void **ppvObject);
  5792. ULONG ( STDMETHODCALLTYPE *AddRef )(
  5793. IRpcChannelBuffer3 * This);
  5794. ULONG ( STDMETHODCALLTYPE *Release )(
  5795. IRpcChannelBuffer3 * This);
  5796. HRESULT ( STDMETHODCALLTYPE *GetBuffer )(
  5797. IRpcChannelBuffer3 * This,
  5798. /* [in] */ RPCOLEMESSAGE *pMessage,
  5799. /* [in] */ REFIID riid);
  5800. HRESULT ( STDMETHODCALLTYPE *SendReceive )(
  5801. IRpcChannelBuffer3 * This,
  5802. /* [out][in] */ RPCOLEMESSAGE *pMessage,
  5803. /* [out] */ ULONG *pStatus);
  5804. HRESULT ( STDMETHODCALLTYPE *FreeBuffer )(
  5805. IRpcChannelBuffer3 * This,
  5806. /* [in] */ RPCOLEMESSAGE *pMessage);
  5807. HRESULT ( STDMETHODCALLTYPE *GetDestCtx )(
  5808. IRpcChannelBuffer3 * This,
  5809. /* [out] */ DWORD *pdwDestContext,
  5810. /* [out] */ void **ppvDestContext);
  5811. HRESULT ( STDMETHODCALLTYPE *IsConnected )(
  5812. IRpcChannelBuffer3 * This);
  5813. HRESULT ( STDMETHODCALLTYPE *GetProtocolVersion )(
  5814. IRpcChannelBuffer3 * This,
  5815. /* [out][in] */ DWORD *pdwVersion);
  5816. HRESULT ( STDMETHODCALLTYPE *Send )(
  5817. IRpcChannelBuffer3 * This,
  5818. /* [out][in] */ RPCOLEMESSAGE *pMsg,
  5819. /* [out] */ ULONG *pulStatus);
  5820. HRESULT ( STDMETHODCALLTYPE *Receive )(
  5821. IRpcChannelBuffer3 * This,
  5822. /* [out][in] */ RPCOLEMESSAGE *pMsg,
  5823. /* [in] */ ULONG ulSize,
  5824. /* [out] */ ULONG *pulStatus);
  5825. HRESULT ( STDMETHODCALLTYPE *Cancel )(
  5826. IRpcChannelBuffer3 * This,
  5827. /* [in] */ RPCOLEMESSAGE *pMsg);
  5828. HRESULT ( STDMETHODCALLTYPE *GetCallContext )(
  5829. IRpcChannelBuffer3 * This,
  5830. /* [in] */ RPCOLEMESSAGE *pMsg,
  5831. /* [in] */ REFIID riid,
  5832. /* [out] */ void **pInterface);
  5833. HRESULT ( STDMETHODCALLTYPE *GetDestCtxEx )(
  5834. IRpcChannelBuffer3 * This,
  5835. /* [in] */ RPCOLEMESSAGE *pMsg,
  5836. /* [out] */ DWORD *pdwDestContext,
  5837. /* [out] */ void **ppvDestContext);
  5838. HRESULT ( STDMETHODCALLTYPE *GetState )(
  5839. IRpcChannelBuffer3 * This,
  5840. /* [in] */ RPCOLEMESSAGE *pMsg,
  5841. /* [out] */ DWORD *pState);
  5842. HRESULT ( STDMETHODCALLTYPE *RegisterAsync )(
  5843. IRpcChannelBuffer3 * This,
  5844. /* [in] */ RPCOLEMESSAGE *pMsg,
  5845. /* [in] */ IAsyncManager *pAsyncMgr);
  5846. END_INTERFACE
  5847. } IRpcChannelBuffer3Vtbl;
  5848. interface IRpcChannelBuffer3
  5849. {
  5850. CONST_VTBL struct IRpcChannelBuffer3Vtbl *lpVtbl;
  5851. };
  5852. #ifdef COBJMACROS
  5853. #define IRpcChannelBuffer3_QueryInterface(This,riid,ppvObject) \
  5854. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  5855. #define IRpcChannelBuffer3_AddRef(This) \
  5856. (This)->lpVtbl -> AddRef(This)
  5857. #define IRpcChannelBuffer3_Release(This) \
  5858. (This)->lpVtbl -> Release(This)
  5859. #define IRpcChannelBuffer3_GetBuffer(This,pMessage,riid) \
  5860. (This)->lpVtbl -> GetBuffer(This,pMessage,riid)
  5861. #define IRpcChannelBuffer3_SendReceive(This,pMessage,pStatus) \
  5862. (This)->lpVtbl -> SendReceive(This,pMessage,pStatus)
  5863. #define IRpcChannelBuffer3_FreeBuffer(This,pMessage) \
  5864. (This)->lpVtbl -> FreeBuffer(This,pMessage)
  5865. #define IRpcChannelBuffer3_GetDestCtx(This,pdwDestContext,ppvDestContext) \
  5866. (This)->lpVtbl -> GetDestCtx(This,pdwDestContext,ppvDestContext)
  5867. #define IRpcChannelBuffer3_IsConnected(This) \
  5868. (This)->lpVtbl -> IsConnected(This)
  5869. #define IRpcChannelBuffer3_GetProtocolVersion(This,pdwVersion) \
  5870. (This)->lpVtbl -> GetProtocolVersion(This,pdwVersion)
  5871. #define IRpcChannelBuffer3_Send(This,pMsg,pulStatus) \
  5872. (This)->lpVtbl -> Send(This,pMsg,pulStatus)
  5873. #define IRpcChannelBuffer3_Receive(This,pMsg,ulSize,pulStatus) \
  5874. (This)->lpVtbl -> Receive(This,pMsg,ulSize,pulStatus)
  5875. #define IRpcChannelBuffer3_Cancel(This,pMsg) \
  5876. (This)->lpVtbl -> Cancel(This,pMsg)
  5877. #define IRpcChannelBuffer3_GetCallContext(This,pMsg,riid,pInterface) \
  5878. (This)->lpVtbl -> GetCallContext(This,pMsg,riid,pInterface)
  5879. #define IRpcChannelBuffer3_GetDestCtxEx(This,pMsg,pdwDestContext,ppvDestContext) \
  5880. (This)->lpVtbl -> GetDestCtxEx(This,pMsg,pdwDestContext,ppvDestContext)
  5881. #define IRpcChannelBuffer3_GetState(This,pMsg,pState) \
  5882. (This)->lpVtbl -> GetState(This,pMsg,pState)
  5883. #define IRpcChannelBuffer3_RegisterAsync(This,pMsg,pAsyncMgr) \
  5884. (This)->lpVtbl -> RegisterAsync(This,pMsg,pAsyncMgr)
  5885. #endif /* COBJMACROS */
  5886. #endif /* C style interface */
  5887. HRESULT STDMETHODCALLTYPE IRpcChannelBuffer3_Send_Proxy(
  5888. IRpcChannelBuffer3 * This,
  5889. /* [out][in] */ RPCOLEMESSAGE *pMsg,
  5890. /* [out] */ ULONG *pulStatus);
  5891. void __RPC_STUB IRpcChannelBuffer3_Send_Stub(
  5892. IRpcStubBuffer *This,
  5893. IRpcChannelBuffer *_pRpcChannelBuffer,
  5894. PRPC_MESSAGE _pRpcMessage,
  5895. DWORD *_pdwStubPhase);
  5896. HRESULT STDMETHODCALLTYPE IRpcChannelBuffer3_Receive_Proxy(
  5897. IRpcChannelBuffer3 * This,
  5898. /* [out][in] */ RPCOLEMESSAGE *pMsg,
  5899. /* [in] */ ULONG ulSize,
  5900. /* [out] */ ULONG *pulStatus);
  5901. void __RPC_STUB IRpcChannelBuffer3_Receive_Stub(
  5902. IRpcStubBuffer *This,
  5903. IRpcChannelBuffer *_pRpcChannelBuffer,
  5904. PRPC_MESSAGE _pRpcMessage,
  5905. DWORD *_pdwStubPhase);
  5906. HRESULT STDMETHODCALLTYPE IRpcChannelBuffer3_Cancel_Proxy(
  5907. IRpcChannelBuffer3 * This,
  5908. /* [in] */ RPCOLEMESSAGE *pMsg);
  5909. void __RPC_STUB IRpcChannelBuffer3_Cancel_Stub(
  5910. IRpcStubBuffer *This,
  5911. IRpcChannelBuffer *_pRpcChannelBuffer,
  5912. PRPC_MESSAGE _pRpcMessage,
  5913. DWORD *_pdwStubPhase);
  5914. HRESULT STDMETHODCALLTYPE IRpcChannelBuffer3_GetCallContext_Proxy(
  5915. IRpcChannelBuffer3 * This,
  5916. /* [in] */ RPCOLEMESSAGE *pMsg,
  5917. /* [in] */ REFIID riid,
  5918. /* [out] */ void **pInterface);
  5919. void __RPC_STUB IRpcChannelBuffer3_GetCallContext_Stub(
  5920. IRpcStubBuffer *This,
  5921. IRpcChannelBuffer *_pRpcChannelBuffer,
  5922. PRPC_MESSAGE _pRpcMessage,
  5923. DWORD *_pdwStubPhase);
  5924. HRESULT STDMETHODCALLTYPE IRpcChannelBuffer3_GetDestCtxEx_Proxy(
  5925. IRpcChannelBuffer3 * This,
  5926. /* [in] */ RPCOLEMESSAGE *pMsg,
  5927. /* [out] */ DWORD *pdwDestContext,
  5928. /* [out] */ void **ppvDestContext);
  5929. void __RPC_STUB IRpcChannelBuffer3_GetDestCtxEx_Stub(
  5930. IRpcStubBuffer *This,
  5931. IRpcChannelBuffer *_pRpcChannelBuffer,
  5932. PRPC_MESSAGE _pRpcMessage,
  5933. DWORD *_pdwStubPhase);
  5934. HRESULT STDMETHODCALLTYPE IRpcChannelBuffer3_GetState_Proxy(
  5935. IRpcChannelBuffer3 * This,
  5936. /* [in] */ RPCOLEMESSAGE *pMsg,
  5937. /* [out] */ DWORD *pState);
  5938. void __RPC_STUB IRpcChannelBuffer3_GetState_Stub(
  5939. IRpcStubBuffer *This,
  5940. IRpcChannelBuffer *_pRpcChannelBuffer,
  5941. PRPC_MESSAGE _pRpcMessage,
  5942. DWORD *_pdwStubPhase);
  5943. HRESULT STDMETHODCALLTYPE IRpcChannelBuffer3_RegisterAsync_Proxy(
  5944. IRpcChannelBuffer3 * This,
  5945. /* [in] */ RPCOLEMESSAGE *pMsg,
  5946. /* [in] */ IAsyncManager *pAsyncMgr);
  5947. void __RPC_STUB IRpcChannelBuffer3_RegisterAsync_Stub(
  5948. IRpcStubBuffer *This,
  5949. IRpcChannelBuffer *_pRpcChannelBuffer,
  5950. PRPC_MESSAGE _pRpcMessage,
  5951. DWORD *_pdwStubPhase);
  5952. #endif /* __IRpcChannelBuffer3_INTERFACE_DEFINED__ */
  5953. #ifndef __IRpcSyntaxNegotiate_INTERFACE_DEFINED__
  5954. #define __IRpcSyntaxNegotiate_INTERFACE_DEFINED__
  5955. /* interface IRpcSyntaxNegotiate */
  5956. /* [uuid][object][local] */
  5957. EXTERN_C const IID IID_IRpcSyntaxNegotiate;
  5958. #if defined(__cplusplus) && !defined(CINTERFACE)
  5959. MIDL_INTERFACE("58a08519-24c8-4935-b482-3fd823333a4f")
  5960. IRpcSyntaxNegotiate : public IUnknown
  5961. {
  5962. public:
  5963. virtual HRESULT STDMETHODCALLTYPE NegotiateSyntax(
  5964. /* [out][in] */ RPCOLEMESSAGE *pMsg) = 0;
  5965. };
  5966. #else /* C style interface */
  5967. typedef struct IRpcSyntaxNegotiateVtbl
  5968. {
  5969. BEGIN_INTERFACE
  5970. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  5971. IRpcSyntaxNegotiate * This,
  5972. /* [in] */ REFIID riid,
  5973. /* [iid_is][out] */ void **ppvObject);
  5974. ULONG ( STDMETHODCALLTYPE *AddRef )(
  5975. IRpcSyntaxNegotiate * This);
  5976. ULONG ( STDMETHODCALLTYPE *Release )(
  5977. IRpcSyntaxNegotiate * This);
  5978. HRESULT ( STDMETHODCALLTYPE *NegotiateSyntax )(
  5979. IRpcSyntaxNegotiate * This,
  5980. /* [out][in] */ RPCOLEMESSAGE *pMsg);
  5981. END_INTERFACE
  5982. } IRpcSyntaxNegotiateVtbl;
  5983. interface IRpcSyntaxNegotiate
  5984. {
  5985. CONST_VTBL struct IRpcSyntaxNegotiateVtbl *lpVtbl;
  5986. };
  5987. #ifdef COBJMACROS
  5988. #define IRpcSyntaxNegotiate_QueryInterface(This,riid,ppvObject) \
  5989. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  5990. #define IRpcSyntaxNegotiate_AddRef(This) \
  5991. (This)->lpVtbl -> AddRef(This)
  5992. #define IRpcSyntaxNegotiate_Release(This) \
  5993. (This)->lpVtbl -> Release(This)
  5994. #define IRpcSyntaxNegotiate_NegotiateSyntax(This,pMsg) \
  5995. (This)->lpVtbl -> NegotiateSyntax(This,pMsg)
  5996. #endif /* COBJMACROS */
  5997. #endif /* C style interface */
  5998. HRESULT STDMETHODCALLTYPE IRpcSyntaxNegotiate_NegotiateSyntax_Proxy(
  5999. IRpcSyntaxNegotiate * This,
  6000. /* [out][in] */ RPCOLEMESSAGE *pMsg);
  6001. void __RPC_STUB IRpcSyntaxNegotiate_NegotiateSyntax_Stub(
  6002. IRpcStubBuffer *This,
  6003. IRpcChannelBuffer *_pRpcChannelBuffer,
  6004. PRPC_MESSAGE _pRpcMessage,
  6005. DWORD *_pdwStubPhase);
  6006. #endif /* __IRpcSyntaxNegotiate_INTERFACE_DEFINED__ */
  6007. #ifndef __IRpcProxyBuffer_INTERFACE_DEFINED__
  6008. #define __IRpcProxyBuffer_INTERFACE_DEFINED__
  6009. /* interface IRpcProxyBuffer */
  6010. /* [uuid][object][local] */
  6011. EXTERN_C const IID IID_IRpcProxyBuffer;
  6012. #if defined(__cplusplus) && !defined(CINTERFACE)
  6013. MIDL_INTERFACE("D5F56A34-593B-101A-B569-08002B2DBF7A")
  6014. IRpcProxyBuffer : public IUnknown
  6015. {
  6016. public:
  6017. virtual HRESULT STDMETHODCALLTYPE Connect(
  6018. /* [unique][in] */ IRpcChannelBuffer *pRpcChannelBuffer) = 0;
  6019. virtual void STDMETHODCALLTYPE Disconnect( void) = 0;
  6020. };
  6021. #else /* C style interface */
  6022. typedef struct IRpcProxyBufferVtbl
  6023. {
  6024. BEGIN_INTERFACE
  6025. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  6026. IRpcProxyBuffer * This,
  6027. /* [in] */ REFIID riid,
  6028. /* [iid_is][out] */ void **ppvObject);
  6029. ULONG ( STDMETHODCALLTYPE *AddRef )(
  6030. IRpcProxyBuffer * This);
  6031. ULONG ( STDMETHODCALLTYPE *Release )(
  6032. IRpcProxyBuffer * This);
  6033. HRESULT ( STDMETHODCALLTYPE *Connect )(
  6034. IRpcProxyBuffer * This,
  6035. /* [unique][in] */ IRpcChannelBuffer *pRpcChannelBuffer);
  6036. void ( STDMETHODCALLTYPE *Disconnect )(
  6037. IRpcProxyBuffer * This);
  6038. END_INTERFACE
  6039. } IRpcProxyBufferVtbl;
  6040. interface IRpcProxyBuffer
  6041. {
  6042. CONST_VTBL struct IRpcProxyBufferVtbl *lpVtbl;
  6043. };
  6044. #ifdef COBJMACROS
  6045. #define IRpcProxyBuffer_QueryInterface(This,riid,ppvObject) \
  6046. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  6047. #define IRpcProxyBuffer_AddRef(This) \
  6048. (This)->lpVtbl -> AddRef(This)
  6049. #define IRpcProxyBuffer_Release(This) \
  6050. (This)->lpVtbl -> Release(This)
  6051. #define IRpcProxyBuffer_Connect(This,pRpcChannelBuffer) \
  6052. (This)->lpVtbl -> Connect(This,pRpcChannelBuffer)
  6053. #define IRpcProxyBuffer_Disconnect(This) \
  6054. (This)->lpVtbl -> Disconnect(This)
  6055. #endif /* COBJMACROS */
  6056. #endif /* C style interface */
  6057. HRESULT STDMETHODCALLTYPE IRpcProxyBuffer_Connect_Proxy(
  6058. IRpcProxyBuffer * This,
  6059. /* [unique][in] */ IRpcChannelBuffer *pRpcChannelBuffer);
  6060. void __RPC_STUB IRpcProxyBuffer_Connect_Stub(
  6061. IRpcStubBuffer *This,
  6062. IRpcChannelBuffer *_pRpcChannelBuffer,
  6063. PRPC_MESSAGE _pRpcMessage,
  6064. DWORD *_pdwStubPhase);
  6065. void STDMETHODCALLTYPE IRpcProxyBuffer_Disconnect_Proxy(
  6066. IRpcProxyBuffer * This);
  6067. void __RPC_STUB IRpcProxyBuffer_Disconnect_Stub(
  6068. IRpcStubBuffer *This,
  6069. IRpcChannelBuffer *_pRpcChannelBuffer,
  6070. PRPC_MESSAGE _pRpcMessage,
  6071. DWORD *_pdwStubPhase);
  6072. #endif /* __IRpcProxyBuffer_INTERFACE_DEFINED__ */
  6073. #ifndef __IRpcStubBuffer_INTERFACE_DEFINED__
  6074. #define __IRpcStubBuffer_INTERFACE_DEFINED__
  6075. /* interface IRpcStubBuffer */
  6076. /* [uuid][object][local] */
  6077. EXTERN_C const IID IID_IRpcStubBuffer;
  6078. #if defined(__cplusplus) && !defined(CINTERFACE)
  6079. MIDL_INTERFACE("D5F56AFC-593B-101A-B569-08002B2DBF7A")
  6080. IRpcStubBuffer : public IUnknown
  6081. {
  6082. public:
  6083. virtual HRESULT STDMETHODCALLTYPE Connect(
  6084. /* [in] */ IUnknown *pUnkServer) = 0;
  6085. virtual void STDMETHODCALLTYPE Disconnect( void) = 0;
  6086. virtual HRESULT STDMETHODCALLTYPE Invoke(
  6087. /* [in] */ RPCOLEMESSAGE *_prpcmsg,
  6088. /* [in] */ IRpcChannelBuffer *_pRpcChannelBuffer) = 0;
  6089. virtual IRpcStubBuffer *STDMETHODCALLTYPE IsIIDSupported(
  6090. /* [in] */ REFIID riid) = 0;
  6091. virtual ULONG STDMETHODCALLTYPE CountRefs( void) = 0;
  6092. virtual HRESULT STDMETHODCALLTYPE DebugServerQueryInterface(
  6093. void **ppv) = 0;
  6094. virtual void STDMETHODCALLTYPE DebugServerRelease(
  6095. void *pv) = 0;
  6096. };
  6097. #else /* C style interface */
  6098. typedef struct IRpcStubBufferVtbl
  6099. {
  6100. BEGIN_INTERFACE
  6101. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  6102. IRpcStubBuffer * This,
  6103. /* [in] */ REFIID riid,
  6104. /* [iid_is][out] */ void **ppvObject);
  6105. ULONG ( STDMETHODCALLTYPE *AddRef )(
  6106. IRpcStubBuffer * This);
  6107. ULONG ( STDMETHODCALLTYPE *Release )(
  6108. IRpcStubBuffer * This);
  6109. HRESULT ( STDMETHODCALLTYPE *Connect )(
  6110. IRpcStubBuffer * This,
  6111. /* [in] */ IUnknown *pUnkServer);
  6112. void ( STDMETHODCALLTYPE *Disconnect )(
  6113. IRpcStubBuffer * This);
  6114. HRESULT ( STDMETHODCALLTYPE *Invoke )(
  6115. IRpcStubBuffer * This,
  6116. /* [in] */ RPCOLEMESSAGE *_prpcmsg,
  6117. /* [in] */ IRpcChannelBuffer *_pRpcChannelBuffer);
  6118. IRpcStubBuffer *( STDMETHODCALLTYPE *IsIIDSupported )(
  6119. IRpcStubBuffer * This,
  6120. /* [in] */ REFIID riid);
  6121. ULONG ( STDMETHODCALLTYPE *CountRefs )(
  6122. IRpcStubBuffer * This);
  6123. HRESULT ( STDMETHODCALLTYPE *DebugServerQueryInterface )(
  6124. IRpcStubBuffer * This,
  6125. void **ppv);
  6126. void ( STDMETHODCALLTYPE *DebugServerRelease )(
  6127. IRpcStubBuffer * This,
  6128. void *pv);
  6129. END_INTERFACE
  6130. } IRpcStubBufferVtbl;
  6131. interface IRpcStubBuffer
  6132. {
  6133. CONST_VTBL struct IRpcStubBufferVtbl *lpVtbl;
  6134. };
  6135. #ifdef COBJMACROS
  6136. #define IRpcStubBuffer_QueryInterface(This,riid,ppvObject) \
  6137. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  6138. #define IRpcStubBuffer_AddRef(This) \
  6139. (This)->lpVtbl -> AddRef(This)
  6140. #define IRpcStubBuffer_Release(This) \
  6141. (This)->lpVtbl -> Release(This)
  6142. #define IRpcStubBuffer_Connect(This,pUnkServer) \
  6143. (This)->lpVtbl -> Connect(This,pUnkServer)
  6144. #define IRpcStubBuffer_Disconnect(This) \
  6145. (This)->lpVtbl -> Disconnect(This)
  6146. #define IRpcStubBuffer_Invoke(This,_prpcmsg,_pRpcChannelBuffer) \
  6147. (This)->lpVtbl -> Invoke(This,_prpcmsg,_pRpcChannelBuffer)
  6148. #define IRpcStubBuffer_IsIIDSupported(This,riid) \
  6149. (This)->lpVtbl -> IsIIDSupported(This,riid)
  6150. #define IRpcStubBuffer_CountRefs(This) \
  6151. (This)->lpVtbl -> CountRefs(This)
  6152. #define IRpcStubBuffer_DebugServerQueryInterface(This,ppv) \
  6153. (This)->lpVtbl -> DebugServerQueryInterface(This,ppv)
  6154. #define IRpcStubBuffer_DebugServerRelease(This,pv) \
  6155. (This)->lpVtbl -> DebugServerRelease(This,pv)
  6156. #endif /* COBJMACROS */
  6157. #endif /* C style interface */
  6158. HRESULT STDMETHODCALLTYPE IRpcStubBuffer_Connect_Proxy(
  6159. IRpcStubBuffer * This,
  6160. /* [in] */ IUnknown *pUnkServer);
  6161. void __RPC_STUB IRpcStubBuffer_Connect_Stub(
  6162. IRpcStubBuffer *This,
  6163. IRpcChannelBuffer *_pRpcChannelBuffer,
  6164. PRPC_MESSAGE _pRpcMessage,
  6165. DWORD *_pdwStubPhase);
  6166. void STDMETHODCALLTYPE IRpcStubBuffer_Disconnect_Proxy(
  6167. IRpcStubBuffer * This);
  6168. void __RPC_STUB IRpcStubBuffer_Disconnect_Stub(
  6169. IRpcStubBuffer *This,
  6170. IRpcChannelBuffer *_pRpcChannelBuffer,
  6171. PRPC_MESSAGE _pRpcMessage,
  6172. DWORD *_pdwStubPhase);
  6173. HRESULT STDMETHODCALLTYPE IRpcStubBuffer_Invoke_Proxy(
  6174. IRpcStubBuffer * This,
  6175. /* [in] */ RPCOLEMESSAGE *_prpcmsg,
  6176. /* [in] */ IRpcChannelBuffer *_pRpcChannelBuffer);
  6177. void __RPC_STUB IRpcStubBuffer_Invoke_Stub(
  6178. IRpcStubBuffer *This,
  6179. IRpcChannelBuffer *_pRpcChannelBuffer,
  6180. PRPC_MESSAGE _pRpcMessage,
  6181. DWORD *_pdwStubPhase);
  6182. IRpcStubBuffer *STDMETHODCALLTYPE IRpcStubBuffer_IsIIDSupported_Proxy(
  6183. IRpcStubBuffer * This,
  6184. /* [in] */ REFIID riid);
  6185. void __RPC_STUB IRpcStubBuffer_IsIIDSupported_Stub(
  6186. IRpcStubBuffer *This,
  6187. IRpcChannelBuffer *_pRpcChannelBuffer,
  6188. PRPC_MESSAGE _pRpcMessage,
  6189. DWORD *_pdwStubPhase);
  6190. ULONG STDMETHODCALLTYPE IRpcStubBuffer_CountRefs_Proxy(
  6191. IRpcStubBuffer * This);
  6192. void __RPC_STUB IRpcStubBuffer_CountRefs_Stub(
  6193. IRpcStubBuffer *This,
  6194. IRpcChannelBuffer *_pRpcChannelBuffer,
  6195. PRPC_MESSAGE _pRpcMessage,
  6196. DWORD *_pdwStubPhase);
  6197. HRESULT STDMETHODCALLTYPE IRpcStubBuffer_DebugServerQueryInterface_Proxy(
  6198. IRpcStubBuffer * This,
  6199. void **ppv);
  6200. void __RPC_STUB IRpcStubBuffer_DebugServerQueryInterface_Stub(
  6201. IRpcStubBuffer *This,
  6202. IRpcChannelBuffer *_pRpcChannelBuffer,
  6203. PRPC_MESSAGE _pRpcMessage,
  6204. DWORD *_pdwStubPhase);
  6205. void STDMETHODCALLTYPE IRpcStubBuffer_DebugServerRelease_Proxy(
  6206. IRpcStubBuffer * This,
  6207. void *pv);
  6208. void __RPC_STUB IRpcStubBuffer_DebugServerRelease_Stub(
  6209. IRpcStubBuffer *This,
  6210. IRpcChannelBuffer *_pRpcChannelBuffer,
  6211. PRPC_MESSAGE _pRpcMessage,
  6212. DWORD *_pdwStubPhase);
  6213. #endif /* __IRpcStubBuffer_INTERFACE_DEFINED__ */
  6214. #ifndef __IPSFactoryBuffer_INTERFACE_DEFINED__
  6215. #define __IPSFactoryBuffer_INTERFACE_DEFINED__
  6216. /* interface IPSFactoryBuffer */
  6217. /* [uuid][object][local] */
  6218. EXTERN_C const IID IID_IPSFactoryBuffer;
  6219. #if defined(__cplusplus) && !defined(CINTERFACE)
  6220. MIDL_INTERFACE("D5F569D0-593B-101A-B569-08002B2DBF7A")
  6221. IPSFactoryBuffer : public IUnknown
  6222. {
  6223. public:
  6224. virtual HRESULT STDMETHODCALLTYPE CreateProxy(
  6225. /* [in] */ IUnknown *pUnkOuter,
  6226. /* [in] */ REFIID riid,
  6227. /* [out] */ IRpcProxyBuffer **ppProxy,
  6228. /* [out] */ void **ppv) = 0;
  6229. virtual HRESULT STDMETHODCALLTYPE CreateStub(
  6230. /* [in] */ REFIID riid,
  6231. /* [unique][in] */ IUnknown *pUnkServer,
  6232. /* [out] */ IRpcStubBuffer **ppStub) = 0;
  6233. };
  6234. #else /* C style interface */
  6235. typedef struct IPSFactoryBufferVtbl
  6236. {
  6237. BEGIN_INTERFACE
  6238. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  6239. IPSFactoryBuffer * This,
  6240. /* [in] */ REFIID riid,
  6241. /* [iid_is][out] */ void **ppvObject);
  6242. ULONG ( STDMETHODCALLTYPE *AddRef )(
  6243. IPSFactoryBuffer * This);
  6244. ULONG ( STDMETHODCALLTYPE *Release )(
  6245. IPSFactoryBuffer * This);
  6246. HRESULT ( STDMETHODCALLTYPE *CreateProxy )(
  6247. IPSFactoryBuffer * This,
  6248. /* [in] */ IUnknown *pUnkOuter,
  6249. /* [in] */ REFIID riid,
  6250. /* [out] */ IRpcProxyBuffer **ppProxy,
  6251. /* [out] */ void **ppv);
  6252. HRESULT ( STDMETHODCALLTYPE *CreateStub )(
  6253. IPSFactoryBuffer * This,
  6254. /* [in] */ REFIID riid,
  6255. /* [unique][in] */ IUnknown *pUnkServer,
  6256. /* [out] */ IRpcStubBuffer **ppStub);
  6257. END_INTERFACE
  6258. } IPSFactoryBufferVtbl;
  6259. interface IPSFactoryBuffer
  6260. {
  6261. CONST_VTBL struct IPSFactoryBufferVtbl *lpVtbl;
  6262. };
  6263. #ifdef COBJMACROS
  6264. #define IPSFactoryBuffer_QueryInterface(This,riid,ppvObject) \
  6265. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  6266. #define IPSFactoryBuffer_AddRef(This) \
  6267. (This)->lpVtbl -> AddRef(This)
  6268. #define IPSFactoryBuffer_Release(This) \
  6269. (This)->lpVtbl -> Release(This)
  6270. #define IPSFactoryBuffer_CreateProxy(This,pUnkOuter,riid,ppProxy,ppv) \
  6271. (This)->lpVtbl -> CreateProxy(This,pUnkOuter,riid,ppProxy,ppv)
  6272. #define IPSFactoryBuffer_CreateStub(This,riid,pUnkServer,ppStub) \
  6273. (This)->lpVtbl -> CreateStub(This,riid,pUnkServer,ppStub)
  6274. #endif /* COBJMACROS */
  6275. #endif /* C style interface */
  6276. HRESULT STDMETHODCALLTYPE IPSFactoryBuffer_CreateProxy_Proxy(
  6277. IPSFactoryBuffer * This,
  6278. /* [in] */ IUnknown *pUnkOuter,
  6279. /* [in] */ REFIID riid,
  6280. /* [out] */ IRpcProxyBuffer **ppProxy,
  6281. /* [out] */ void **ppv);
  6282. void __RPC_STUB IPSFactoryBuffer_CreateProxy_Stub(
  6283. IRpcStubBuffer *This,
  6284. IRpcChannelBuffer *_pRpcChannelBuffer,
  6285. PRPC_MESSAGE _pRpcMessage,
  6286. DWORD *_pdwStubPhase);
  6287. HRESULT STDMETHODCALLTYPE IPSFactoryBuffer_CreateStub_Proxy(
  6288. IPSFactoryBuffer * This,
  6289. /* [in] */ REFIID riid,
  6290. /* [unique][in] */ IUnknown *pUnkServer,
  6291. /* [out] */ IRpcStubBuffer **ppStub);
  6292. void __RPC_STUB IPSFactoryBuffer_CreateStub_Stub(
  6293. IRpcStubBuffer *This,
  6294. IRpcChannelBuffer *_pRpcChannelBuffer,
  6295. PRPC_MESSAGE _pRpcMessage,
  6296. DWORD *_pdwStubPhase);
  6297. #endif /* __IPSFactoryBuffer_INTERFACE_DEFINED__ */
  6298. /* interface __MIDL_itf_objidl_0050 */
  6299. /* [local] */
  6300. #if (_WIN32_WINNT >= 0x0400 ) || defined(_WIN32_DCOM) // DCOM
  6301. // This interface is only valid on Windows NT 4.0
  6302. typedef struct SChannelHookCallInfo
  6303. {
  6304. IID iid;
  6305. DWORD cbSize;
  6306. GUID uCausality;
  6307. DWORD dwServerPid;
  6308. DWORD iMethod;
  6309. void *pObject;
  6310. } SChannelHookCallInfo;
  6311. extern RPC_IF_HANDLE __MIDL_itf_objidl_0050_v0_0_c_ifspec;
  6312. extern RPC_IF_HANDLE __MIDL_itf_objidl_0050_v0_0_s_ifspec;
  6313. #ifndef __IChannelHook_INTERFACE_DEFINED__
  6314. #define __IChannelHook_INTERFACE_DEFINED__
  6315. /* interface IChannelHook */
  6316. /* [uuid][object][local] */
  6317. EXTERN_C const IID IID_IChannelHook;
  6318. #if defined(__cplusplus) && !defined(CINTERFACE)
  6319. MIDL_INTERFACE("1008c4a0-7613-11cf-9af1-0020af6e72f4")
  6320. IChannelHook : public IUnknown
  6321. {
  6322. public:
  6323. virtual void STDMETHODCALLTYPE ClientGetSize(
  6324. /* [in] */ REFGUID uExtent,
  6325. /* [in] */ REFIID riid,
  6326. /* [out] */ ULONG *pDataSize) = 0;
  6327. virtual void STDMETHODCALLTYPE ClientFillBuffer(
  6328. /* [in] */ REFGUID uExtent,
  6329. /* [in] */ REFIID riid,
  6330. /* [out][in] */ ULONG *pDataSize,
  6331. /* [in] */ void *pDataBuffer) = 0;
  6332. virtual void STDMETHODCALLTYPE ClientNotify(
  6333. /* [in] */ REFGUID uExtent,
  6334. /* [in] */ REFIID riid,
  6335. /* [in] */ ULONG cbDataSize,
  6336. /* [in] */ void *pDataBuffer,
  6337. /* [in] */ DWORD lDataRep,
  6338. /* [in] */ HRESULT hrFault) = 0;
  6339. virtual void STDMETHODCALLTYPE ServerNotify(
  6340. /* [in] */ REFGUID uExtent,
  6341. /* [in] */ REFIID riid,
  6342. /* [in] */ ULONG cbDataSize,
  6343. /* [in] */ void *pDataBuffer,
  6344. /* [in] */ DWORD lDataRep) = 0;
  6345. virtual void STDMETHODCALLTYPE ServerGetSize(
  6346. /* [in] */ REFGUID uExtent,
  6347. /* [in] */ REFIID riid,
  6348. /* [in] */ HRESULT hrFault,
  6349. /* [out] */ ULONG *pDataSize) = 0;
  6350. virtual void STDMETHODCALLTYPE ServerFillBuffer(
  6351. /* [in] */ REFGUID uExtent,
  6352. /* [in] */ REFIID riid,
  6353. /* [out][in] */ ULONG *pDataSize,
  6354. /* [in] */ void *pDataBuffer,
  6355. /* [in] */ HRESULT hrFault) = 0;
  6356. };
  6357. #else /* C style interface */
  6358. typedef struct IChannelHookVtbl
  6359. {
  6360. BEGIN_INTERFACE
  6361. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  6362. IChannelHook * This,
  6363. /* [in] */ REFIID riid,
  6364. /* [iid_is][out] */ void **ppvObject);
  6365. ULONG ( STDMETHODCALLTYPE *AddRef )(
  6366. IChannelHook * This);
  6367. ULONG ( STDMETHODCALLTYPE *Release )(
  6368. IChannelHook * This);
  6369. void ( STDMETHODCALLTYPE *ClientGetSize )(
  6370. IChannelHook * This,
  6371. /* [in] */ REFGUID uExtent,
  6372. /* [in] */ REFIID riid,
  6373. /* [out] */ ULONG *pDataSize);
  6374. void ( STDMETHODCALLTYPE *ClientFillBuffer )(
  6375. IChannelHook * This,
  6376. /* [in] */ REFGUID uExtent,
  6377. /* [in] */ REFIID riid,
  6378. /* [out][in] */ ULONG *pDataSize,
  6379. /* [in] */ void *pDataBuffer);
  6380. void ( STDMETHODCALLTYPE *ClientNotify )(
  6381. IChannelHook * This,
  6382. /* [in] */ REFGUID uExtent,
  6383. /* [in] */ REFIID riid,
  6384. /* [in] */ ULONG cbDataSize,
  6385. /* [in] */ void *pDataBuffer,
  6386. /* [in] */ DWORD lDataRep,
  6387. /* [in] */ HRESULT hrFault);
  6388. void ( STDMETHODCALLTYPE *ServerNotify )(
  6389. IChannelHook * This,
  6390. /* [in] */ REFGUID uExtent,
  6391. /* [in] */ REFIID riid,
  6392. /* [in] */ ULONG cbDataSize,
  6393. /* [in] */ void *pDataBuffer,
  6394. /* [in] */ DWORD lDataRep);
  6395. void ( STDMETHODCALLTYPE *ServerGetSize )(
  6396. IChannelHook * This,
  6397. /* [in] */ REFGUID uExtent,
  6398. /* [in] */ REFIID riid,
  6399. /* [in] */ HRESULT hrFault,
  6400. /* [out] */ ULONG *pDataSize);
  6401. void ( STDMETHODCALLTYPE *ServerFillBuffer )(
  6402. IChannelHook * This,
  6403. /* [in] */ REFGUID uExtent,
  6404. /* [in] */ REFIID riid,
  6405. /* [out][in] */ ULONG *pDataSize,
  6406. /* [in] */ void *pDataBuffer,
  6407. /* [in] */ HRESULT hrFault);
  6408. END_INTERFACE
  6409. } IChannelHookVtbl;
  6410. interface IChannelHook
  6411. {
  6412. CONST_VTBL struct IChannelHookVtbl *lpVtbl;
  6413. };
  6414. #ifdef COBJMACROS
  6415. #define IChannelHook_QueryInterface(This,riid,ppvObject) \
  6416. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  6417. #define IChannelHook_AddRef(This) \
  6418. (This)->lpVtbl -> AddRef(This)
  6419. #define IChannelHook_Release(This) \
  6420. (This)->lpVtbl -> Release(This)
  6421. #define IChannelHook_ClientGetSize(This,uExtent,riid,pDataSize) \
  6422. (This)->lpVtbl -> ClientGetSize(This,uExtent,riid,pDataSize)
  6423. #define IChannelHook_ClientFillBuffer(This,uExtent,riid,pDataSize,pDataBuffer) \
  6424. (This)->lpVtbl -> ClientFillBuffer(This,uExtent,riid,pDataSize,pDataBuffer)
  6425. #define IChannelHook_ClientNotify(This,uExtent,riid,cbDataSize,pDataBuffer,lDataRep,hrFault) \
  6426. (This)->lpVtbl -> ClientNotify(This,uExtent,riid,cbDataSize,pDataBuffer,lDataRep,hrFault)
  6427. #define IChannelHook_ServerNotify(This,uExtent,riid,cbDataSize,pDataBuffer,lDataRep) \
  6428. (This)->lpVtbl -> ServerNotify(This,uExtent,riid,cbDataSize,pDataBuffer,lDataRep)
  6429. #define IChannelHook_ServerGetSize(This,uExtent,riid,hrFault,pDataSize) \
  6430. (This)->lpVtbl -> ServerGetSize(This,uExtent,riid,hrFault,pDataSize)
  6431. #define IChannelHook_ServerFillBuffer(This,uExtent,riid,pDataSize,pDataBuffer,hrFault) \
  6432. (This)->lpVtbl -> ServerFillBuffer(This,uExtent,riid,pDataSize,pDataBuffer,hrFault)
  6433. #endif /* COBJMACROS */
  6434. #endif /* C style interface */
  6435. void STDMETHODCALLTYPE IChannelHook_ClientGetSize_Proxy(
  6436. IChannelHook * This,
  6437. /* [in] */ REFGUID uExtent,
  6438. /* [in] */ REFIID riid,
  6439. /* [out] */ ULONG *pDataSize);
  6440. void __RPC_STUB IChannelHook_ClientGetSize_Stub(
  6441. IRpcStubBuffer *This,
  6442. IRpcChannelBuffer *_pRpcChannelBuffer,
  6443. PRPC_MESSAGE _pRpcMessage,
  6444. DWORD *_pdwStubPhase);
  6445. void STDMETHODCALLTYPE IChannelHook_ClientFillBuffer_Proxy(
  6446. IChannelHook * This,
  6447. /* [in] */ REFGUID uExtent,
  6448. /* [in] */ REFIID riid,
  6449. /* [out][in] */ ULONG *pDataSize,
  6450. /* [in] */ void *pDataBuffer);
  6451. void __RPC_STUB IChannelHook_ClientFillBuffer_Stub(
  6452. IRpcStubBuffer *This,
  6453. IRpcChannelBuffer *_pRpcChannelBuffer,
  6454. PRPC_MESSAGE _pRpcMessage,
  6455. DWORD *_pdwStubPhase);
  6456. void STDMETHODCALLTYPE IChannelHook_ClientNotify_Proxy(
  6457. IChannelHook * This,
  6458. /* [in] */ REFGUID uExtent,
  6459. /* [in] */ REFIID riid,
  6460. /* [in] */ ULONG cbDataSize,
  6461. /* [in] */ void *pDataBuffer,
  6462. /* [in] */ DWORD lDataRep,
  6463. /* [in] */ HRESULT hrFault);
  6464. void __RPC_STUB IChannelHook_ClientNotify_Stub(
  6465. IRpcStubBuffer *This,
  6466. IRpcChannelBuffer *_pRpcChannelBuffer,
  6467. PRPC_MESSAGE _pRpcMessage,
  6468. DWORD *_pdwStubPhase);
  6469. void STDMETHODCALLTYPE IChannelHook_ServerNotify_Proxy(
  6470. IChannelHook * This,
  6471. /* [in] */ REFGUID uExtent,
  6472. /* [in] */ REFIID riid,
  6473. /* [in] */ ULONG cbDataSize,
  6474. /* [in] */ void *pDataBuffer,
  6475. /* [in] */ DWORD lDataRep);
  6476. void __RPC_STUB IChannelHook_ServerNotify_Stub(
  6477. IRpcStubBuffer *This,
  6478. IRpcChannelBuffer *_pRpcChannelBuffer,
  6479. PRPC_MESSAGE _pRpcMessage,
  6480. DWORD *_pdwStubPhase);
  6481. void STDMETHODCALLTYPE IChannelHook_ServerGetSize_Proxy(
  6482. IChannelHook * This,
  6483. /* [in] */ REFGUID uExtent,
  6484. /* [in] */ REFIID riid,
  6485. /* [in] */ HRESULT hrFault,
  6486. /* [out] */ ULONG *pDataSize);
  6487. void __RPC_STUB IChannelHook_ServerGetSize_Stub(
  6488. IRpcStubBuffer *This,
  6489. IRpcChannelBuffer *_pRpcChannelBuffer,
  6490. PRPC_MESSAGE _pRpcMessage,
  6491. DWORD *_pdwStubPhase);
  6492. void STDMETHODCALLTYPE IChannelHook_ServerFillBuffer_Proxy(
  6493. IChannelHook * This,
  6494. /* [in] */ REFGUID uExtent,
  6495. /* [in] */ REFIID riid,
  6496. /* [out][in] */ ULONG *pDataSize,
  6497. /* [in] */ void *pDataBuffer,
  6498. /* [in] */ HRESULT hrFault);
  6499. void __RPC_STUB IChannelHook_ServerFillBuffer_Stub(
  6500. IRpcStubBuffer *This,
  6501. IRpcChannelBuffer *_pRpcChannelBuffer,
  6502. PRPC_MESSAGE _pRpcMessage,
  6503. DWORD *_pdwStubPhase);
  6504. #endif /* __IChannelHook_INTERFACE_DEFINED__ */
  6505. /* interface __MIDL_itf_objidl_0051 */
  6506. /* [local] */
  6507. #endif //DCOM
  6508. // Well-known Property Set Format IDs
  6509. extern const FMTID FMTID_SummaryInformation;
  6510. extern const FMTID FMTID_DocSummaryInformation;
  6511. extern const FMTID FMTID_UserDefinedProperties;
  6512. extern const FMTID FMTID_DiscardableInformation;
  6513. extern const FMTID FMTID_ImageSummaryInformation;
  6514. extern const FMTID FMTID_AudioSummaryInformation;
  6515. extern const FMTID FMTID_VideoSummaryInformation;
  6516. extern const FMTID FMTID_MediaFileSummaryInformation;
  6517. #if (_WIN32_WINNT >= 0x0400 ) || defined(_WIN32_DCOM) // DCOM
  6518. // This interface is only valid on Windows NT 4.0
  6519. extern RPC_IF_HANDLE __MIDL_itf_objidl_0051_v0_0_c_ifspec;
  6520. extern RPC_IF_HANDLE __MIDL_itf_objidl_0051_v0_0_s_ifspec;
  6521. #ifndef __IClientSecurity_INTERFACE_DEFINED__
  6522. #define __IClientSecurity_INTERFACE_DEFINED__
  6523. /* interface IClientSecurity */
  6524. /* [uuid][object][local] */
  6525. typedef struct tagSOLE_AUTHENTICATION_SERVICE
  6526. {
  6527. DWORD dwAuthnSvc;
  6528. DWORD dwAuthzSvc;
  6529. OLECHAR *pPrincipalName;
  6530. HRESULT hr;
  6531. } SOLE_AUTHENTICATION_SERVICE;
  6532. typedef SOLE_AUTHENTICATION_SERVICE *PSOLE_AUTHENTICATION_SERVICE;
  6533. typedef
  6534. enum tagEOLE_AUTHENTICATION_CAPABILITIES
  6535. { EOAC_NONE = 0,
  6536. EOAC_MUTUAL_AUTH = 0x1,
  6537. EOAC_STATIC_CLOAKING = 0x20,
  6538. EOAC_DYNAMIC_CLOAKING = 0x40,
  6539. EOAC_ANY_AUTHORITY = 0x80,
  6540. EOAC_MAKE_FULLSIC = 0x100,
  6541. EOAC_DEFAULT = 0x800,
  6542. EOAC_SECURE_REFS = 0x2,
  6543. EOAC_ACCESS_CONTROL = 0x4,
  6544. EOAC_APPID = 0x8,
  6545. EOAC_DYNAMIC = 0x10,
  6546. EOAC_REQUIRE_FULLSIC = 0x200,
  6547. EOAC_AUTO_IMPERSONATE = 0x400,
  6548. EOAC_NO_CUSTOM_MARSHAL = 0x2000,
  6549. EOAC_DISABLE_AAA = 0x1000
  6550. } EOLE_AUTHENTICATION_CAPABILITIES;
  6551. #define COLE_DEFAULT_PRINCIPAL ( ( OLECHAR * )-1 )
  6552. #define COLE_DEFAULT_AUTHINFO ( ( void * )-1 )
  6553. typedef struct tagSOLE_AUTHENTICATION_INFO
  6554. {
  6555. DWORD dwAuthnSvc;
  6556. DWORD dwAuthzSvc;
  6557. void *pAuthInfo;
  6558. } SOLE_AUTHENTICATION_INFO;
  6559. typedef struct tagSOLE_AUTHENTICATION_INFO *PSOLE_AUTHENTICATION_INFO;
  6560. typedef struct tagSOLE_AUTHENTICATION_LIST
  6561. {
  6562. DWORD cAuthInfo;
  6563. SOLE_AUTHENTICATION_INFO *aAuthInfo;
  6564. } SOLE_AUTHENTICATION_LIST;
  6565. typedef struct tagSOLE_AUTHENTICATION_LIST *PSOLE_AUTHENTICATION_LIST;
  6566. EXTERN_C const IID IID_IClientSecurity;
  6567. #if defined(__cplusplus) && !defined(CINTERFACE)
  6568. MIDL_INTERFACE("0000013D-0000-0000-C000-000000000046")
  6569. IClientSecurity : public IUnknown
  6570. {
  6571. public:
  6572. virtual HRESULT STDMETHODCALLTYPE QueryBlanket(
  6573. /* [in] */ IUnknown *pProxy,
  6574. /* [out] */ DWORD *pAuthnSvc,
  6575. /* [out] */ DWORD *pAuthzSvc,
  6576. /* [out] */ OLECHAR **pServerPrincName,
  6577. /* [out] */ DWORD *pAuthnLevel,
  6578. /* [out] */ DWORD *pImpLevel,
  6579. /* [out] */ void **pAuthInfo,
  6580. /* [out] */ DWORD *pCapabilites) = 0;
  6581. virtual HRESULT STDMETHODCALLTYPE SetBlanket(
  6582. /* [in] */ IUnknown *pProxy,
  6583. /* [in] */ DWORD dwAuthnSvc,
  6584. /* [in] */ DWORD dwAuthzSvc,
  6585. /* [in] */ OLECHAR *pServerPrincName,
  6586. /* [in] */ DWORD dwAuthnLevel,
  6587. /* [in] */ DWORD dwImpLevel,
  6588. /* [in] */ void *pAuthInfo,
  6589. /* [in] */ DWORD dwCapabilities) = 0;
  6590. virtual HRESULT STDMETHODCALLTYPE CopyProxy(
  6591. /* [in] */ IUnknown *pProxy,
  6592. /* [out] */ IUnknown **ppCopy) = 0;
  6593. };
  6594. #else /* C style interface */
  6595. typedef struct IClientSecurityVtbl
  6596. {
  6597. BEGIN_INTERFACE
  6598. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  6599. IClientSecurity * This,
  6600. /* [in] */ REFIID riid,
  6601. /* [iid_is][out] */ void **ppvObject);
  6602. ULONG ( STDMETHODCALLTYPE *AddRef )(
  6603. IClientSecurity * This);
  6604. ULONG ( STDMETHODCALLTYPE *Release )(
  6605. IClientSecurity * This);
  6606. HRESULT ( STDMETHODCALLTYPE *QueryBlanket )(
  6607. IClientSecurity * This,
  6608. /* [in] */ IUnknown *pProxy,
  6609. /* [out] */ DWORD *pAuthnSvc,
  6610. /* [out] */ DWORD *pAuthzSvc,
  6611. /* [out] */ OLECHAR **pServerPrincName,
  6612. /* [out] */ DWORD *pAuthnLevel,
  6613. /* [out] */ DWORD *pImpLevel,
  6614. /* [out] */ void **pAuthInfo,
  6615. /* [out] */ DWORD *pCapabilites);
  6616. HRESULT ( STDMETHODCALLTYPE *SetBlanket )(
  6617. IClientSecurity * This,
  6618. /* [in] */ IUnknown *pProxy,
  6619. /* [in] */ DWORD dwAuthnSvc,
  6620. /* [in] */ DWORD dwAuthzSvc,
  6621. /* [in] */ OLECHAR *pServerPrincName,
  6622. /* [in] */ DWORD dwAuthnLevel,
  6623. /* [in] */ DWORD dwImpLevel,
  6624. /* [in] */ void *pAuthInfo,
  6625. /* [in] */ DWORD dwCapabilities);
  6626. HRESULT ( STDMETHODCALLTYPE *CopyProxy )(
  6627. IClientSecurity * This,
  6628. /* [in] */ IUnknown *pProxy,
  6629. /* [out] */ IUnknown **ppCopy);
  6630. END_INTERFACE
  6631. } IClientSecurityVtbl;
  6632. interface IClientSecurity
  6633. {
  6634. CONST_VTBL struct IClientSecurityVtbl *lpVtbl;
  6635. };
  6636. #ifdef COBJMACROS
  6637. #define IClientSecurity_QueryInterface(This,riid,ppvObject) \
  6638. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  6639. #define IClientSecurity_AddRef(This) \
  6640. (This)->lpVtbl -> AddRef(This)
  6641. #define IClientSecurity_Release(This) \
  6642. (This)->lpVtbl -> Release(This)
  6643. #define IClientSecurity_QueryBlanket(This,pProxy,pAuthnSvc,pAuthzSvc,pServerPrincName,pAuthnLevel,pImpLevel,pAuthInfo,pCapabilites) \
  6644. (This)->lpVtbl -> QueryBlanket(This,pProxy,pAuthnSvc,pAuthzSvc,pServerPrincName,pAuthnLevel,pImpLevel,pAuthInfo,pCapabilites)
  6645. #define IClientSecurity_SetBlanket(This,pProxy,dwAuthnSvc,dwAuthzSvc,pServerPrincName,dwAuthnLevel,dwImpLevel,pAuthInfo,dwCapabilities) \
  6646. (This)->lpVtbl -> SetBlanket(This,pProxy,dwAuthnSvc,dwAuthzSvc,pServerPrincName,dwAuthnLevel,dwImpLevel,pAuthInfo,dwCapabilities)
  6647. #define IClientSecurity_CopyProxy(This,pProxy,ppCopy) \
  6648. (This)->lpVtbl -> CopyProxy(This,pProxy,ppCopy)
  6649. #endif /* COBJMACROS */
  6650. #endif /* C style interface */
  6651. HRESULT STDMETHODCALLTYPE IClientSecurity_QueryBlanket_Proxy(
  6652. IClientSecurity * This,
  6653. /* [in] */ IUnknown *pProxy,
  6654. /* [out] */ DWORD *pAuthnSvc,
  6655. /* [out] */ DWORD *pAuthzSvc,
  6656. /* [out] */ OLECHAR **pServerPrincName,
  6657. /* [out] */ DWORD *pAuthnLevel,
  6658. /* [out] */ DWORD *pImpLevel,
  6659. /* [out] */ void **pAuthInfo,
  6660. /* [out] */ DWORD *pCapabilites);
  6661. void __RPC_STUB IClientSecurity_QueryBlanket_Stub(
  6662. IRpcStubBuffer *This,
  6663. IRpcChannelBuffer *_pRpcChannelBuffer,
  6664. PRPC_MESSAGE _pRpcMessage,
  6665. DWORD *_pdwStubPhase);
  6666. HRESULT STDMETHODCALLTYPE IClientSecurity_SetBlanket_Proxy(
  6667. IClientSecurity * This,
  6668. /* [in] */ IUnknown *pProxy,
  6669. /* [in] */ DWORD dwAuthnSvc,
  6670. /* [in] */ DWORD dwAuthzSvc,
  6671. /* [in] */ OLECHAR *pServerPrincName,
  6672. /* [in] */ DWORD dwAuthnLevel,
  6673. /* [in] */ DWORD dwImpLevel,
  6674. /* [in] */ void *pAuthInfo,
  6675. /* [in] */ DWORD dwCapabilities);
  6676. void __RPC_STUB IClientSecurity_SetBlanket_Stub(
  6677. IRpcStubBuffer *This,
  6678. IRpcChannelBuffer *_pRpcChannelBuffer,
  6679. PRPC_MESSAGE _pRpcMessage,
  6680. DWORD *_pdwStubPhase);
  6681. HRESULT STDMETHODCALLTYPE IClientSecurity_CopyProxy_Proxy(
  6682. IClientSecurity * This,
  6683. /* [in] */ IUnknown *pProxy,
  6684. /* [out] */ IUnknown **ppCopy);
  6685. void __RPC_STUB IClientSecurity_CopyProxy_Stub(
  6686. IRpcStubBuffer *This,
  6687. IRpcChannelBuffer *_pRpcChannelBuffer,
  6688. PRPC_MESSAGE _pRpcMessage,
  6689. DWORD *_pdwStubPhase);
  6690. #endif /* __IClientSecurity_INTERFACE_DEFINED__ */
  6691. #ifndef __IServerSecurity_INTERFACE_DEFINED__
  6692. #define __IServerSecurity_INTERFACE_DEFINED__
  6693. /* interface IServerSecurity */
  6694. /* [uuid][object][local] */
  6695. EXTERN_C const IID IID_IServerSecurity;
  6696. #if defined(__cplusplus) && !defined(CINTERFACE)
  6697. MIDL_INTERFACE("0000013E-0000-0000-C000-000000000046")
  6698. IServerSecurity : public IUnknown
  6699. {
  6700. public:
  6701. virtual HRESULT STDMETHODCALLTYPE QueryBlanket(
  6702. /* [out] */ DWORD *pAuthnSvc,
  6703. /* [out] */ DWORD *pAuthzSvc,
  6704. /* [out] */ OLECHAR **pServerPrincName,
  6705. /* [out] */ DWORD *pAuthnLevel,
  6706. /* [out] */ DWORD *pImpLevel,
  6707. /* [out] */ void **pPrivs,
  6708. /* [out][in] */ DWORD *pCapabilities) = 0;
  6709. virtual HRESULT STDMETHODCALLTYPE ImpersonateClient( void) = 0;
  6710. virtual HRESULT STDMETHODCALLTYPE RevertToSelf( void) = 0;
  6711. virtual BOOL STDMETHODCALLTYPE IsImpersonating( void) = 0;
  6712. };
  6713. #else /* C style interface */
  6714. typedef struct IServerSecurityVtbl
  6715. {
  6716. BEGIN_INTERFACE
  6717. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  6718. IServerSecurity * This,
  6719. /* [in] */ REFIID riid,
  6720. /* [iid_is][out] */ void **ppvObject);
  6721. ULONG ( STDMETHODCALLTYPE *AddRef )(
  6722. IServerSecurity * This);
  6723. ULONG ( STDMETHODCALLTYPE *Release )(
  6724. IServerSecurity * This);
  6725. HRESULT ( STDMETHODCALLTYPE *QueryBlanket )(
  6726. IServerSecurity * This,
  6727. /* [out] */ DWORD *pAuthnSvc,
  6728. /* [out] */ DWORD *pAuthzSvc,
  6729. /* [out] */ OLECHAR **pServerPrincName,
  6730. /* [out] */ DWORD *pAuthnLevel,
  6731. /* [out] */ DWORD *pImpLevel,
  6732. /* [out] */ void **pPrivs,
  6733. /* [out][in] */ DWORD *pCapabilities);
  6734. HRESULT ( STDMETHODCALLTYPE *ImpersonateClient )(
  6735. IServerSecurity * This);
  6736. HRESULT ( STDMETHODCALLTYPE *RevertToSelf )(
  6737. IServerSecurity * This);
  6738. BOOL ( STDMETHODCALLTYPE *IsImpersonating )(
  6739. IServerSecurity * This);
  6740. END_INTERFACE
  6741. } IServerSecurityVtbl;
  6742. interface IServerSecurity
  6743. {
  6744. CONST_VTBL struct IServerSecurityVtbl *lpVtbl;
  6745. };
  6746. #ifdef COBJMACROS
  6747. #define IServerSecurity_QueryInterface(This,riid,ppvObject) \
  6748. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  6749. #define IServerSecurity_AddRef(This) \
  6750. (This)->lpVtbl -> AddRef(This)
  6751. #define IServerSecurity_Release(This) \
  6752. (This)->lpVtbl -> Release(This)
  6753. #define IServerSecurity_QueryBlanket(This,pAuthnSvc,pAuthzSvc,pServerPrincName,pAuthnLevel,pImpLevel,pPrivs,pCapabilities) \
  6754. (This)->lpVtbl -> QueryBlanket(This,pAuthnSvc,pAuthzSvc,pServerPrincName,pAuthnLevel,pImpLevel,pPrivs,pCapabilities)
  6755. #define IServerSecurity_ImpersonateClient(This) \
  6756. (This)->lpVtbl -> ImpersonateClient(This)
  6757. #define IServerSecurity_RevertToSelf(This) \
  6758. (This)->lpVtbl -> RevertToSelf(This)
  6759. #define IServerSecurity_IsImpersonating(This) \
  6760. (This)->lpVtbl -> IsImpersonating(This)
  6761. #endif /* COBJMACROS */
  6762. #endif /* C style interface */
  6763. HRESULT STDMETHODCALLTYPE IServerSecurity_QueryBlanket_Proxy(
  6764. IServerSecurity * This,
  6765. /* [out] */ DWORD *pAuthnSvc,
  6766. /* [out] */ DWORD *pAuthzSvc,
  6767. /* [out] */ OLECHAR **pServerPrincName,
  6768. /* [out] */ DWORD *pAuthnLevel,
  6769. /* [out] */ DWORD *pImpLevel,
  6770. /* [out] */ void **pPrivs,
  6771. /* [out][in] */ DWORD *pCapabilities);
  6772. void __RPC_STUB IServerSecurity_QueryBlanket_Stub(
  6773. IRpcStubBuffer *This,
  6774. IRpcChannelBuffer *_pRpcChannelBuffer,
  6775. PRPC_MESSAGE _pRpcMessage,
  6776. DWORD *_pdwStubPhase);
  6777. HRESULT STDMETHODCALLTYPE IServerSecurity_ImpersonateClient_Proxy(
  6778. IServerSecurity * This);
  6779. void __RPC_STUB IServerSecurity_ImpersonateClient_Stub(
  6780. IRpcStubBuffer *This,
  6781. IRpcChannelBuffer *_pRpcChannelBuffer,
  6782. PRPC_MESSAGE _pRpcMessage,
  6783. DWORD *_pdwStubPhase);
  6784. HRESULT STDMETHODCALLTYPE IServerSecurity_RevertToSelf_Proxy(
  6785. IServerSecurity * This);
  6786. void __RPC_STUB IServerSecurity_RevertToSelf_Stub(
  6787. IRpcStubBuffer *This,
  6788. IRpcChannelBuffer *_pRpcChannelBuffer,
  6789. PRPC_MESSAGE _pRpcMessage,
  6790. DWORD *_pdwStubPhase);
  6791. BOOL STDMETHODCALLTYPE IServerSecurity_IsImpersonating_Proxy(
  6792. IServerSecurity * This);
  6793. void __RPC_STUB IServerSecurity_IsImpersonating_Stub(
  6794. IRpcStubBuffer *This,
  6795. IRpcChannelBuffer *_pRpcChannelBuffer,
  6796. PRPC_MESSAGE _pRpcMessage,
  6797. DWORD *_pdwStubPhase);
  6798. #endif /* __IServerSecurity_INTERFACE_DEFINED__ */
  6799. #ifndef __IClassActivator_INTERFACE_DEFINED__
  6800. #define __IClassActivator_INTERFACE_DEFINED__
  6801. /* interface IClassActivator */
  6802. /* [uuid][object] */
  6803. EXTERN_C const IID IID_IClassActivator;
  6804. #if defined(__cplusplus) && !defined(CINTERFACE)
  6805. MIDL_INTERFACE("00000140-0000-0000-C000-000000000046")
  6806. IClassActivator : public IUnknown
  6807. {
  6808. public:
  6809. virtual HRESULT STDMETHODCALLTYPE GetClassObject(
  6810. /* [in] */ REFCLSID rclsid,
  6811. /* [in] */ DWORD dwClassContext,
  6812. /* [in] */ LCID locale,
  6813. /* [in] */ REFIID riid,
  6814. /* [iid_is][out] */ void **ppv) = 0;
  6815. };
  6816. #else /* C style interface */
  6817. typedef struct IClassActivatorVtbl
  6818. {
  6819. BEGIN_INTERFACE
  6820. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  6821. IClassActivator * This,
  6822. /* [in] */ REFIID riid,
  6823. /* [iid_is][out] */ void **ppvObject);
  6824. ULONG ( STDMETHODCALLTYPE *AddRef )(
  6825. IClassActivator * This);
  6826. ULONG ( STDMETHODCALLTYPE *Release )(
  6827. IClassActivator * This);
  6828. HRESULT ( STDMETHODCALLTYPE *GetClassObject )(
  6829. IClassActivator * This,
  6830. /* [in] */ REFCLSID rclsid,
  6831. /* [in] */ DWORD dwClassContext,
  6832. /* [in] */ LCID locale,
  6833. /* [in] */ REFIID riid,
  6834. /* [iid_is][out] */ void **ppv);
  6835. END_INTERFACE
  6836. } IClassActivatorVtbl;
  6837. interface IClassActivator
  6838. {
  6839. CONST_VTBL struct IClassActivatorVtbl *lpVtbl;
  6840. };
  6841. #ifdef COBJMACROS
  6842. #define IClassActivator_QueryInterface(This,riid,ppvObject) \
  6843. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  6844. #define IClassActivator_AddRef(This) \
  6845. (This)->lpVtbl -> AddRef(This)
  6846. #define IClassActivator_Release(This) \
  6847. (This)->lpVtbl -> Release(This)
  6848. #define IClassActivator_GetClassObject(This,rclsid,dwClassContext,locale,riid,ppv) \
  6849. (This)->lpVtbl -> GetClassObject(This,rclsid,dwClassContext,locale,riid,ppv)
  6850. #endif /* COBJMACROS */
  6851. #endif /* C style interface */
  6852. HRESULT STDMETHODCALLTYPE IClassActivator_GetClassObject_Proxy(
  6853. IClassActivator * This,
  6854. /* [in] */ REFCLSID rclsid,
  6855. /* [in] */ DWORD dwClassContext,
  6856. /* [in] */ LCID locale,
  6857. /* [in] */ REFIID riid,
  6858. /* [iid_is][out] */ void **ppv);
  6859. void __RPC_STUB IClassActivator_GetClassObject_Stub(
  6860. IRpcStubBuffer *This,
  6861. IRpcChannelBuffer *_pRpcChannelBuffer,
  6862. PRPC_MESSAGE _pRpcMessage,
  6863. DWORD *_pdwStubPhase);
  6864. #endif /* __IClassActivator_INTERFACE_DEFINED__ */
  6865. #ifndef __IRpcOptions_INTERFACE_DEFINED__
  6866. #define __IRpcOptions_INTERFACE_DEFINED__
  6867. /* interface IRpcOptions */
  6868. /* [uuid][local][object] */
  6869. EXTERN_C const IID IID_IRpcOptions;
  6870. #if defined(__cplusplus) && !defined(CINTERFACE)
  6871. MIDL_INTERFACE("00000144-0000-0000-C000-000000000046")
  6872. IRpcOptions : public IUnknown
  6873. {
  6874. public:
  6875. virtual HRESULT STDMETHODCALLTYPE Set(
  6876. /* [in] */ IUnknown *pPrx,
  6877. /* [in] */ DWORD dwProperty,
  6878. /* [in] */ ULONG_PTR dwValue) = 0;
  6879. virtual HRESULT STDMETHODCALLTYPE Query(
  6880. /* [in] */ IUnknown *pPrx,
  6881. /* [in] */ DWORD dwProperty,
  6882. /* [out] */ ULONG_PTR *pdwValue) = 0;
  6883. };
  6884. #else /* C style interface */
  6885. typedef struct IRpcOptionsVtbl
  6886. {
  6887. BEGIN_INTERFACE
  6888. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  6889. IRpcOptions * This,
  6890. /* [in] */ REFIID riid,
  6891. /* [iid_is][out] */ void **ppvObject);
  6892. ULONG ( STDMETHODCALLTYPE *AddRef )(
  6893. IRpcOptions * This);
  6894. ULONG ( STDMETHODCALLTYPE *Release )(
  6895. IRpcOptions * This);
  6896. HRESULT ( STDMETHODCALLTYPE *Set )(
  6897. IRpcOptions * This,
  6898. /* [in] */ IUnknown *pPrx,
  6899. /* [in] */ DWORD dwProperty,
  6900. /* [in] */ ULONG_PTR dwValue);
  6901. HRESULT ( STDMETHODCALLTYPE *Query )(
  6902. IRpcOptions * This,
  6903. /* [in] */ IUnknown *pPrx,
  6904. /* [in] */ DWORD dwProperty,
  6905. /* [out] */ ULONG_PTR *pdwValue);
  6906. END_INTERFACE
  6907. } IRpcOptionsVtbl;
  6908. interface IRpcOptions
  6909. {
  6910. CONST_VTBL struct IRpcOptionsVtbl *lpVtbl;
  6911. };
  6912. #ifdef COBJMACROS
  6913. #define IRpcOptions_QueryInterface(This,riid,ppvObject) \
  6914. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  6915. #define IRpcOptions_AddRef(This) \
  6916. (This)->lpVtbl -> AddRef(This)
  6917. #define IRpcOptions_Release(This) \
  6918. (This)->lpVtbl -> Release(This)
  6919. #define IRpcOptions_Set(This,pPrx,dwProperty,dwValue) \
  6920. (This)->lpVtbl -> Set(This,pPrx,dwProperty,dwValue)
  6921. #define IRpcOptions_Query(This,pPrx,dwProperty,pdwValue) \
  6922. (This)->lpVtbl -> Query(This,pPrx,dwProperty,pdwValue)
  6923. #endif /* COBJMACROS */
  6924. #endif /* C style interface */
  6925. HRESULT STDMETHODCALLTYPE IRpcOptions_Set_Proxy(
  6926. IRpcOptions * This,
  6927. /* [in] */ IUnknown *pPrx,
  6928. /* [in] */ DWORD dwProperty,
  6929. /* [in] */ ULONG_PTR dwValue);
  6930. void __RPC_STUB IRpcOptions_Set_Stub(
  6931. IRpcStubBuffer *This,
  6932. IRpcChannelBuffer *_pRpcChannelBuffer,
  6933. PRPC_MESSAGE _pRpcMessage,
  6934. DWORD *_pdwStubPhase);
  6935. HRESULT STDMETHODCALLTYPE IRpcOptions_Query_Proxy(
  6936. IRpcOptions * This,
  6937. /* [in] */ IUnknown *pPrx,
  6938. /* [in] */ DWORD dwProperty,
  6939. /* [out] */ ULONG_PTR *pdwValue);
  6940. void __RPC_STUB IRpcOptions_Query_Stub(
  6941. IRpcStubBuffer *This,
  6942. IRpcChannelBuffer *_pRpcChannelBuffer,
  6943. PRPC_MESSAGE _pRpcMessage,
  6944. DWORD *_pdwStubPhase);
  6945. #endif /* __IRpcOptions_INTERFACE_DEFINED__ */
  6946. /* interface __MIDL_itf_objidl_0055 */
  6947. /* [local] */
  6948. enum __MIDL___MIDL_itf_objidl_0055_0001
  6949. { COMBND_RPCTIMEOUT = 0x1
  6950. } ;
  6951. #endif //DCOM
  6952. extern RPC_IF_HANDLE __MIDL_itf_objidl_0055_v0_0_c_ifspec;
  6953. extern RPC_IF_HANDLE __MIDL_itf_objidl_0055_v0_0_s_ifspec;
  6954. #ifndef __IFillLockBytes_INTERFACE_DEFINED__
  6955. #define __IFillLockBytes_INTERFACE_DEFINED__
  6956. /* interface IFillLockBytes */
  6957. /* [unique][uuid][object] */
  6958. EXTERN_C const IID IID_IFillLockBytes;
  6959. #if defined(__cplusplus) && !defined(CINTERFACE)
  6960. MIDL_INTERFACE("99caf010-415e-11cf-8814-00aa00b569f5")
  6961. IFillLockBytes : public IUnknown
  6962. {
  6963. public:
  6964. virtual /* [local] */ HRESULT STDMETHODCALLTYPE FillAppend(
  6965. /* [size_is][in] */ const void *pv,
  6966. /* [in] */ ULONG cb,
  6967. /* [out] */ ULONG *pcbWritten) = 0;
  6968. virtual /* [local] */ HRESULT STDMETHODCALLTYPE FillAt(
  6969. /* [in] */ ULARGE_INTEGER ulOffset,
  6970. /* [size_is][in] */ const void *pv,
  6971. /* [in] */ ULONG cb,
  6972. /* [out] */ ULONG *pcbWritten) = 0;
  6973. virtual HRESULT STDMETHODCALLTYPE SetFillSize(
  6974. /* [in] */ ULARGE_INTEGER ulSize) = 0;
  6975. virtual HRESULT STDMETHODCALLTYPE Terminate(
  6976. /* [in] */ BOOL bCanceled) = 0;
  6977. };
  6978. #else /* C style interface */
  6979. typedef struct IFillLockBytesVtbl
  6980. {
  6981. BEGIN_INTERFACE
  6982. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  6983. IFillLockBytes * This,
  6984. /* [in] */ REFIID riid,
  6985. /* [iid_is][out] */ void **ppvObject);
  6986. ULONG ( STDMETHODCALLTYPE *AddRef )(
  6987. IFillLockBytes * This);
  6988. ULONG ( STDMETHODCALLTYPE *Release )(
  6989. IFillLockBytes * This);
  6990. /* [local] */ HRESULT ( STDMETHODCALLTYPE *FillAppend )(
  6991. IFillLockBytes * This,
  6992. /* [size_is][in] */ const void *pv,
  6993. /* [in] */ ULONG cb,
  6994. /* [out] */ ULONG *pcbWritten);
  6995. /* [local] */ HRESULT ( STDMETHODCALLTYPE *FillAt )(
  6996. IFillLockBytes * This,
  6997. /* [in] */ ULARGE_INTEGER ulOffset,
  6998. /* [size_is][in] */ const void *pv,
  6999. /* [in] */ ULONG cb,
  7000. /* [out] */ ULONG *pcbWritten);
  7001. HRESULT ( STDMETHODCALLTYPE *SetFillSize )(
  7002. IFillLockBytes * This,
  7003. /* [in] */ ULARGE_INTEGER ulSize);
  7004. HRESULT ( STDMETHODCALLTYPE *Terminate )(
  7005. IFillLockBytes * This,
  7006. /* [in] */ BOOL bCanceled);
  7007. END_INTERFACE
  7008. } IFillLockBytesVtbl;
  7009. interface IFillLockBytes
  7010. {
  7011. CONST_VTBL struct IFillLockBytesVtbl *lpVtbl;
  7012. };
  7013. #ifdef COBJMACROS
  7014. #define IFillLockBytes_QueryInterface(This,riid,ppvObject) \
  7015. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  7016. #define IFillLockBytes_AddRef(This) \
  7017. (This)->lpVtbl -> AddRef(This)
  7018. #define IFillLockBytes_Release(This) \
  7019. (This)->lpVtbl -> Release(This)
  7020. #define IFillLockBytes_FillAppend(This,pv,cb,pcbWritten) \
  7021. (This)->lpVtbl -> FillAppend(This,pv,cb,pcbWritten)
  7022. #define IFillLockBytes_FillAt(This,ulOffset,pv,cb,pcbWritten) \
  7023. (This)->lpVtbl -> FillAt(This,ulOffset,pv,cb,pcbWritten)
  7024. #define IFillLockBytes_SetFillSize(This,ulSize) \
  7025. (This)->lpVtbl -> SetFillSize(This,ulSize)
  7026. #define IFillLockBytes_Terminate(This,bCanceled) \
  7027. (This)->lpVtbl -> Terminate(This,bCanceled)
  7028. #endif /* COBJMACROS */
  7029. #endif /* C style interface */
  7030. /* [call_as] */ HRESULT __stdcall IFillLockBytes_RemoteFillAppend_Proxy(
  7031. IFillLockBytes * This,
  7032. /* [size_is][in] */ const byte *pv,
  7033. /* [in] */ ULONG cb,
  7034. /* [out] */ ULONG *pcbWritten);
  7035. void __RPC_STUB IFillLockBytes_RemoteFillAppend_Stub(
  7036. IRpcStubBuffer *This,
  7037. IRpcChannelBuffer *_pRpcChannelBuffer,
  7038. PRPC_MESSAGE _pRpcMessage,
  7039. DWORD *_pdwStubPhase);
  7040. /* [call_as] */ HRESULT __stdcall IFillLockBytes_RemoteFillAt_Proxy(
  7041. IFillLockBytes * This,
  7042. /* [in] */ ULARGE_INTEGER ulOffset,
  7043. /* [size_is][in] */ const byte *pv,
  7044. /* [in] */ ULONG cb,
  7045. /* [out] */ ULONG *pcbWritten);
  7046. void __RPC_STUB IFillLockBytes_RemoteFillAt_Stub(
  7047. IRpcStubBuffer *This,
  7048. IRpcChannelBuffer *_pRpcChannelBuffer,
  7049. PRPC_MESSAGE _pRpcMessage,
  7050. DWORD *_pdwStubPhase);
  7051. HRESULT STDMETHODCALLTYPE IFillLockBytes_SetFillSize_Proxy(
  7052. IFillLockBytes * This,
  7053. /* [in] */ ULARGE_INTEGER ulSize);
  7054. void __RPC_STUB IFillLockBytes_SetFillSize_Stub(
  7055. IRpcStubBuffer *This,
  7056. IRpcChannelBuffer *_pRpcChannelBuffer,
  7057. PRPC_MESSAGE _pRpcMessage,
  7058. DWORD *_pdwStubPhase);
  7059. HRESULT STDMETHODCALLTYPE IFillLockBytes_Terminate_Proxy(
  7060. IFillLockBytes * This,
  7061. /* [in] */ BOOL bCanceled);
  7062. void __RPC_STUB IFillLockBytes_Terminate_Stub(
  7063. IRpcStubBuffer *This,
  7064. IRpcChannelBuffer *_pRpcChannelBuffer,
  7065. PRPC_MESSAGE _pRpcMessage,
  7066. DWORD *_pdwStubPhase);
  7067. #endif /* __IFillLockBytes_INTERFACE_DEFINED__ */
  7068. #ifndef __IProgressNotify_INTERFACE_DEFINED__
  7069. #define __IProgressNotify_INTERFACE_DEFINED__
  7070. /* interface IProgressNotify */
  7071. /* [unique][uuid][object] */
  7072. EXTERN_C const IID IID_IProgressNotify;
  7073. #if defined(__cplusplus) && !defined(CINTERFACE)
  7074. MIDL_INTERFACE("a9d758a0-4617-11cf-95fc-00aa00680db4")
  7075. IProgressNotify : public IUnknown
  7076. {
  7077. public:
  7078. virtual HRESULT STDMETHODCALLTYPE OnProgress(
  7079. /* [in] */ DWORD dwProgressCurrent,
  7080. /* [in] */ DWORD dwProgressMaximum,
  7081. /* [in] */ BOOL fAccurate,
  7082. /* [in] */ BOOL fOwner) = 0;
  7083. };
  7084. #else /* C style interface */
  7085. typedef struct IProgressNotifyVtbl
  7086. {
  7087. BEGIN_INTERFACE
  7088. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  7089. IProgressNotify * This,
  7090. /* [in] */ REFIID riid,
  7091. /* [iid_is][out] */ void **ppvObject);
  7092. ULONG ( STDMETHODCALLTYPE *AddRef )(
  7093. IProgressNotify * This);
  7094. ULONG ( STDMETHODCALLTYPE *Release )(
  7095. IProgressNotify * This);
  7096. HRESULT ( STDMETHODCALLTYPE *OnProgress )(
  7097. IProgressNotify * This,
  7098. /* [in] */ DWORD dwProgressCurrent,
  7099. /* [in] */ DWORD dwProgressMaximum,
  7100. /* [in] */ BOOL fAccurate,
  7101. /* [in] */ BOOL fOwner);
  7102. END_INTERFACE
  7103. } IProgressNotifyVtbl;
  7104. interface IProgressNotify
  7105. {
  7106. CONST_VTBL struct IProgressNotifyVtbl *lpVtbl;
  7107. };
  7108. #ifdef COBJMACROS
  7109. #define IProgressNotify_QueryInterface(This,riid,ppvObject) \
  7110. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  7111. #define IProgressNotify_AddRef(This) \
  7112. (This)->lpVtbl -> AddRef(This)
  7113. #define IProgressNotify_Release(This) \
  7114. (This)->lpVtbl -> Release(This)
  7115. #define IProgressNotify_OnProgress(This,dwProgressCurrent,dwProgressMaximum,fAccurate,fOwner) \
  7116. (This)->lpVtbl -> OnProgress(This,dwProgressCurrent,dwProgressMaximum,fAccurate,fOwner)
  7117. #endif /* COBJMACROS */
  7118. #endif /* C style interface */
  7119. HRESULT STDMETHODCALLTYPE IProgressNotify_OnProgress_Proxy(
  7120. IProgressNotify * This,
  7121. /* [in] */ DWORD dwProgressCurrent,
  7122. /* [in] */ DWORD dwProgressMaximum,
  7123. /* [in] */ BOOL fAccurate,
  7124. /* [in] */ BOOL fOwner);
  7125. void __RPC_STUB IProgressNotify_OnProgress_Stub(
  7126. IRpcStubBuffer *This,
  7127. IRpcChannelBuffer *_pRpcChannelBuffer,
  7128. PRPC_MESSAGE _pRpcMessage,
  7129. DWORD *_pdwStubPhase);
  7130. #endif /* __IProgressNotify_INTERFACE_DEFINED__ */
  7131. #ifndef __ILayoutStorage_INTERFACE_DEFINED__
  7132. #define __ILayoutStorage_INTERFACE_DEFINED__
  7133. /* interface ILayoutStorage */
  7134. /* [unique][uuid][object][local] */
  7135. typedef struct tagStorageLayout
  7136. {
  7137. DWORD LayoutType;
  7138. OLECHAR *pwcsElementName;
  7139. LARGE_INTEGER cOffset;
  7140. LARGE_INTEGER cBytes;
  7141. } StorageLayout;
  7142. EXTERN_C const IID IID_ILayoutStorage;
  7143. #if defined(__cplusplus) && !defined(CINTERFACE)
  7144. MIDL_INTERFACE("0e6d4d90-6738-11cf-9608-00aa00680db4")
  7145. ILayoutStorage : public IUnknown
  7146. {
  7147. public:
  7148. virtual HRESULT __stdcall LayoutScript(
  7149. /* [in] */ StorageLayout *pStorageLayout,
  7150. /* [in] */ DWORD nEntries,
  7151. /* [in] */ DWORD glfInterleavedFlag) = 0;
  7152. virtual HRESULT __stdcall BeginMonitor( void) = 0;
  7153. virtual HRESULT __stdcall EndMonitor( void) = 0;
  7154. virtual HRESULT __stdcall ReLayoutDocfile(
  7155. /* [in] */ OLECHAR *pwcsNewDfName) = 0;
  7156. virtual HRESULT __stdcall ReLayoutDocfileOnILockBytes(
  7157. /* [in] */ ILockBytes *pILockBytes) = 0;
  7158. };
  7159. #else /* C style interface */
  7160. typedef struct ILayoutStorageVtbl
  7161. {
  7162. BEGIN_INTERFACE
  7163. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  7164. ILayoutStorage * This,
  7165. /* [in] */ REFIID riid,
  7166. /* [iid_is][out] */ void **ppvObject);
  7167. ULONG ( STDMETHODCALLTYPE *AddRef )(
  7168. ILayoutStorage * This);
  7169. ULONG ( STDMETHODCALLTYPE *Release )(
  7170. ILayoutStorage * This);
  7171. HRESULT ( __stdcall *LayoutScript )(
  7172. ILayoutStorage * This,
  7173. /* [in] */ StorageLayout *pStorageLayout,
  7174. /* [in] */ DWORD nEntries,
  7175. /* [in] */ DWORD glfInterleavedFlag);
  7176. HRESULT ( __stdcall *BeginMonitor )(
  7177. ILayoutStorage * This);
  7178. HRESULT ( __stdcall *EndMonitor )(
  7179. ILayoutStorage * This);
  7180. HRESULT ( __stdcall *ReLayoutDocfile )(
  7181. ILayoutStorage * This,
  7182. /* [in] */ OLECHAR *pwcsNewDfName);
  7183. HRESULT ( __stdcall *ReLayoutDocfileOnILockBytes )(
  7184. ILayoutStorage * This,
  7185. /* [in] */ ILockBytes *pILockBytes);
  7186. END_INTERFACE
  7187. } ILayoutStorageVtbl;
  7188. interface ILayoutStorage
  7189. {
  7190. CONST_VTBL struct ILayoutStorageVtbl *lpVtbl;
  7191. };
  7192. #ifdef COBJMACROS
  7193. #define ILayoutStorage_QueryInterface(This,riid,ppvObject) \
  7194. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  7195. #define ILayoutStorage_AddRef(This) \
  7196. (This)->lpVtbl -> AddRef(This)
  7197. #define ILayoutStorage_Release(This) \
  7198. (This)->lpVtbl -> Release(This)
  7199. #define ILayoutStorage_LayoutScript(This,pStorageLayout,nEntries,glfInterleavedFlag) \
  7200. (This)->lpVtbl -> LayoutScript(This,pStorageLayout,nEntries,glfInterleavedFlag)
  7201. #define ILayoutStorage_BeginMonitor(This) \
  7202. (This)->lpVtbl -> BeginMonitor(This)
  7203. #define ILayoutStorage_EndMonitor(This) \
  7204. (This)->lpVtbl -> EndMonitor(This)
  7205. #define ILayoutStorage_ReLayoutDocfile(This,pwcsNewDfName) \
  7206. (This)->lpVtbl -> ReLayoutDocfile(This,pwcsNewDfName)
  7207. #define ILayoutStorage_ReLayoutDocfileOnILockBytes(This,pILockBytes) \
  7208. (This)->lpVtbl -> ReLayoutDocfileOnILockBytes(This,pILockBytes)
  7209. #endif /* COBJMACROS */
  7210. #endif /* C style interface */
  7211. HRESULT __stdcall ILayoutStorage_LayoutScript_Proxy(
  7212. ILayoutStorage * This,
  7213. /* [in] */ StorageLayout *pStorageLayout,
  7214. /* [in] */ DWORD nEntries,
  7215. /* [in] */ DWORD glfInterleavedFlag);
  7216. void __RPC_STUB ILayoutStorage_LayoutScript_Stub(
  7217. IRpcStubBuffer *This,
  7218. IRpcChannelBuffer *_pRpcChannelBuffer,
  7219. PRPC_MESSAGE _pRpcMessage,
  7220. DWORD *_pdwStubPhase);
  7221. HRESULT __stdcall ILayoutStorage_BeginMonitor_Proxy(
  7222. ILayoutStorage * This);
  7223. void __RPC_STUB ILayoutStorage_BeginMonitor_Stub(
  7224. IRpcStubBuffer *This,
  7225. IRpcChannelBuffer *_pRpcChannelBuffer,
  7226. PRPC_MESSAGE _pRpcMessage,
  7227. DWORD *_pdwStubPhase);
  7228. HRESULT __stdcall ILayoutStorage_EndMonitor_Proxy(
  7229. ILayoutStorage * This);
  7230. void __RPC_STUB ILayoutStorage_EndMonitor_Stub(
  7231. IRpcStubBuffer *This,
  7232. IRpcChannelBuffer *_pRpcChannelBuffer,
  7233. PRPC_MESSAGE _pRpcMessage,
  7234. DWORD *_pdwStubPhase);
  7235. HRESULT __stdcall ILayoutStorage_ReLayoutDocfile_Proxy(
  7236. ILayoutStorage * This,
  7237. /* [in] */ OLECHAR *pwcsNewDfName);
  7238. void __RPC_STUB ILayoutStorage_ReLayoutDocfile_Stub(
  7239. IRpcStubBuffer *This,
  7240. IRpcChannelBuffer *_pRpcChannelBuffer,
  7241. PRPC_MESSAGE _pRpcMessage,
  7242. DWORD *_pdwStubPhase);
  7243. HRESULT __stdcall ILayoutStorage_ReLayoutDocfileOnILockBytes_Proxy(
  7244. ILayoutStorage * This,
  7245. /* [in] */ ILockBytes *pILockBytes);
  7246. void __RPC_STUB ILayoutStorage_ReLayoutDocfileOnILockBytes_Stub(
  7247. IRpcStubBuffer *This,
  7248. IRpcChannelBuffer *_pRpcChannelBuffer,
  7249. PRPC_MESSAGE _pRpcMessage,
  7250. DWORD *_pdwStubPhase);
  7251. #endif /* __ILayoutStorage_INTERFACE_DEFINED__ */
  7252. #ifndef __IBlockingLock_INTERFACE_DEFINED__
  7253. #define __IBlockingLock_INTERFACE_DEFINED__
  7254. /* interface IBlockingLock */
  7255. /* [uuid][object] */
  7256. EXTERN_C const IID IID_IBlockingLock;
  7257. #if defined(__cplusplus) && !defined(CINTERFACE)
  7258. MIDL_INTERFACE("30f3d47a-6447-11d1-8e3c-00c04fb9386d")
  7259. IBlockingLock : public IUnknown
  7260. {
  7261. public:
  7262. virtual HRESULT STDMETHODCALLTYPE Lock(
  7263. /* [in] */ DWORD dwTimeout) = 0;
  7264. virtual HRESULT STDMETHODCALLTYPE Unlock( void) = 0;
  7265. };
  7266. #else /* C style interface */
  7267. typedef struct IBlockingLockVtbl
  7268. {
  7269. BEGIN_INTERFACE
  7270. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  7271. IBlockingLock * This,
  7272. /* [in] */ REFIID riid,
  7273. /* [iid_is][out] */ void **ppvObject);
  7274. ULONG ( STDMETHODCALLTYPE *AddRef )(
  7275. IBlockingLock * This);
  7276. ULONG ( STDMETHODCALLTYPE *Release )(
  7277. IBlockingLock * This);
  7278. HRESULT ( STDMETHODCALLTYPE *Lock )(
  7279. IBlockingLock * This,
  7280. /* [in] */ DWORD dwTimeout);
  7281. HRESULT ( STDMETHODCALLTYPE *Unlock )(
  7282. IBlockingLock * This);
  7283. END_INTERFACE
  7284. } IBlockingLockVtbl;
  7285. interface IBlockingLock
  7286. {
  7287. CONST_VTBL struct IBlockingLockVtbl *lpVtbl;
  7288. };
  7289. #ifdef COBJMACROS
  7290. #define IBlockingLock_QueryInterface(This,riid,ppvObject) \
  7291. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  7292. #define IBlockingLock_AddRef(This) \
  7293. (This)->lpVtbl -> AddRef(This)
  7294. #define IBlockingLock_Release(This) \
  7295. (This)->lpVtbl -> Release(This)
  7296. #define IBlockingLock_Lock(This,dwTimeout) \
  7297. (This)->lpVtbl -> Lock(This,dwTimeout)
  7298. #define IBlockingLock_Unlock(This) \
  7299. (This)->lpVtbl -> Unlock(This)
  7300. #endif /* COBJMACROS */
  7301. #endif /* C style interface */
  7302. HRESULT STDMETHODCALLTYPE IBlockingLock_Lock_Proxy(
  7303. IBlockingLock * This,
  7304. /* [in] */ DWORD dwTimeout);
  7305. void __RPC_STUB IBlockingLock_Lock_Stub(
  7306. IRpcStubBuffer *This,
  7307. IRpcChannelBuffer *_pRpcChannelBuffer,
  7308. PRPC_MESSAGE _pRpcMessage,
  7309. DWORD *_pdwStubPhase);
  7310. HRESULT STDMETHODCALLTYPE IBlockingLock_Unlock_Proxy(
  7311. IBlockingLock * This);
  7312. void __RPC_STUB IBlockingLock_Unlock_Stub(
  7313. IRpcStubBuffer *This,
  7314. IRpcChannelBuffer *_pRpcChannelBuffer,
  7315. PRPC_MESSAGE _pRpcMessage,
  7316. DWORD *_pdwStubPhase);
  7317. #endif /* __IBlockingLock_INTERFACE_DEFINED__ */
  7318. #ifndef __ITimeAndNoticeControl_INTERFACE_DEFINED__
  7319. #define __ITimeAndNoticeControl_INTERFACE_DEFINED__
  7320. /* interface ITimeAndNoticeControl */
  7321. /* [uuid][object] */
  7322. EXTERN_C const IID IID_ITimeAndNoticeControl;
  7323. #if defined(__cplusplus) && !defined(CINTERFACE)
  7324. MIDL_INTERFACE("bc0bf6ae-8878-11d1-83e9-00c04fc2c6d4")
  7325. ITimeAndNoticeControl : public IUnknown
  7326. {
  7327. public:
  7328. virtual HRESULT STDMETHODCALLTYPE SuppressChanges(
  7329. /* [in] */ DWORD res1,
  7330. /* [in] */ DWORD res2) = 0;
  7331. };
  7332. #else /* C style interface */
  7333. typedef struct ITimeAndNoticeControlVtbl
  7334. {
  7335. BEGIN_INTERFACE
  7336. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  7337. ITimeAndNoticeControl * This,
  7338. /* [in] */ REFIID riid,
  7339. /* [iid_is][out] */ void **ppvObject);
  7340. ULONG ( STDMETHODCALLTYPE *AddRef )(
  7341. ITimeAndNoticeControl * This);
  7342. ULONG ( STDMETHODCALLTYPE *Release )(
  7343. ITimeAndNoticeControl * This);
  7344. HRESULT ( STDMETHODCALLTYPE *SuppressChanges )(
  7345. ITimeAndNoticeControl * This,
  7346. /* [in] */ DWORD res1,
  7347. /* [in] */ DWORD res2);
  7348. END_INTERFACE
  7349. } ITimeAndNoticeControlVtbl;
  7350. interface ITimeAndNoticeControl
  7351. {
  7352. CONST_VTBL struct ITimeAndNoticeControlVtbl *lpVtbl;
  7353. };
  7354. #ifdef COBJMACROS
  7355. #define ITimeAndNoticeControl_QueryInterface(This,riid,ppvObject) \
  7356. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  7357. #define ITimeAndNoticeControl_AddRef(This) \
  7358. (This)->lpVtbl -> AddRef(This)
  7359. #define ITimeAndNoticeControl_Release(This) \
  7360. (This)->lpVtbl -> Release(This)
  7361. #define ITimeAndNoticeControl_SuppressChanges(This,res1,res2) \
  7362. (This)->lpVtbl -> SuppressChanges(This,res1,res2)
  7363. #endif /* COBJMACROS */
  7364. #endif /* C style interface */
  7365. HRESULT STDMETHODCALLTYPE ITimeAndNoticeControl_SuppressChanges_Proxy(
  7366. ITimeAndNoticeControl * This,
  7367. /* [in] */ DWORD res1,
  7368. /* [in] */ DWORD res2);
  7369. void __RPC_STUB ITimeAndNoticeControl_SuppressChanges_Stub(
  7370. IRpcStubBuffer *This,
  7371. IRpcChannelBuffer *_pRpcChannelBuffer,
  7372. PRPC_MESSAGE _pRpcMessage,
  7373. DWORD *_pdwStubPhase);
  7374. #endif /* __ITimeAndNoticeControl_INTERFACE_DEFINED__ */
  7375. #ifndef __IOplockStorage_INTERFACE_DEFINED__
  7376. #define __IOplockStorage_INTERFACE_DEFINED__
  7377. /* interface IOplockStorage */
  7378. /* [uuid][object] */
  7379. EXTERN_C const IID IID_IOplockStorage;
  7380. #if defined(__cplusplus) && !defined(CINTERFACE)
  7381. MIDL_INTERFACE("8d19c834-8879-11d1-83e9-00c04fc2c6d4")
  7382. IOplockStorage : public IUnknown
  7383. {
  7384. public:
  7385. virtual HRESULT STDMETHODCALLTYPE CreateStorageEx(
  7386. /* [in] */ LPCWSTR pwcsName,
  7387. /* [in] */ DWORD grfMode,
  7388. /* [in] */ DWORD stgfmt,
  7389. /* [in] */ DWORD grfAttrs,
  7390. /* [in] */ REFIID riid,
  7391. /* [iid_is][out] */ void **ppstgOpen) = 0;
  7392. virtual HRESULT STDMETHODCALLTYPE OpenStorageEx(
  7393. /* [in] */ LPCWSTR pwcsName,
  7394. /* [in] */ DWORD grfMode,
  7395. /* [in] */ DWORD stgfmt,
  7396. /* [in] */ DWORD grfAttrs,
  7397. /* [in] */ REFIID riid,
  7398. /* [iid_is][out] */ void **ppstgOpen) = 0;
  7399. };
  7400. #else /* C style interface */
  7401. typedef struct IOplockStorageVtbl
  7402. {
  7403. BEGIN_INTERFACE
  7404. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  7405. IOplockStorage * This,
  7406. /* [in] */ REFIID riid,
  7407. /* [iid_is][out] */ void **ppvObject);
  7408. ULONG ( STDMETHODCALLTYPE *AddRef )(
  7409. IOplockStorage * This);
  7410. ULONG ( STDMETHODCALLTYPE *Release )(
  7411. IOplockStorage * This);
  7412. HRESULT ( STDMETHODCALLTYPE *CreateStorageEx )(
  7413. IOplockStorage * This,
  7414. /* [in] */ LPCWSTR pwcsName,
  7415. /* [in] */ DWORD grfMode,
  7416. /* [in] */ DWORD stgfmt,
  7417. /* [in] */ DWORD grfAttrs,
  7418. /* [in] */ REFIID riid,
  7419. /* [iid_is][out] */ void **ppstgOpen);
  7420. HRESULT ( STDMETHODCALLTYPE *OpenStorageEx )(
  7421. IOplockStorage * This,
  7422. /* [in] */ LPCWSTR pwcsName,
  7423. /* [in] */ DWORD grfMode,
  7424. /* [in] */ DWORD stgfmt,
  7425. /* [in] */ DWORD grfAttrs,
  7426. /* [in] */ REFIID riid,
  7427. /* [iid_is][out] */ void **ppstgOpen);
  7428. END_INTERFACE
  7429. } IOplockStorageVtbl;
  7430. interface IOplockStorage
  7431. {
  7432. CONST_VTBL struct IOplockStorageVtbl *lpVtbl;
  7433. };
  7434. #ifdef COBJMACROS
  7435. #define IOplockStorage_QueryInterface(This,riid,ppvObject) \
  7436. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  7437. #define IOplockStorage_AddRef(This) \
  7438. (This)->lpVtbl -> AddRef(This)
  7439. #define IOplockStorage_Release(This) \
  7440. (This)->lpVtbl -> Release(This)
  7441. #define IOplockStorage_CreateStorageEx(This,pwcsName,grfMode,stgfmt,grfAttrs,riid,ppstgOpen) \
  7442. (This)->lpVtbl -> CreateStorageEx(This,pwcsName,grfMode,stgfmt,grfAttrs,riid,ppstgOpen)
  7443. #define IOplockStorage_OpenStorageEx(This,pwcsName,grfMode,stgfmt,grfAttrs,riid,ppstgOpen) \
  7444. (This)->lpVtbl -> OpenStorageEx(This,pwcsName,grfMode,stgfmt,grfAttrs,riid,ppstgOpen)
  7445. #endif /* COBJMACROS */
  7446. #endif /* C style interface */
  7447. HRESULT STDMETHODCALLTYPE IOplockStorage_CreateStorageEx_Proxy(
  7448. IOplockStorage * This,
  7449. /* [in] */ LPCWSTR pwcsName,
  7450. /* [in] */ DWORD grfMode,
  7451. /* [in] */ DWORD stgfmt,
  7452. /* [in] */ DWORD grfAttrs,
  7453. /* [in] */ REFIID riid,
  7454. /* [iid_is][out] */ void **ppstgOpen);
  7455. void __RPC_STUB IOplockStorage_CreateStorageEx_Stub(
  7456. IRpcStubBuffer *This,
  7457. IRpcChannelBuffer *_pRpcChannelBuffer,
  7458. PRPC_MESSAGE _pRpcMessage,
  7459. DWORD *_pdwStubPhase);
  7460. HRESULT STDMETHODCALLTYPE IOplockStorage_OpenStorageEx_Proxy(
  7461. IOplockStorage * This,
  7462. /* [in] */ LPCWSTR pwcsName,
  7463. /* [in] */ DWORD grfMode,
  7464. /* [in] */ DWORD stgfmt,
  7465. /* [in] */ DWORD grfAttrs,
  7466. /* [in] */ REFIID riid,
  7467. /* [iid_is][out] */ void **ppstgOpen);
  7468. void __RPC_STUB IOplockStorage_OpenStorageEx_Stub(
  7469. IRpcStubBuffer *This,
  7470. IRpcChannelBuffer *_pRpcChannelBuffer,
  7471. PRPC_MESSAGE _pRpcMessage,
  7472. DWORD *_pdwStubPhase);
  7473. #endif /* __IOplockStorage_INTERFACE_DEFINED__ */
  7474. #ifndef __ISurrogate_INTERFACE_DEFINED__
  7475. #define __ISurrogate_INTERFACE_DEFINED__
  7476. /* interface ISurrogate */
  7477. /* [object][unique][version][uuid] */
  7478. typedef /* [unique] */ ISurrogate *LPSURROGATE;
  7479. EXTERN_C const IID IID_ISurrogate;
  7480. #if defined(__cplusplus) && !defined(CINTERFACE)
  7481. MIDL_INTERFACE("00000022-0000-0000-C000-000000000046")
  7482. ISurrogate : public IUnknown
  7483. {
  7484. public:
  7485. virtual HRESULT STDMETHODCALLTYPE LoadDllServer(
  7486. /* [in] */ REFCLSID Clsid) = 0;
  7487. virtual HRESULT STDMETHODCALLTYPE FreeSurrogate( void) = 0;
  7488. };
  7489. #else /* C style interface */
  7490. typedef struct ISurrogateVtbl
  7491. {
  7492. BEGIN_INTERFACE
  7493. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  7494. ISurrogate * This,
  7495. /* [in] */ REFIID riid,
  7496. /* [iid_is][out] */ void **ppvObject);
  7497. ULONG ( STDMETHODCALLTYPE *AddRef )(
  7498. ISurrogate * This);
  7499. ULONG ( STDMETHODCALLTYPE *Release )(
  7500. ISurrogate * This);
  7501. HRESULT ( STDMETHODCALLTYPE *LoadDllServer )(
  7502. ISurrogate * This,
  7503. /* [in] */ REFCLSID Clsid);
  7504. HRESULT ( STDMETHODCALLTYPE *FreeSurrogate )(
  7505. ISurrogate * This);
  7506. END_INTERFACE
  7507. } ISurrogateVtbl;
  7508. interface ISurrogate
  7509. {
  7510. CONST_VTBL struct ISurrogateVtbl *lpVtbl;
  7511. };
  7512. #ifdef COBJMACROS
  7513. #define ISurrogate_QueryInterface(This,riid,ppvObject) \
  7514. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  7515. #define ISurrogate_AddRef(This) \
  7516. (This)->lpVtbl -> AddRef(This)
  7517. #define ISurrogate_Release(This) \
  7518. (This)->lpVtbl -> Release(This)
  7519. #define ISurrogate_LoadDllServer(This,Clsid) \
  7520. (This)->lpVtbl -> LoadDllServer(This,Clsid)
  7521. #define ISurrogate_FreeSurrogate(This) \
  7522. (This)->lpVtbl -> FreeSurrogate(This)
  7523. #endif /* COBJMACROS */
  7524. #endif /* C style interface */
  7525. HRESULT STDMETHODCALLTYPE ISurrogate_LoadDllServer_Proxy(
  7526. ISurrogate * This,
  7527. /* [in] */ REFCLSID Clsid);
  7528. void __RPC_STUB ISurrogate_LoadDllServer_Stub(
  7529. IRpcStubBuffer *This,
  7530. IRpcChannelBuffer *_pRpcChannelBuffer,
  7531. PRPC_MESSAGE _pRpcMessage,
  7532. DWORD *_pdwStubPhase);
  7533. HRESULT STDMETHODCALLTYPE ISurrogate_FreeSurrogate_Proxy(
  7534. ISurrogate * This);
  7535. void __RPC_STUB ISurrogate_FreeSurrogate_Stub(
  7536. IRpcStubBuffer *This,
  7537. IRpcChannelBuffer *_pRpcChannelBuffer,
  7538. PRPC_MESSAGE _pRpcMessage,
  7539. DWORD *_pdwStubPhase);
  7540. #endif /* __ISurrogate_INTERFACE_DEFINED__ */
  7541. #ifndef __IGlobalInterfaceTable_INTERFACE_DEFINED__
  7542. #define __IGlobalInterfaceTable_INTERFACE_DEFINED__
  7543. /* interface IGlobalInterfaceTable */
  7544. /* [uuid][object][local] */
  7545. typedef /* [unique] */ IGlobalInterfaceTable *LPGLOBALINTERFACETABLE;
  7546. EXTERN_C const IID IID_IGlobalInterfaceTable;
  7547. #if defined(__cplusplus) && !defined(CINTERFACE)
  7548. MIDL_INTERFACE("00000146-0000-0000-C000-000000000046")
  7549. IGlobalInterfaceTable : public IUnknown
  7550. {
  7551. public:
  7552. virtual HRESULT STDMETHODCALLTYPE RegisterInterfaceInGlobal(
  7553. /* [in] */ IUnknown *pUnk,
  7554. /* [in] */ REFIID riid,
  7555. /* [out] */ DWORD *pdwCookie) = 0;
  7556. virtual HRESULT STDMETHODCALLTYPE RevokeInterfaceFromGlobal(
  7557. /* [in] */ DWORD dwCookie) = 0;
  7558. virtual HRESULT STDMETHODCALLTYPE GetInterfaceFromGlobal(
  7559. /* [in] */ DWORD dwCookie,
  7560. /* [in] */ REFIID riid,
  7561. /* [iid_is][out] */ void **ppv) = 0;
  7562. };
  7563. #else /* C style interface */
  7564. typedef struct IGlobalInterfaceTableVtbl
  7565. {
  7566. BEGIN_INTERFACE
  7567. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  7568. IGlobalInterfaceTable * This,
  7569. /* [in] */ REFIID riid,
  7570. /* [iid_is][out] */ void **ppvObject);
  7571. ULONG ( STDMETHODCALLTYPE *AddRef )(
  7572. IGlobalInterfaceTable * This);
  7573. ULONG ( STDMETHODCALLTYPE *Release )(
  7574. IGlobalInterfaceTable * This);
  7575. HRESULT ( STDMETHODCALLTYPE *RegisterInterfaceInGlobal )(
  7576. IGlobalInterfaceTable * This,
  7577. /* [in] */ IUnknown *pUnk,
  7578. /* [in] */ REFIID riid,
  7579. /* [out] */ DWORD *pdwCookie);
  7580. HRESULT ( STDMETHODCALLTYPE *RevokeInterfaceFromGlobal )(
  7581. IGlobalInterfaceTable * This,
  7582. /* [in] */ DWORD dwCookie);
  7583. HRESULT ( STDMETHODCALLTYPE *GetInterfaceFromGlobal )(
  7584. IGlobalInterfaceTable * This,
  7585. /* [in] */ DWORD dwCookie,
  7586. /* [in] */ REFIID riid,
  7587. /* [iid_is][out] */ void **ppv);
  7588. END_INTERFACE
  7589. } IGlobalInterfaceTableVtbl;
  7590. interface IGlobalInterfaceTable
  7591. {
  7592. CONST_VTBL struct IGlobalInterfaceTableVtbl *lpVtbl;
  7593. };
  7594. #ifdef COBJMACROS
  7595. #define IGlobalInterfaceTable_QueryInterface(This,riid,ppvObject) \
  7596. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  7597. #define IGlobalInterfaceTable_AddRef(This) \
  7598. (This)->lpVtbl -> AddRef(This)
  7599. #define IGlobalInterfaceTable_Release(This) \
  7600. (This)->lpVtbl -> Release(This)
  7601. #define IGlobalInterfaceTable_RegisterInterfaceInGlobal(This,pUnk,riid,pdwCookie) \
  7602. (This)->lpVtbl -> RegisterInterfaceInGlobal(This,pUnk,riid,pdwCookie)
  7603. #define IGlobalInterfaceTable_RevokeInterfaceFromGlobal(This,dwCookie) \
  7604. (This)->lpVtbl -> RevokeInterfaceFromGlobal(This,dwCookie)
  7605. #define IGlobalInterfaceTable_GetInterfaceFromGlobal(This,dwCookie,riid,ppv) \
  7606. (This)->lpVtbl -> GetInterfaceFromGlobal(This,dwCookie,riid,ppv)
  7607. #endif /* COBJMACROS */
  7608. #endif /* C style interface */
  7609. HRESULT STDMETHODCALLTYPE IGlobalInterfaceTable_RegisterInterfaceInGlobal_Proxy(
  7610. IGlobalInterfaceTable * This,
  7611. /* [in] */ IUnknown *pUnk,
  7612. /* [in] */ REFIID riid,
  7613. /* [out] */ DWORD *pdwCookie);
  7614. void __RPC_STUB IGlobalInterfaceTable_RegisterInterfaceInGlobal_Stub(
  7615. IRpcStubBuffer *This,
  7616. IRpcChannelBuffer *_pRpcChannelBuffer,
  7617. PRPC_MESSAGE _pRpcMessage,
  7618. DWORD *_pdwStubPhase);
  7619. HRESULT STDMETHODCALLTYPE IGlobalInterfaceTable_RevokeInterfaceFromGlobal_Proxy(
  7620. IGlobalInterfaceTable * This,
  7621. /* [in] */ DWORD dwCookie);
  7622. void __RPC_STUB IGlobalInterfaceTable_RevokeInterfaceFromGlobal_Stub(
  7623. IRpcStubBuffer *This,
  7624. IRpcChannelBuffer *_pRpcChannelBuffer,
  7625. PRPC_MESSAGE _pRpcMessage,
  7626. DWORD *_pdwStubPhase);
  7627. HRESULT STDMETHODCALLTYPE IGlobalInterfaceTable_GetInterfaceFromGlobal_Proxy(
  7628. IGlobalInterfaceTable * This,
  7629. /* [in] */ DWORD dwCookie,
  7630. /* [in] */ REFIID riid,
  7631. /* [iid_is][out] */ void **ppv);
  7632. void __RPC_STUB IGlobalInterfaceTable_GetInterfaceFromGlobal_Stub(
  7633. IRpcStubBuffer *This,
  7634. IRpcChannelBuffer *_pRpcChannelBuffer,
  7635. PRPC_MESSAGE _pRpcMessage,
  7636. DWORD *_pdwStubPhase);
  7637. #endif /* __IGlobalInterfaceTable_INTERFACE_DEFINED__ */
  7638. #ifndef __IDirectWriterLock_INTERFACE_DEFINED__
  7639. #define __IDirectWriterLock_INTERFACE_DEFINED__
  7640. /* interface IDirectWriterLock */
  7641. /* [unique][uuid][object] */
  7642. EXTERN_C const IID IID_IDirectWriterLock;
  7643. #if defined(__cplusplus) && !defined(CINTERFACE)
  7644. MIDL_INTERFACE("0e6d4d92-6738-11cf-9608-00aa00680db4")
  7645. IDirectWriterLock : public IUnknown
  7646. {
  7647. public:
  7648. virtual HRESULT STDMETHODCALLTYPE WaitForWriteAccess(
  7649. /* [in] */ DWORD dwTimeout) = 0;
  7650. virtual HRESULT STDMETHODCALLTYPE ReleaseWriteAccess( void) = 0;
  7651. virtual HRESULT STDMETHODCALLTYPE HaveWriteAccess( void) = 0;
  7652. };
  7653. #else /* C style interface */
  7654. typedef struct IDirectWriterLockVtbl
  7655. {
  7656. BEGIN_INTERFACE
  7657. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  7658. IDirectWriterLock * This,
  7659. /* [in] */ REFIID riid,
  7660. /* [iid_is][out] */ void **ppvObject);
  7661. ULONG ( STDMETHODCALLTYPE *AddRef )(
  7662. IDirectWriterLock * This);
  7663. ULONG ( STDMETHODCALLTYPE *Release )(
  7664. IDirectWriterLock * This);
  7665. HRESULT ( STDMETHODCALLTYPE *WaitForWriteAccess )(
  7666. IDirectWriterLock * This,
  7667. /* [in] */ DWORD dwTimeout);
  7668. HRESULT ( STDMETHODCALLTYPE *ReleaseWriteAccess )(
  7669. IDirectWriterLock * This);
  7670. HRESULT ( STDMETHODCALLTYPE *HaveWriteAccess )(
  7671. IDirectWriterLock * This);
  7672. END_INTERFACE
  7673. } IDirectWriterLockVtbl;
  7674. interface IDirectWriterLock
  7675. {
  7676. CONST_VTBL struct IDirectWriterLockVtbl *lpVtbl;
  7677. };
  7678. #ifdef COBJMACROS
  7679. #define IDirectWriterLock_QueryInterface(This,riid,ppvObject) \
  7680. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  7681. #define IDirectWriterLock_AddRef(This) \
  7682. (This)->lpVtbl -> AddRef(This)
  7683. #define IDirectWriterLock_Release(This) \
  7684. (This)->lpVtbl -> Release(This)
  7685. #define IDirectWriterLock_WaitForWriteAccess(This,dwTimeout) \
  7686. (This)->lpVtbl -> WaitForWriteAccess(This,dwTimeout)
  7687. #define IDirectWriterLock_ReleaseWriteAccess(This) \
  7688. (This)->lpVtbl -> ReleaseWriteAccess(This)
  7689. #define IDirectWriterLock_HaveWriteAccess(This) \
  7690. (This)->lpVtbl -> HaveWriteAccess(This)
  7691. #endif /* COBJMACROS */
  7692. #endif /* C style interface */
  7693. HRESULT STDMETHODCALLTYPE IDirectWriterLock_WaitForWriteAccess_Proxy(
  7694. IDirectWriterLock * This,
  7695. /* [in] */ DWORD dwTimeout);
  7696. void __RPC_STUB IDirectWriterLock_WaitForWriteAccess_Stub(
  7697. IRpcStubBuffer *This,
  7698. IRpcChannelBuffer *_pRpcChannelBuffer,
  7699. PRPC_MESSAGE _pRpcMessage,
  7700. DWORD *_pdwStubPhase);
  7701. HRESULT STDMETHODCALLTYPE IDirectWriterLock_ReleaseWriteAccess_Proxy(
  7702. IDirectWriterLock * This);
  7703. void __RPC_STUB IDirectWriterLock_ReleaseWriteAccess_Stub(
  7704. IRpcStubBuffer *This,
  7705. IRpcChannelBuffer *_pRpcChannelBuffer,
  7706. PRPC_MESSAGE _pRpcMessage,
  7707. DWORD *_pdwStubPhase);
  7708. HRESULT STDMETHODCALLTYPE IDirectWriterLock_HaveWriteAccess_Proxy(
  7709. IDirectWriterLock * This);
  7710. void __RPC_STUB IDirectWriterLock_HaveWriteAccess_Stub(
  7711. IRpcStubBuffer *This,
  7712. IRpcChannelBuffer *_pRpcChannelBuffer,
  7713. PRPC_MESSAGE _pRpcMessage,
  7714. DWORD *_pdwStubPhase);
  7715. #endif /* __IDirectWriterLock_INTERFACE_DEFINED__ */
  7716. #ifndef __ISynchronize_INTERFACE_DEFINED__
  7717. #define __ISynchronize_INTERFACE_DEFINED__
  7718. /* interface ISynchronize */
  7719. /* [uuid][object] */
  7720. EXTERN_C const IID IID_ISynchronize;
  7721. #if defined(__cplusplus) && !defined(CINTERFACE)
  7722. MIDL_INTERFACE("00000030-0000-0000-C000-000000000046")
  7723. ISynchronize : public IUnknown
  7724. {
  7725. public:
  7726. virtual HRESULT STDMETHODCALLTYPE Wait(
  7727. /* [in] */ DWORD dwFlags,
  7728. /* [in] */ DWORD dwMilliseconds) = 0;
  7729. virtual HRESULT STDMETHODCALLTYPE Signal( void) = 0;
  7730. virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  7731. };
  7732. #else /* C style interface */
  7733. typedef struct ISynchronizeVtbl
  7734. {
  7735. BEGIN_INTERFACE
  7736. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  7737. ISynchronize * This,
  7738. /* [in] */ REFIID riid,
  7739. /* [iid_is][out] */ void **ppvObject);
  7740. ULONG ( STDMETHODCALLTYPE *AddRef )(
  7741. ISynchronize * This);
  7742. ULONG ( STDMETHODCALLTYPE *Release )(
  7743. ISynchronize * This);
  7744. HRESULT ( STDMETHODCALLTYPE *Wait )(
  7745. ISynchronize * This,
  7746. /* [in] */ DWORD dwFlags,
  7747. /* [in] */ DWORD dwMilliseconds);
  7748. HRESULT ( STDMETHODCALLTYPE *Signal )(
  7749. ISynchronize * This);
  7750. HRESULT ( STDMETHODCALLTYPE *Reset )(
  7751. ISynchronize * This);
  7752. END_INTERFACE
  7753. } ISynchronizeVtbl;
  7754. interface ISynchronize
  7755. {
  7756. CONST_VTBL struct ISynchronizeVtbl *lpVtbl;
  7757. };
  7758. #ifdef COBJMACROS
  7759. #define ISynchronize_QueryInterface(This,riid,ppvObject) \
  7760. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  7761. #define ISynchronize_AddRef(This) \
  7762. (This)->lpVtbl -> AddRef(This)
  7763. #define ISynchronize_Release(This) \
  7764. (This)->lpVtbl -> Release(This)
  7765. #define ISynchronize_Wait(This,dwFlags,dwMilliseconds) \
  7766. (This)->lpVtbl -> Wait(This,dwFlags,dwMilliseconds)
  7767. #define ISynchronize_Signal(This) \
  7768. (This)->lpVtbl -> Signal(This)
  7769. #define ISynchronize_Reset(This) \
  7770. (This)->lpVtbl -> Reset(This)
  7771. #endif /* COBJMACROS */
  7772. #endif /* C style interface */
  7773. HRESULT STDMETHODCALLTYPE ISynchronize_Wait_Proxy(
  7774. ISynchronize * This,
  7775. /* [in] */ DWORD dwFlags,
  7776. /* [in] */ DWORD dwMilliseconds);
  7777. void __RPC_STUB ISynchronize_Wait_Stub(
  7778. IRpcStubBuffer *This,
  7779. IRpcChannelBuffer *_pRpcChannelBuffer,
  7780. PRPC_MESSAGE _pRpcMessage,
  7781. DWORD *_pdwStubPhase);
  7782. HRESULT STDMETHODCALLTYPE ISynchronize_Signal_Proxy(
  7783. ISynchronize * This);
  7784. void __RPC_STUB ISynchronize_Signal_Stub(
  7785. IRpcStubBuffer *This,
  7786. IRpcChannelBuffer *_pRpcChannelBuffer,
  7787. PRPC_MESSAGE _pRpcMessage,
  7788. DWORD *_pdwStubPhase);
  7789. HRESULT STDMETHODCALLTYPE ISynchronize_Reset_Proxy(
  7790. ISynchronize * This);
  7791. void __RPC_STUB ISynchronize_Reset_Stub(
  7792. IRpcStubBuffer *This,
  7793. IRpcChannelBuffer *_pRpcChannelBuffer,
  7794. PRPC_MESSAGE _pRpcMessage,
  7795. DWORD *_pdwStubPhase);
  7796. #endif /* __ISynchronize_INTERFACE_DEFINED__ */
  7797. #ifndef __ISynchronizeHandle_INTERFACE_DEFINED__
  7798. #define __ISynchronizeHandle_INTERFACE_DEFINED__
  7799. /* interface ISynchronizeHandle */
  7800. /* [uuid][object][local] */
  7801. EXTERN_C const IID IID_ISynchronizeHandle;
  7802. #if defined(__cplusplus) && !defined(CINTERFACE)
  7803. MIDL_INTERFACE("00000031-0000-0000-C000-000000000046")
  7804. ISynchronizeHandle : public IUnknown
  7805. {
  7806. public:
  7807. virtual HRESULT STDMETHODCALLTYPE GetHandle(
  7808. /* [out] */ HANDLE *ph) = 0;
  7809. };
  7810. #else /* C style interface */
  7811. typedef struct ISynchronizeHandleVtbl
  7812. {
  7813. BEGIN_INTERFACE
  7814. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  7815. ISynchronizeHandle * This,
  7816. /* [in] */ REFIID riid,
  7817. /* [iid_is][out] */ void **ppvObject);
  7818. ULONG ( STDMETHODCALLTYPE *AddRef )(
  7819. ISynchronizeHandle * This);
  7820. ULONG ( STDMETHODCALLTYPE *Release )(
  7821. ISynchronizeHandle * This);
  7822. HRESULT ( STDMETHODCALLTYPE *GetHandle )(
  7823. ISynchronizeHandle * This,
  7824. /* [out] */ HANDLE *ph);
  7825. END_INTERFACE
  7826. } ISynchronizeHandleVtbl;
  7827. interface ISynchronizeHandle
  7828. {
  7829. CONST_VTBL struct ISynchronizeHandleVtbl *lpVtbl;
  7830. };
  7831. #ifdef COBJMACROS
  7832. #define ISynchronizeHandle_QueryInterface(This,riid,ppvObject) \
  7833. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  7834. #define ISynchronizeHandle_AddRef(This) \
  7835. (This)->lpVtbl -> AddRef(This)
  7836. #define ISynchronizeHandle_Release(This) \
  7837. (This)->lpVtbl -> Release(This)
  7838. #define ISynchronizeHandle_GetHandle(This,ph) \
  7839. (This)->lpVtbl -> GetHandle(This,ph)
  7840. #endif /* COBJMACROS */
  7841. #endif /* C style interface */
  7842. HRESULT STDMETHODCALLTYPE ISynchronizeHandle_GetHandle_Proxy(
  7843. ISynchronizeHandle * This,
  7844. /* [out] */ HANDLE *ph);
  7845. void __RPC_STUB ISynchronizeHandle_GetHandle_Stub(
  7846. IRpcStubBuffer *This,
  7847. IRpcChannelBuffer *_pRpcChannelBuffer,
  7848. PRPC_MESSAGE _pRpcMessage,
  7849. DWORD *_pdwStubPhase);
  7850. #endif /* __ISynchronizeHandle_INTERFACE_DEFINED__ */
  7851. #ifndef __ISynchronizeEvent_INTERFACE_DEFINED__
  7852. #define __ISynchronizeEvent_INTERFACE_DEFINED__
  7853. /* interface ISynchronizeEvent */
  7854. /* [uuid][object][local] */
  7855. EXTERN_C const IID IID_ISynchronizeEvent;
  7856. #if defined(__cplusplus) && !defined(CINTERFACE)
  7857. MIDL_INTERFACE("00000032-0000-0000-C000-000000000046")
  7858. ISynchronizeEvent : public ISynchronizeHandle
  7859. {
  7860. public:
  7861. virtual HRESULT STDMETHODCALLTYPE SetEventHandle(
  7862. /* [in] */ HANDLE *ph) = 0;
  7863. };
  7864. #else /* C style interface */
  7865. typedef struct ISynchronizeEventVtbl
  7866. {
  7867. BEGIN_INTERFACE
  7868. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  7869. ISynchronizeEvent * This,
  7870. /* [in] */ REFIID riid,
  7871. /* [iid_is][out] */ void **ppvObject);
  7872. ULONG ( STDMETHODCALLTYPE *AddRef )(
  7873. ISynchronizeEvent * This);
  7874. ULONG ( STDMETHODCALLTYPE *Release )(
  7875. ISynchronizeEvent * This);
  7876. HRESULT ( STDMETHODCALLTYPE *GetHandle )(
  7877. ISynchronizeEvent * This,
  7878. /* [out] */ HANDLE *ph);
  7879. HRESULT ( STDMETHODCALLTYPE *SetEventHandle )(
  7880. ISynchronizeEvent * This,
  7881. /* [in] */ HANDLE *ph);
  7882. END_INTERFACE
  7883. } ISynchronizeEventVtbl;
  7884. interface ISynchronizeEvent
  7885. {
  7886. CONST_VTBL struct ISynchronizeEventVtbl *lpVtbl;
  7887. };
  7888. #ifdef COBJMACROS
  7889. #define ISynchronizeEvent_QueryInterface(This,riid,ppvObject) \
  7890. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  7891. #define ISynchronizeEvent_AddRef(This) \
  7892. (This)->lpVtbl -> AddRef(This)
  7893. #define ISynchronizeEvent_Release(This) \
  7894. (This)->lpVtbl -> Release(This)
  7895. #define ISynchronizeEvent_GetHandle(This,ph) \
  7896. (This)->lpVtbl -> GetHandle(This,ph)
  7897. #define ISynchronizeEvent_SetEventHandle(This,ph) \
  7898. (This)->lpVtbl -> SetEventHandle(This,ph)
  7899. #endif /* COBJMACROS */
  7900. #endif /* C style interface */
  7901. HRESULT STDMETHODCALLTYPE ISynchronizeEvent_SetEventHandle_Proxy(
  7902. ISynchronizeEvent * This,
  7903. /* [in] */ HANDLE *ph);
  7904. void __RPC_STUB ISynchronizeEvent_SetEventHandle_Stub(
  7905. IRpcStubBuffer *This,
  7906. IRpcChannelBuffer *_pRpcChannelBuffer,
  7907. PRPC_MESSAGE _pRpcMessage,
  7908. DWORD *_pdwStubPhase);
  7909. #endif /* __ISynchronizeEvent_INTERFACE_DEFINED__ */
  7910. #ifndef __ISynchronizeContainer_INTERFACE_DEFINED__
  7911. #define __ISynchronizeContainer_INTERFACE_DEFINED__
  7912. /* interface ISynchronizeContainer */
  7913. /* [uuid][object][local] */
  7914. EXTERN_C const IID IID_ISynchronizeContainer;
  7915. #if defined(__cplusplus) && !defined(CINTERFACE)
  7916. MIDL_INTERFACE("00000033-0000-0000-C000-000000000046")
  7917. ISynchronizeContainer : public IUnknown
  7918. {
  7919. public:
  7920. virtual HRESULT STDMETHODCALLTYPE AddSynchronize(
  7921. /* [in] */ ISynchronize *pSync) = 0;
  7922. virtual HRESULT STDMETHODCALLTYPE WaitMultiple(
  7923. /* [in] */ DWORD dwFlags,
  7924. /* [in] */ DWORD dwTimeOut,
  7925. /* [out] */ ISynchronize **ppSync) = 0;
  7926. };
  7927. #else /* C style interface */
  7928. typedef struct ISynchronizeContainerVtbl
  7929. {
  7930. BEGIN_INTERFACE
  7931. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  7932. ISynchronizeContainer * This,
  7933. /* [in] */ REFIID riid,
  7934. /* [iid_is][out] */ void **ppvObject);
  7935. ULONG ( STDMETHODCALLTYPE *AddRef )(
  7936. ISynchronizeContainer * This);
  7937. ULONG ( STDMETHODCALLTYPE *Release )(
  7938. ISynchronizeContainer * This);
  7939. HRESULT ( STDMETHODCALLTYPE *AddSynchronize )(
  7940. ISynchronizeContainer * This,
  7941. /* [in] */ ISynchronize *pSync);
  7942. HRESULT ( STDMETHODCALLTYPE *WaitMultiple )(
  7943. ISynchronizeContainer * This,
  7944. /* [in] */ DWORD dwFlags,
  7945. /* [in] */ DWORD dwTimeOut,
  7946. /* [out] */ ISynchronize **ppSync);
  7947. END_INTERFACE
  7948. } ISynchronizeContainerVtbl;
  7949. interface ISynchronizeContainer
  7950. {
  7951. CONST_VTBL struct ISynchronizeContainerVtbl *lpVtbl;
  7952. };
  7953. #ifdef COBJMACROS
  7954. #define ISynchronizeContainer_QueryInterface(This,riid,ppvObject) \
  7955. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  7956. #define ISynchronizeContainer_AddRef(This) \
  7957. (This)->lpVtbl -> AddRef(This)
  7958. #define ISynchronizeContainer_Release(This) \
  7959. (This)->lpVtbl -> Release(This)
  7960. #define ISynchronizeContainer_AddSynchronize(This,pSync) \
  7961. (This)->lpVtbl -> AddSynchronize(This,pSync)
  7962. #define ISynchronizeContainer_WaitMultiple(This,dwFlags,dwTimeOut,ppSync) \
  7963. (This)->lpVtbl -> WaitMultiple(This,dwFlags,dwTimeOut,ppSync)
  7964. #endif /* COBJMACROS */
  7965. #endif /* C style interface */
  7966. HRESULT STDMETHODCALLTYPE ISynchronizeContainer_AddSynchronize_Proxy(
  7967. ISynchronizeContainer * This,
  7968. /* [in] */ ISynchronize *pSync);
  7969. void __RPC_STUB ISynchronizeContainer_AddSynchronize_Stub(
  7970. IRpcStubBuffer *This,
  7971. IRpcChannelBuffer *_pRpcChannelBuffer,
  7972. PRPC_MESSAGE _pRpcMessage,
  7973. DWORD *_pdwStubPhase);
  7974. HRESULT STDMETHODCALLTYPE ISynchronizeContainer_WaitMultiple_Proxy(
  7975. ISynchronizeContainer * This,
  7976. /* [in] */ DWORD dwFlags,
  7977. /* [in] */ DWORD dwTimeOut,
  7978. /* [out] */ ISynchronize **ppSync);
  7979. void __RPC_STUB ISynchronizeContainer_WaitMultiple_Stub(
  7980. IRpcStubBuffer *This,
  7981. IRpcChannelBuffer *_pRpcChannelBuffer,
  7982. PRPC_MESSAGE _pRpcMessage,
  7983. DWORD *_pdwStubPhase);
  7984. #endif /* __ISynchronizeContainer_INTERFACE_DEFINED__ */
  7985. #ifndef __ISynchronizeMutex_INTERFACE_DEFINED__
  7986. #define __ISynchronizeMutex_INTERFACE_DEFINED__
  7987. /* interface ISynchronizeMutex */
  7988. /* [uuid][object][local] */
  7989. EXTERN_C const IID IID_ISynchronizeMutex;
  7990. #if defined(__cplusplus) && !defined(CINTERFACE)
  7991. MIDL_INTERFACE("00000025-0000-0000-C000-000000000046")
  7992. ISynchronizeMutex : public ISynchronize
  7993. {
  7994. public:
  7995. virtual HRESULT STDMETHODCALLTYPE ReleaseMutex( void) = 0;
  7996. };
  7997. #else /* C style interface */
  7998. typedef struct ISynchronizeMutexVtbl
  7999. {
  8000. BEGIN_INTERFACE
  8001. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  8002. ISynchronizeMutex * This,
  8003. /* [in] */ REFIID riid,
  8004. /* [iid_is][out] */ void **ppvObject);
  8005. ULONG ( STDMETHODCALLTYPE *AddRef )(
  8006. ISynchronizeMutex * This);
  8007. ULONG ( STDMETHODCALLTYPE *Release )(
  8008. ISynchronizeMutex * This);
  8009. HRESULT ( STDMETHODCALLTYPE *Wait )(
  8010. ISynchronizeMutex * This,
  8011. /* [in] */ DWORD dwFlags,
  8012. /* [in] */ DWORD dwMilliseconds);
  8013. HRESULT ( STDMETHODCALLTYPE *Signal )(
  8014. ISynchronizeMutex * This);
  8015. HRESULT ( STDMETHODCALLTYPE *Reset )(
  8016. ISynchronizeMutex * This);
  8017. HRESULT ( STDMETHODCALLTYPE *ReleaseMutex )(
  8018. ISynchronizeMutex * This);
  8019. END_INTERFACE
  8020. } ISynchronizeMutexVtbl;
  8021. interface ISynchronizeMutex
  8022. {
  8023. CONST_VTBL struct ISynchronizeMutexVtbl *lpVtbl;
  8024. };
  8025. #ifdef COBJMACROS
  8026. #define ISynchronizeMutex_QueryInterface(This,riid,ppvObject) \
  8027. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  8028. #define ISynchronizeMutex_AddRef(This) \
  8029. (This)->lpVtbl -> AddRef(This)
  8030. #define ISynchronizeMutex_Release(This) \
  8031. (This)->lpVtbl -> Release(This)
  8032. #define ISynchronizeMutex_Wait(This,dwFlags,dwMilliseconds) \
  8033. (This)->lpVtbl -> Wait(This,dwFlags,dwMilliseconds)
  8034. #define ISynchronizeMutex_Signal(This) \
  8035. (This)->lpVtbl -> Signal(This)
  8036. #define ISynchronizeMutex_Reset(This) \
  8037. (This)->lpVtbl -> Reset(This)
  8038. #define ISynchronizeMutex_ReleaseMutex(This) \
  8039. (This)->lpVtbl -> ReleaseMutex(This)
  8040. #endif /* COBJMACROS */
  8041. #endif /* C style interface */
  8042. HRESULT STDMETHODCALLTYPE ISynchronizeMutex_ReleaseMutex_Proxy(
  8043. ISynchronizeMutex * This);
  8044. void __RPC_STUB ISynchronizeMutex_ReleaseMutex_Stub(
  8045. IRpcStubBuffer *This,
  8046. IRpcChannelBuffer *_pRpcChannelBuffer,
  8047. PRPC_MESSAGE _pRpcMessage,
  8048. DWORD *_pdwStubPhase);
  8049. #endif /* __ISynchronizeMutex_INTERFACE_DEFINED__ */
  8050. #ifndef __ICancelMethodCalls_INTERFACE_DEFINED__
  8051. #define __ICancelMethodCalls_INTERFACE_DEFINED__
  8052. /* interface ICancelMethodCalls */
  8053. /* [uuid][object][local] */
  8054. typedef /* [unique] */ ICancelMethodCalls *LPCANCELMETHODCALLS;
  8055. EXTERN_C const IID IID_ICancelMethodCalls;
  8056. #if defined(__cplusplus) && !defined(CINTERFACE)
  8057. MIDL_INTERFACE("00000029-0000-0000-C000-000000000046")
  8058. ICancelMethodCalls : public IUnknown
  8059. {
  8060. public:
  8061. virtual HRESULT STDMETHODCALLTYPE Cancel(
  8062. /* [in] */ ULONG ulSeconds) = 0;
  8063. virtual HRESULT STDMETHODCALLTYPE TestCancel( void) = 0;
  8064. };
  8065. #else /* C style interface */
  8066. typedef struct ICancelMethodCallsVtbl
  8067. {
  8068. BEGIN_INTERFACE
  8069. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  8070. ICancelMethodCalls * This,
  8071. /* [in] */ REFIID riid,
  8072. /* [iid_is][out] */ void **ppvObject);
  8073. ULONG ( STDMETHODCALLTYPE *AddRef )(
  8074. ICancelMethodCalls * This);
  8075. ULONG ( STDMETHODCALLTYPE *Release )(
  8076. ICancelMethodCalls * This);
  8077. HRESULT ( STDMETHODCALLTYPE *Cancel )(
  8078. ICancelMethodCalls * This,
  8079. /* [in] */ ULONG ulSeconds);
  8080. HRESULT ( STDMETHODCALLTYPE *TestCancel )(
  8081. ICancelMethodCalls * This);
  8082. END_INTERFACE
  8083. } ICancelMethodCallsVtbl;
  8084. interface ICancelMethodCalls
  8085. {
  8086. CONST_VTBL struct ICancelMethodCallsVtbl *lpVtbl;
  8087. };
  8088. #ifdef COBJMACROS
  8089. #define ICancelMethodCalls_QueryInterface(This,riid,ppvObject) \
  8090. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  8091. #define ICancelMethodCalls_AddRef(This) \
  8092. (This)->lpVtbl -> AddRef(This)
  8093. #define ICancelMethodCalls_Release(This) \
  8094. (This)->lpVtbl -> Release(This)
  8095. #define ICancelMethodCalls_Cancel(This,ulSeconds) \
  8096. (This)->lpVtbl -> Cancel(This,ulSeconds)
  8097. #define ICancelMethodCalls_TestCancel(This) \
  8098. (This)->lpVtbl -> TestCancel(This)
  8099. #endif /* COBJMACROS */
  8100. #endif /* C style interface */
  8101. HRESULT STDMETHODCALLTYPE ICancelMethodCalls_Cancel_Proxy(
  8102. ICancelMethodCalls * This,
  8103. /* [in] */ ULONG ulSeconds);
  8104. void __RPC_STUB ICancelMethodCalls_Cancel_Stub(
  8105. IRpcStubBuffer *This,
  8106. IRpcChannelBuffer *_pRpcChannelBuffer,
  8107. PRPC_MESSAGE _pRpcMessage,
  8108. DWORD *_pdwStubPhase);
  8109. HRESULT STDMETHODCALLTYPE ICancelMethodCalls_TestCancel_Proxy(
  8110. ICancelMethodCalls * This);
  8111. void __RPC_STUB ICancelMethodCalls_TestCancel_Stub(
  8112. IRpcStubBuffer *This,
  8113. IRpcChannelBuffer *_pRpcChannelBuffer,
  8114. PRPC_MESSAGE _pRpcMessage,
  8115. DWORD *_pdwStubPhase);
  8116. #endif /* __ICancelMethodCalls_INTERFACE_DEFINED__ */
  8117. #ifndef __IAsyncManager_INTERFACE_DEFINED__
  8118. #define __IAsyncManager_INTERFACE_DEFINED__
  8119. /* interface IAsyncManager */
  8120. /* [uuid][object][local] */
  8121. typedef
  8122. enum tagDCOM_CALL_STATE
  8123. { DCOM_NONE = 0,
  8124. DCOM_CALL_COMPLETE = 0x1,
  8125. DCOM_CALL_CANCELED = 0x2
  8126. } DCOM_CALL_STATE;
  8127. EXTERN_C const IID IID_IAsyncManager;
  8128. #if defined(__cplusplus) && !defined(CINTERFACE)
  8129. MIDL_INTERFACE("0000002A-0000-0000-C000-000000000046")
  8130. IAsyncManager : public IUnknown
  8131. {
  8132. public:
  8133. virtual HRESULT STDMETHODCALLTYPE CompleteCall(
  8134. /* [in] */ HRESULT Result) = 0;
  8135. virtual HRESULT STDMETHODCALLTYPE GetCallContext(
  8136. /* [in] */ REFIID riid,
  8137. /* [out] */ void **pInterface) = 0;
  8138. virtual HRESULT STDMETHODCALLTYPE GetState(
  8139. /* [out] */ ULONG *pulStateFlags) = 0;
  8140. };
  8141. #else /* C style interface */
  8142. typedef struct IAsyncManagerVtbl
  8143. {
  8144. BEGIN_INTERFACE
  8145. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  8146. IAsyncManager * This,
  8147. /* [in] */ REFIID riid,
  8148. /* [iid_is][out] */ void **ppvObject);
  8149. ULONG ( STDMETHODCALLTYPE *AddRef )(
  8150. IAsyncManager * This);
  8151. ULONG ( STDMETHODCALLTYPE *Release )(
  8152. IAsyncManager * This);
  8153. HRESULT ( STDMETHODCALLTYPE *CompleteCall )(
  8154. IAsyncManager * This,
  8155. /* [in] */ HRESULT Result);
  8156. HRESULT ( STDMETHODCALLTYPE *GetCallContext )(
  8157. IAsyncManager * This,
  8158. /* [in] */ REFIID riid,
  8159. /* [out] */ void **pInterface);
  8160. HRESULT ( STDMETHODCALLTYPE *GetState )(
  8161. IAsyncManager * This,
  8162. /* [out] */ ULONG *pulStateFlags);
  8163. END_INTERFACE
  8164. } IAsyncManagerVtbl;
  8165. interface IAsyncManager
  8166. {
  8167. CONST_VTBL struct IAsyncManagerVtbl *lpVtbl;
  8168. };
  8169. #ifdef COBJMACROS
  8170. #define IAsyncManager_QueryInterface(This,riid,ppvObject) \
  8171. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  8172. #define IAsyncManager_AddRef(This) \
  8173. (This)->lpVtbl -> AddRef(This)
  8174. #define IAsyncManager_Release(This) \
  8175. (This)->lpVtbl -> Release(This)
  8176. #define IAsyncManager_CompleteCall(This,Result) \
  8177. (This)->lpVtbl -> CompleteCall(This,Result)
  8178. #define IAsyncManager_GetCallContext(This,riid,pInterface) \
  8179. (This)->lpVtbl -> GetCallContext(This,riid,pInterface)
  8180. #define IAsyncManager_GetState(This,pulStateFlags) \
  8181. (This)->lpVtbl -> GetState(This,pulStateFlags)
  8182. #endif /* COBJMACROS */
  8183. #endif /* C style interface */
  8184. HRESULT STDMETHODCALLTYPE IAsyncManager_CompleteCall_Proxy(
  8185. IAsyncManager * This,
  8186. /* [in] */ HRESULT Result);
  8187. void __RPC_STUB IAsyncManager_CompleteCall_Stub(
  8188. IRpcStubBuffer *This,
  8189. IRpcChannelBuffer *_pRpcChannelBuffer,
  8190. PRPC_MESSAGE _pRpcMessage,
  8191. DWORD *_pdwStubPhase);
  8192. HRESULT STDMETHODCALLTYPE IAsyncManager_GetCallContext_Proxy(
  8193. IAsyncManager * This,
  8194. /* [in] */ REFIID riid,
  8195. /* [out] */ void **pInterface);
  8196. void __RPC_STUB IAsyncManager_GetCallContext_Stub(
  8197. IRpcStubBuffer *This,
  8198. IRpcChannelBuffer *_pRpcChannelBuffer,
  8199. PRPC_MESSAGE _pRpcMessage,
  8200. DWORD *_pdwStubPhase);
  8201. HRESULT STDMETHODCALLTYPE IAsyncManager_GetState_Proxy(
  8202. IAsyncManager * This,
  8203. /* [out] */ ULONG *pulStateFlags);
  8204. void __RPC_STUB IAsyncManager_GetState_Stub(
  8205. IRpcStubBuffer *This,
  8206. IRpcChannelBuffer *_pRpcChannelBuffer,
  8207. PRPC_MESSAGE _pRpcMessage,
  8208. DWORD *_pdwStubPhase);
  8209. #endif /* __IAsyncManager_INTERFACE_DEFINED__ */
  8210. #ifndef __ICallFactory_INTERFACE_DEFINED__
  8211. #define __ICallFactory_INTERFACE_DEFINED__
  8212. /* interface ICallFactory */
  8213. /* [unique][uuid][object][local] */
  8214. EXTERN_C const IID IID_ICallFactory;
  8215. #if defined(__cplusplus) && !defined(CINTERFACE)
  8216. MIDL_INTERFACE("1c733a30-2a1c-11ce-ade5-00aa0044773d")
  8217. ICallFactory : public IUnknown
  8218. {
  8219. public:
  8220. virtual HRESULT STDMETHODCALLTYPE CreateCall(
  8221. /* [in] */ REFIID riid,
  8222. /* [in] */ IUnknown *pCtrlUnk,
  8223. /* [in] */ REFIID riid2,
  8224. /* [iid_is][out] */ IUnknown **ppv) = 0;
  8225. };
  8226. #else /* C style interface */
  8227. typedef struct ICallFactoryVtbl
  8228. {
  8229. BEGIN_INTERFACE
  8230. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  8231. ICallFactory * This,
  8232. /* [in] */ REFIID riid,
  8233. /* [iid_is][out] */ void **ppvObject);
  8234. ULONG ( STDMETHODCALLTYPE *AddRef )(
  8235. ICallFactory * This);
  8236. ULONG ( STDMETHODCALLTYPE *Release )(
  8237. ICallFactory * This);
  8238. HRESULT ( STDMETHODCALLTYPE *CreateCall )(
  8239. ICallFactory * This,
  8240. /* [in] */ REFIID riid,
  8241. /* [in] */ IUnknown *pCtrlUnk,
  8242. /* [in] */ REFIID riid2,
  8243. /* [iid_is][out] */ IUnknown **ppv);
  8244. END_INTERFACE
  8245. } ICallFactoryVtbl;
  8246. interface ICallFactory
  8247. {
  8248. CONST_VTBL struct ICallFactoryVtbl *lpVtbl;
  8249. };
  8250. #ifdef COBJMACROS
  8251. #define ICallFactory_QueryInterface(This,riid,ppvObject) \
  8252. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  8253. #define ICallFactory_AddRef(This) \
  8254. (This)->lpVtbl -> AddRef(This)
  8255. #define ICallFactory_Release(This) \
  8256. (This)->lpVtbl -> Release(This)
  8257. #define ICallFactory_CreateCall(This,riid,pCtrlUnk,riid2,ppv) \
  8258. (This)->lpVtbl -> CreateCall(This,riid,pCtrlUnk,riid2,ppv)
  8259. #endif /* COBJMACROS */
  8260. #endif /* C style interface */
  8261. HRESULT STDMETHODCALLTYPE ICallFactory_CreateCall_Proxy(
  8262. ICallFactory * This,
  8263. /* [in] */ REFIID riid,
  8264. /* [in] */ IUnknown *pCtrlUnk,
  8265. /* [in] */ REFIID riid2,
  8266. /* [iid_is][out] */ IUnknown **ppv);
  8267. void __RPC_STUB ICallFactory_CreateCall_Stub(
  8268. IRpcStubBuffer *This,
  8269. IRpcChannelBuffer *_pRpcChannelBuffer,
  8270. PRPC_MESSAGE _pRpcMessage,
  8271. DWORD *_pdwStubPhase);
  8272. #endif /* __ICallFactory_INTERFACE_DEFINED__ */
  8273. #ifndef __IRpcHelper_INTERFACE_DEFINED__
  8274. #define __IRpcHelper_INTERFACE_DEFINED__
  8275. /* interface IRpcHelper */
  8276. /* [object][local][unique][version][uuid] */
  8277. EXTERN_C const IID IID_IRpcHelper;
  8278. #if defined(__cplusplus) && !defined(CINTERFACE)
  8279. MIDL_INTERFACE("00000149-0000-0000-C000-000000000046")
  8280. IRpcHelper : public IUnknown
  8281. {
  8282. public:
  8283. virtual HRESULT STDMETHODCALLTYPE GetDCOMProtocolVersion(
  8284. /* [out] */ DWORD *pComVersion) = 0;
  8285. virtual HRESULT STDMETHODCALLTYPE GetIIDFromOBJREF(
  8286. /* [in] */ void *pObjRef,
  8287. /* [out] */ IID **piid) = 0;
  8288. };
  8289. #else /* C style interface */
  8290. typedef struct IRpcHelperVtbl
  8291. {
  8292. BEGIN_INTERFACE
  8293. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  8294. IRpcHelper * This,
  8295. /* [in] */ REFIID riid,
  8296. /* [iid_is][out] */ void **ppvObject);
  8297. ULONG ( STDMETHODCALLTYPE *AddRef )(
  8298. IRpcHelper * This);
  8299. ULONG ( STDMETHODCALLTYPE *Release )(
  8300. IRpcHelper * This);
  8301. HRESULT ( STDMETHODCALLTYPE *GetDCOMProtocolVersion )(
  8302. IRpcHelper * This,
  8303. /* [out] */ DWORD *pComVersion);
  8304. HRESULT ( STDMETHODCALLTYPE *GetIIDFromOBJREF )(
  8305. IRpcHelper * This,
  8306. /* [in] */ void *pObjRef,
  8307. /* [out] */ IID **piid);
  8308. END_INTERFACE
  8309. } IRpcHelperVtbl;
  8310. interface IRpcHelper
  8311. {
  8312. CONST_VTBL struct IRpcHelperVtbl *lpVtbl;
  8313. };
  8314. #ifdef COBJMACROS
  8315. #define IRpcHelper_QueryInterface(This,riid,ppvObject) \
  8316. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  8317. #define IRpcHelper_AddRef(This) \
  8318. (This)->lpVtbl -> AddRef(This)
  8319. #define IRpcHelper_Release(This) \
  8320. (This)->lpVtbl -> Release(This)
  8321. #define IRpcHelper_GetDCOMProtocolVersion(This,pComVersion) \
  8322. (This)->lpVtbl -> GetDCOMProtocolVersion(This,pComVersion)
  8323. #define IRpcHelper_GetIIDFromOBJREF(This,pObjRef,piid) \
  8324. (This)->lpVtbl -> GetIIDFromOBJREF(This,pObjRef,piid)
  8325. #endif /* COBJMACROS */
  8326. #endif /* C style interface */
  8327. HRESULT STDMETHODCALLTYPE IRpcHelper_GetDCOMProtocolVersion_Proxy(
  8328. IRpcHelper * This,
  8329. /* [out] */ DWORD *pComVersion);
  8330. void __RPC_STUB IRpcHelper_GetDCOMProtocolVersion_Stub(
  8331. IRpcStubBuffer *This,
  8332. IRpcChannelBuffer *_pRpcChannelBuffer,
  8333. PRPC_MESSAGE _pRpcMessage,
  8334. DWORD *_pdwStubPhase);
  8335. HRESULT STDMETHODCALLTYPE IRpcHelper_GetIIDFromOBJREF_Proxy(
  8336. IRpcHelper * This,
  8337. /* [in] */ void *pObjRef,
  8338. /* [out] */ IID **piid);
  8339. void __RPC_STUB IRpcHelper_GetIIDFromOBJREF_Stub(
  8340. IRpcStubBuffer *This,
  8341. IRpcChannelBuffer *_pRpcChannelBuffer,
  8342. PRPC_MESSAGE _pRpcMessage,
  8343. DWORD *_pdwStubPhase);
  8344. #endif /* __IRpcHelper_INTERFACE_DEFINED__ */
  8345. #ifndef __IReleaseMarshalBuffers_INTERFACE_DEFINED__
  8346. #define __IReleaseMarshalBuffers_INTERFACE_DEFINED__
  8347. /* interface IReleaseMarshalBuffers */
  8348. /* [uuid][object][local] */
  8349. EXTERN_C const IID IID_IReleaseMarshalBuffers;
  8350. #if defined(__cplusplus) && !defined(CINTERFACE)
  8351. MIDL_INTERFACE("eb0cb9e8-7996-11d2-872e-0000f8080859")
  8352. IReleaseMarshalBuffers : public IUnknown
  8353. {
  8354. public:
  8355. virtual HRESULT STDMETHODCALLTYPE ReleaseMarshalBuffer(
  8356. /* [in] */ RPCOLEMESSAGE *pMsg,
  8357. /* [in] */ DWORD dwFlags,
  8358. /* [unique][in] */ IUnknown *pChnl) = 0;
  8359. };
  8360. #else /* C style interface */
  8361. typedef struct IReleaseMarshalBuffersVtbl
  8362. {
  8363. BEGIN_INTERFACE
  8364. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  8365. IReleaseMarshalBuffers * This,
  8366. /* [in] */ REFIID riid,
  8367. /* [iid_is][out] */ void **ppvObject);
  8368. ULONG ( STDMETHODCALLTYPE *AddRef )(
  8369. IReleaseMarshalBuffers * This);
  8370. ULONG ( STDMETHODCALLTYPE *Release )(
  8371. IReleaseMarshalBuffers * This);
  8372. HRESULT ( STDMETHODCALLTYPE *ReleaseMarshalBuffer )(
  8373. IReleaseMarshalBuffers * This,
  8374. /* [in] */ RPCOLEMESSAGE *pMsg,
  8375. /* [in] */ DWORD dwFlags,
  8376. /* [unique][in] */ IUnknown *pChnl);
  8377. END_INTERFACE
  8378. } IReleaseMarshalBuffersVtbl;
  8379. interface IReleaseMarshalBuffers
  8380. {
  8381. CONST_VTBL struct IReleaseMarshalBuffersVtbl *lpVtbl;
  8382. };
  8383. #ifdef COBJMACROS
  8384. #define IReleaseMarshalBuffers_QueryInterface(This,riid,ppvObject) \
  8385. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  8386. #define IReleaseMarshalBuffers_AddRef(This) \
  8387. (This)->lpVtbl -> AddRef(This)
  8388. #define IReleaseMarshalBuffers_Release(This) \
  8389. (This)->lpVtbl -> Release(This)
  8390. #define IReleaseMarshalBuffers_ReleaseMarshalBuffer(This,pMsg,dwFlags,pChnl) \
  8391. (This)->lpVtbl -> ReleaseMarshalBuffer(This,pMsg,dwFlags,pChnl)
  8392. #endif /* COBJMACROS */
  8393. #endif /* C style interface */
  8394. HRESULT STDMETHODCALLTYPE IReleaseMarshalBuffers_ReleaseMarshalBuffer_Proxy(
  8395. IReleaseMarshalBuffers * This,
  8396. /* [in] */ RPCOLEMESSAGE *pMsg,
  8397. /* [in] */ DWORD dwFlags,
  8398. /* [unique][in] */ IUnknown *pChnl);
  8399. void __RPC_STUB IReleaseMarshalBuffers_ReleaseMarshalBuffer_Stub(
  8400. IRpcStubBuffer *This,
  8401. IRpcChannelBuffer *_pRpcChannelBuffer,
  8402. PRPC_MESSAGE _pRpcMessage,
  8403. DWORD *_pdwStubPhase);
  8404. #endif /* __IReleaseMarshalBuffers_INTERFACE_DEFINED__ */
  8405. #ifndef __IWaitMultiple_INTERFACE_DEFINED__
  8406. #define __IWaitMultiple_INTERFACE_DEFINED__
  8407. /* interface IWaitMultiple */
  8408. /* [uuid][object][local] */
  8409. EXTERN_C const IID IID_IWaitMultiple;
  8410. #if defined(__cplusplus) && !defined(CINTERFACE)
  8411. MIDL_INTERFACE("0000002B-0000-0000-C000-000000000046")
  8412. IWaitMultiple : public IUnknown
  8413. {
  8414. public:
  8415. virtual HRESULT STDMETHODCALLTYPE WaitMultiple(
  8416. /* [in] */ DWORD timeout,
  8417. /* [out] */ ISynchronize **pSync) = 0;
  8418. virtual HRESULT STDMETHODCALLTYPE AddSynchronize(
  8419. /* [in] */ ISynchronize *pSync) = 0;
  8420. };
  8421. #else /* C style interface */
  8422. typedef struct IWaitMultipleVtbl
  8423. {
  8424. BEGIN_INTERFACE
  8425. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  8426. IWaitMultiple * This,
  8427. /* [in] */ REFIID riid,
  8428. /* [iid_is][out] */ void **ppvObject);
  8429. ULONG ( STDMETHODCALLTYPE *AddRef )(
  8430. IWaitMultiple * This);
  8431. ULONG ( STDMETHODCALLTYPE *Release )(
  8432. IWaitMultiple * This);
  8433. HRESULT ( STDMETHODCALLTYPE *WaitMultiple )(
  8434. IWaitMultiple * This,
  8435. /* [in] */ DWORD timeout,
  8436. /* [out] */ ISynchronize **pSync);
  8437. HRESULT ( STDMETHODCALLTYPE *AddSynchronize )(
  8438. IWaitMultiple * This,
  8439. /* [in] */ ISynchronize *pSync);
  8440. END_INTERFACE
  8441. } IWaitMultipleVtbl;
  8442. interface IWaitMultiple
  8443. {
  8444. CONST_VTBL struct IWaitMultipleVtbl *lpVtbl;
  8445. };
  8446. #ifdef COBJMACROS
  8447. #define IWaitMultiple_QueryInterface(This,riid,ppvObject) \
  8448. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  8449. #define IWaitMultiple_AddRef(This) \
  8450. (This)->lpVtbl -> AddRef(This)
  8451. #define IWaitMultiple_Release(This) \
  8452. (This)->lpVtbl -> Release(This)
  8453. #define IWaitMultiple_WaitMultiple(This,timeout,pSync) \
  8454. (This)->lpVtbl -> WaitMultiple(This,timeout,pSync)
  8455. #define IWaitMultiple_AddSynchronize(This,pSync) \
  8456. (This)->lpVtbl -> AddSynchronize(This,pSync)
  8457. #endif /* COBJMACROS */
  8458. #endif /* C style interface */
  8459. HRESULT STDMETHODCALLTYPE IWaitMultiple_WaitMultiple_Proxy(
  8460. IWaitMultiple * This,
  8461. /* [in] */ DWORD timeout,
  8462. /* [out] */ ISynchronize **pSync);
  8463. void __RPC_STUB IWaitMultiple_WaitMultiple_Stub(
  8464. IRpcStubBuffer *This,
  8465. IRpcChannelBuffer *_pRpcChannelBuffer,
  8466. PRPC_MESSAGE _pRpcMessage,
  8467. DWORD *_pdwStubPhase);
  8468. HRESULT STDMETHODCALLTYPE IWaitMultiple_AddSynchronize_Proxy(
  8469. IWaitMultiple * This,
  8470. /* [in] */ ISynchronize *pSync);
  8471. void __RPC_STUB IWaitMultiple_AddSynchronize_Stub(
  8472. IRpcStubBuffer *This,
  8473. IRpcChannelBuffer *_pRpcChannelBuffer,
  8474. PRPC_MESSAGE _pRpcMessage,
  8475. DWORD *_pdwStubPhase);
  8476. #endif /* __IWaitMultiple_INTERFACE_DEFINED__ */
  8477. #ifndef __IUrlMon_INTERFACE_DEFINED__
  8478. #define __IUrlMon_INTERFACE_DEFINED__
  8479. /* interface IUrlMon */
  8480. /* [uuid][object] */
  8481. EXTERN_C const IID IID_IUrlMon;
  8482. #if defined(__cplusplus) && !defined(CINTERFACE)
  8483. MIDL_INTERFACE("00000026-0000-0000-C000-000000000046")
  8484. IUrlMon : public IUnknown
  8485. {
  8486. public:
  8487. virtual HRESULT STDMETHODCALLTYPE AsyncGetClassBits(
  8488. /* [in] */ REFCLSID rclsid,
  8489. /* [unique][in] */ LPCWSTR pszTYPE,
  8490. /* [unique][in] */ LPCWSTR pszExt,
  8491. /* [in] */ DWORD dwFileVersionMS,
  8492. /* [in] */ DWORD dwFileVersionLS,
  8493. /* [unique][in] */ LPCWSTR pszCodeBase,
  8494. /* [in] */ IBindCtx *pbc,
  8495. /* [in] */ DWORD dwClassContext,
  8496. /* [in] */ REFIID riid,
  8497. /* [in] */ DWORD flags) = 0;
  8498. };
  8499. #else /* C style interface */
  8500. typedef struct IUrlMonVtbl
  8501. {
  8502. BEGIN_INTERFACE
  8503. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  8504. IUrlMon * This,
  8505. /* [in] */ REFIID riid,
  8506. /* [iid_is][out] */ void **ppvObject);
  8507. ULONG ( STDMETHODCALLTYPE *AddRef )(
  8508. IUrlMon * This);
  8509. ULONG ( STDMETHODCALLTYPE *Release )(
  8510. IUrlMon * This);
  8511. HRESULT ( STDMETHODCALLTYPE *AsyncGetClassBits )(
  8512. IUrlMon * This,
  8513. /* [in] */ REFCLSID rclsid,
  8514. /* [unique][in] */ LPCWSTR pszTYPE,
  8515. /* [unique][in] */ LPCWSTR pszExt,
  8516. /* [in] */ DWORD dwFileVersionMS,
  8517. /* [in] */ DWORD dwFileVersionLS,
  8518. /* [unique][in] */ LPCWSTR pszCodeBase,
  8519. /* [in] */ IBindCtx *pbc,
  8520. /* [in] */ DWORD dwClassContext,
  8521. /* [in] */ REFIID riid,
  8522. /* [in] */ DWORD flags);
  8523. END_INTERFACE
  8524. } IUrlMonVtbl;
  8525. interface IUrlMon
  8526. {
  8527. CONST_VTBL struct IUrlMonVtbl *lpVtbl;
  8528. };
  8529. #ifdef COBJMACROS
  8530. #define IUrlMon_QueryInterface(This,riid,ppvObject) \
  8531. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  8532. #define IUrlMon_AddRef(This) \
  8533. (This)->lpVtbl -> AddRef(This)
  8534. #define IUrlMon_Release(This) \
  8535. (This)->lpVtbl -> Release(This)
  8536. #define IUrlMon_AsyncGetClassBits(This,rclsid,pszTYPE,pszExt,dwFileVersionMS,dwFileVersionLS,pszCodeBase,pbc,dwClassContext,riid,flags) \
  8537. (This)->lpVtbl -> AsyncGetClassBits(This,rclsid,pszTYPE,pszExt,dwFileVersionMS,dwFileVersionLS,pszCodeBase,pbc,dwClassContext,riid,flags)
  8538. #endif /* COBJMACROS */
  8539. #endif /* C style interface */
  8540. HRESULT STDMETHODCALLTYPE IUrlMon_AsyncGetClassBits_Proxy(
  8541. IUrlMon * This,
  8542. /* [in] */ REFCLSID rclsid,
  8543. /* [unique][in] */ LPCWSTR pszTYPE,
  8544. /* [unique][in] */ LPCWSTR pszExt,
  8545. /* [in] */ DWORD dwFileVersionMS,
  8546. /* [in] */ DWORD dwFileVersionLS,
  8547. /* [unique][in] */ LPCWSTR pszCodeBase,
  8548. /* [in] */ IBindCtx *pbc,
  8549. /* [in] */ DWORD dwClassContext,
  8550. /* [in] */ REFIID riid,
  8551. /* [in] */ DWORD flags);
  8552. void __RPC_STUB IUrlMon_AsyncGetClassBits_Stub(
  8553. IRpcStubBuffer *This,
  8554. IRpcChannelBuffer *_pRpcChannelBuffer,
  8555. PRPC_MESSAGE _pRpcMessage,
  8556. DWORD *_pdwStubPhase);
  8557. #endif /* __IUrlMon_INTERFACE_DEFINED__ */
  8558. #ifndef __IForegroundTransfer_INTERFACE_DEFINED__
  8559. #define __IForegroundTransfer_INTERFACE_DEFINED__
  8560. /* interface IForegroundTransfer */
  8561. /* [uuid][object][local] */
  8562. EXTERN_C const IID IID_IForegroundTransfer;
  8563. #if defined(__cplusplus) && !defined(CINTERFACE)
  8564. MIDL_INTERFACE("00000145-0000-0000-C000-000000000046")
  8565. IForegroundTransfer : public IUnknown
  8566. {
  8567. public:
  8568. virtual HRESULT STDMETHODCALLTYPE AllowForegroundTransfer(
  8569. /* [in] */ void *lpvReserved) = 0;
  8570. };
  8571. #else /* C style interface */
  8572. typedef struct IForegroundTransferVtbl
  8573. {
  8574. BEGIN_INTERFACE
  8575. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  8576. IForegroundTransfer * This,
  8577. /* [in] */ REFIID riid,
  8578. /* [iid_is][out] */ void **ppvObject);
  8579. ULONG ( STDMETHODCALLTYPE *AddRef )(
  8580. IForegroundTransfer * This);
  8581. ULONG ( STDMETHODCALLTYPE *Release )(
  8582. IForegroundTransfer * This);
  8583. HRESULT ( STDMETHODCALLTYPE *AllowForegroundTransfer )(
  8584. IForegroundTransfer * This,
  8585. /* [in] */ void *lpvReserved);
  8586. END_INTERFACE
  8587. } IForegroundTransferVtbl;
  8588. interface IForegroundTransfer
  8589. {
  8590. CONST_VTBL struct IForegroundTransferVtbl *lpVtbl;
  8591. };
  8592. #ifdef COBJMACROS
  8593. #define IForegroundTransfer_QueryInterface(This,riid,ppvObject) \
  8594. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  8595. #define IForegroundTransfer_AddRef(This) \
  8596. (This)->lpVtbl -> AddRef(This)
  8597. #define IForegroundTransfer_Release(This) \
  8598. (This)->lpVtbl -> Release(This)
  8599. #define IForegroundTransfer_AllowForegroundTransfer(This,lpvReserved) \
  8600. (This)->lpVtbl -> AllowForegroundTransfer(This,lpvReserved)
  8601. #endif /* COBJMACROS */
  8602. #endif /* C style interface */
  8603. HRESULT STDMETHODCALLTYPE IForegroundTransfer_AllowForegroundTransfer_Proxy(
  8604. IForegroundTransfer * This,
  8605. /* [in] */ void *lpvReserved);
  8606. void __RPC_STUB IForegroundTransfer_AllowForegroundTransfer_Stub(
  8607. IRpcStubBuffer *This,
  8608. IRpcChannelBuffer *_pRpcChannelBuffer,
  8609. PRPC_MESSAGE _pRpcMessage,
  8610. DWORD *_pdwStubPhase);
  8611. #endif /* __IForegroundTransfer_INTERFACE_DEFINED__ */
  8612. #ifndef __IAddrTrackingControl_INTERFACE_DEFINED__
  8613. #define __IAddrTrackingControl_INTERFACE_DEFINED__
  8614. /* interface IAddrTrackingControl */
  8615. /* [uuid][object][local] */
  8616. typedef /* [unique] */ IAddrTrackingControl *LPADDRTRACKINGCONTROL;
  8617. EXTERN_C const IID IID_IAddrTrackingControl;
  8618. #if defined(__cplusplus) && !defined(CINTERFACE)
  8619. MIDL_INTERFACE("00000147-0000-0000-C000-000000000046")
  8620. IAddrTrackingControl : public IUnknown
  8621. {
  8622. public:
  8623. virtual HRESULT STDMETHODCALLTYPE EnableCOMDynamicAddrTracking( void) = 0;
  8624. virtual HRESULT STDMETHODCALLTYPE DisableCOMDynamicAddrTracking( void) = 0;
  8625. };
  8626. #else /* C style interface */
  8627. typedef struct IAddrTrackingControlVtbl
  8628. {
  8629. BEGIN_INTERFACE
  8630. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  8631. IAddrTrackingControl * This,
  8632. /* [in] */ REFIID riid,
  8633. /* [iid_is][out] */ void **ppvObject);
  8634. ULONG ( STDMETHODCALLTYPE *AddRef )(
  8635. IAddrTrackingControl * This);
  8636. ULONG ( STDMETHODCALLTYPE *Release )(
  8637. IAddrTrackingControl * This);
  8638. HRESULT ( STDMETHODCALLTYPE *EnableCOMDynamicAddrTracking )(
  8639. IAddrTrackingControl * This);
  8640. HRESULT ( STDMETHODCALLTYPE *DisableCOMDynamicAddrTracking )(
  8641. IAddrTrackingControl * This);
  8642. END_INTERFACE
  8643. } IAddrTrackingControlVtbl;
  8644. interface IAddrTrackingControl
  8645. {
  8646. CONST_VTBL struct IAddrTrackingControlVtbl *lpVtbl;
  8647. };
  8648. #ifdef COBJMACROS
  8649. #define IAddrTrackingControl_QueryInterface(This,riid,ppvObject) \
  8650. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  8651. #define IAddrTrackingControl_AddRef(This) \
  8652. (This)->lpVtbl -> AddRef(This)
  8653. #define IAddrTrackingControl_Release(This) \
  8654. (This)->lpVtbl -> Release(This)
  8655. #define IAddrTrackingControl_EnableCOMDynamicAddrTracking(This) \
  8656. (This)->lpVtbl -> EnableCOMDynamicAddrTracking(This)
  8657. #define IAddrTrackingControl_DisableCOMDynamicAddrTracking(This) \
  8658. (This)->lpVtbl -> DisableCOMDynamicAddrTracking(This)
  8659. #endif /* COBJMACROS */
  8660. #endif /* C style interface */
  8661. HRESULT STDMETHODCALLTYPE IAddrTrackingControl_EnableCOMDynamicAddrTracking_Proxy(
  8662. IAddrTrackingControl * This);
  8663. void __RPC_STUB IAddrTrackingControl_EnableCOMDynamicAddrTracking_Stub(
  8664. IRpcStubBuffer *This,
  8665. IRpcChannelBuffer *_pRpcChannelBuffer,
  8666. PRPC_MESSAGE _pRpcMessage,
  8667. DWORD *_pdwStubPhase);
  8668. HRESULT STDMETHODCALLTYPE IAddrTrackingControl_DisableCOMDynamicAddrTracking_Proxy(
  8669. IAddrTrackingControl * This);
  8670. void __RPC_STUB IAddrTrackingControl_DisableCOMDynamicAddrTracking_Stub(
  8671. IRpcStubBuffer *This,
  8672. IRpcChannelBuffer *_pRpcChannelBuffer,
  8673. PRPC_MESSAGE _pRpcMessage,
  8674. DWORD *_pdwStubPhase);
  8675. #endif /* __IAddrTrackingControl_INTERFACE_DEFINED__ */
  8676. #ifndef __IAddrExclusionControl_INTERFACE_DEFINED__
  8677. #define __IAddrExclusionControl_INTERFACE_DEFINED__
  8678. /* interface IAddrExclusionControl */
  8679. /* [uuid][object][local] */
  8680. typedef /* [unique] */ IAddrExclusionControl *LPADDREXCLUSIONCONTROL;
  8681. EXTERN_C const IID IID_IAddrExclusionControl;
  8682. #if defined(__cplusplus) && !defined(CINTERFACE)
  8683. MIDL_INTERFACE("00000148-0000-0000-C000-000000000046")
  8684. IAddrExclusionControl : public IUnknown
  8685. {
  8686. public:
  8687. virtual HRESULT STDMETHODCALLTYPE GetCurrentAddrExclusionList(
  8688. /* [in] */ REFIID riid,
  8689. /* [iid_is][out] */ void **ppEnumerator) = 0;
  8690. virtual HRESULT STDMETHODCALLTYPE UpdateAddrExclusionList(
  8691. /* [in] */ IUnknown *pEnumerator) = 0;
  8692. };
  8693. #else /* C style interface */
  8694. typedef struct IAddrExclusionControlVtbl
  8695. {
  8696. BEGIN_INTERFACE
  8697. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  8698. IAddrExclusionControl * This,
  8699. /* [in] */ REFIID riid,
  8700. /* [iid_is][out] */ void **ppvObject);
  8701. ULONG ( STDMETHODCALLTYPE *AddRef )(
  8702. IAddrExclusionControl * This);
  8703. ULONG ( STDMETHODCALLTYPE *Release )(
  8704. IAddrExclusionControl * This);
  8705. HRESULT ( STDMETHODCALLTYPE *GetCurrentAddrExclusionList )(
  8706. IAddrExclusionControl * This,
  8707. /* [in] */ REFIID riid,
  8708. /* [iid_is][out] */ void **ppEnumerator);
  8709. HRESULT ( STDMETHODCALLTYPE *UpdateAddrExclusionList )(
  8710. IAddrExclusionControl * This,
  8711. /* [in] */ IUnknown *pEnumerator);
  8712. END_INTERFACE
  8713. } IAddrExclusionControlVtbl;
  8714. interface IAddrExclusionControl
  8715. {
  8716. CONST_VTBL struct IAddrExclusionControlVtbl *lpVtbl;
  8717. };
  8718. #ifdef COBJMACROS
  8719. #define IAddrExclusionControl_QueryInterface(This,riid,ppvObject) \
  8720. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  8721. #define IAddrExclusionControl_AddRef(This) \
  8722. (This)->lpVtbl -> AddRef(This)
  8723. #define IAddrExclusionControl_Release(This) \
  8724. (This)->lpVtbl -> Release(This)
  8725. #define IAddrExclusionControl_GetCurrentAddrExclusionList(This,riid,ppEnumerator) \
  8726. (This)->lpVtbl -> GetCurrentAddrExclusionList(This,riid,ppEnumerator)
  8727. #define IAddrExclusionControl_UpdateAddrExclusionList(This,pEnumerator) \
  8728. (This)->lpVtbl -> UpdateAddrExclusionList(This,pEnumerator)
  8729. #endif /* COBJMACROS */
  8730. #endif /* C style interface */
  8731. HRESULT STDMETHODCALLTYPE IAddrExclusionControl_GetCurrentAddrExclusionList_Proxy(
  8732. IAddrExclusionControl * This,
  8733. /* [in] */ REFIID riid,
  8734. /* [iid_is][out] */ void **ppEnumerator);
  8735. void __RPC_STUB IAddrExclusionControl_GetCurrentAddrExclusionList_Stub(
  8736. IRpcStubBuffer *This,
  8737. IRpcChannelBuffer *_pRpcChannelBuffer,
  8738. PRPC_MESSAGE _pRpcMessage,
  8739. DWORD *_pdwStubPhase);
  8740. HRESULT STDMETHODCALLTYPE IAddrExclusionControl_UpdateAddrExclusionList_Proxy(
  8741. IAddrExclusionControl * This,
  8742. /* [in] */ IUnknown *pEnumerator);
  8743. void __RPC_STUB IAddrExclusionControl_UpdateAddrExclusionList_Stub(
  8744. IRpcStubBuffer *This,
  8745. IRpcChannelBuffer *_pRpcChannelBuffer,
  8746. PRPC_MESSAGE _pRpcMessage,
  8747. DWORD *_pdwStubPhase);
  8748. #endif /* __IAddrExclusionControl_INTERFACE_DEFINED__ */
  8749. #ifndef __IPipeByte_INTERFACE_DEFINED__
  8750. #define __IPipeByte_INTERFACE_DEFINED__
  8751. /* interface IPipeByte */
  8752. /* [unique][async_uuid][uuid][object] */
  8753. EXTERN_C const IID IID_IPipeByte;
  8754. #if defined(__cplusplus) && !defined(CINTERFACE)
  8755. MIDL_INTERFACE("DB2F3ACA-2F86-11d1-8E04-00C04FB9989A")
  8756. IPipeByte : public IUnknown
  8757. {
  8758. public:
  8759. virtual HRESULT STDMETHODCALLTYPE Pull(
  8760. /* [length_is][size_is][out] */ BYTE *buf,
  8761. /* [in] */ ULONG cRequest,
  8762. /* [out] */ ULONG *pcReturned) = 0;
  8763. virtual HRESULT STDMETHODCALLTYPE Push(
  8764. /* [size_is][in] */ BYTE *buf,
  8765. /* [in] */ ULONG cSent) = 0;
  8766. };
  8767. #else /* C style interface */
  8768. typedef struct IPipeByteVtbl
  8769. {
  8770. BEGIN_INTERFACE
  8771. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  8772. IPipeByte * This,
  8773. /* [in] */ REFIID riid,
  8774. /* [iid_is][out] */ void **ppvObject);
  8775. ULONG ( STDMETHODCALLTYPE *AddRef )(
  8776. IPipeByte * This);
  8777. ULONG ( STDMETHODCALLTYPE *Release )(
  8778. IPipeByte * This);
  8779. HRESULT ( STDMETHODCALLTYPE *Pull )(
  8780. IPipeByte * This,
  8781. /* [length_is][size_is][out] */ BYTE *buf,
  8782. /* [in] */ ULONG cRequest,
  8783. /* [out] */ ULONG *pcReturned);
  8784. HRESULT ( STDMETHODCALLTYPE *Push )(
  8785. IPipeByte * This,
  8786. /* [size_is][in] */ BYTE *buf,
  8787. /* [in] */ ULONG cSent);
  8788. END_INTERFACE
  8789. } IPipeByteVtbl;
  8790. interface IPipeByte
  8791. {
  8792. CONST_VTBL struct IPipeByteVtbl *lpVtbl;
  8793. };
  8794. #ifdef COBJMACROS
  8795. #define IPipeByte_QueryInterface(This,riid,ppvObject) \
  8796. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  8797. #define IPipeByte_AddRef(This) \
  8798. (This)->lpVtbl -> AddRef(This)
  8799. #define IPipeByte_Release(This) \
  8800. (This)->lpVtbl -> Release(This)
  8801. #define IPipeByte_Pull(This,buf,cRequest,pcReturned) \
  8802. (This)->lpVtbl -> Pull(This,buf,cRequest,pcReturned)
  8803. #define IPipeByte_Push(This,buf,cSent) \
  8804. (This)->lpVtbl -> Push(This,buf,cSent)
  8805. #endif /* COBJMACROS */
  8806. #endif /* C style interface */
  8807. HRESULT STDMETHODCALLTYPE IPipeByte_Pull_Proxy(
  8808. IPipeByte * This,
  8809. /* [length_is][size_is][out] */ BYTE *buf,
  8810. /* [in] */ ULONG cRequest,
  8811. /* [out] */ ULONG *pcReturned);
  8812. void __RPC_STUB IPipeByte_Pull_Stub(
  8813. IRpcStubBuffer *This,
  8814. IRpcChannelBuffer *_pRpcChannelBuffer,
  8815. PRPC_MESSAGE _pRpcMessage,
  8816. DWORD *_pdwStubPhase);
  8817. HRESULT STDMETHODCALLTYPE IPipeByte_Push_Proxy(
  8818. IPipeByte * This,
  8819. /* [size_is][in] */ BYTE *buf,
  8820. /* [in] */ ULONG cSent);
  8821. void __RPC_STUB IPipeByte_Push_Stub(
  8822. IRpcStubBuffer *This,
  8823. IRpcChannelBuffer *_pRpcChannelBuffer,
  8824. PRPC_MESSAGE _pRpcMessage,
  8825. DWORD *_pdwStubPhase);
  8826. #endif /* __IPipeByte_INTERFACE_DEFINED__ */
  8827. #ifndef __AsyncIPipeByte_INTERFACE_DEFINED__
  8828. #define __AsyncIPipeByte_INTERFACE_DEFINED__
  8829. /* interface AsyncIPipeByte */
  8830. /* [uuid][unique][object] */
  8831. EXTERN_C const IID IID_AsyncIPipeByte;
  8832. #if defined(__cplusplus) && !defined(CINTERFACE)
  8833. MIDL_INTERFACE("DB2F3ACB-2F86-11d1-8E04-00C04FB9989A")
  8834. AsyncIPipeByte : public IUnknown
  8835. {
  8836. public:
  8837. virtual HRESULT STDMETHODCALLTYPE Begin_Pull(
  8838. /* [in] */ ULONG cRequest) = 0;
  8839. virtual HRESULT STDMETHODCALLTYPE Finish_Pull(
  8840. /* [length_is][size_is][out] */ BYTE *buf,
  8841. /* [out] */ ULONG *pcReturned) = 0;
  8842. virtual HRESULT STDMETHODCALLTYPE Begin_Push(
  8843. /* [size_is][in] */ BYTE *buf,
  8844. /* [in] */ ULONG cSent) = 0;
  8845. virtual HRESULT STDMETHODCALLTYPE Finish_Push( void) = 0;
  8846. };
  8847. #else /* C style interface */
  8848. typedef struct AsyncIPipeByteVtbl
  8849. {
  8850. BEGIN_INTERFACE
  8851. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  8852. AsyncIPipeByte * This,
  8853. /* [in] */ REFIID riid,
  8854. /* [iid_is][out] */ void **ppvObject);
  8855. ULONG ( STDMETHODCALLTYPE *AddRef )(
  8856. AsyncIPipeByte * This);
  8857. ULONG ( STDMETHODCALLTYPE *Release )(
  8858. AsyncIPipeByte * This);
  8859. HRESULT ( STDMETHODCALLTYPE *Begin_Pull )(
  8860. AsyncIPipeByte * This,
  8861. /* [in] */ ULONG cRequest);
  8862. HRESULT ( STDMETHODCALLTYPE *Finish_Pull )(
  8863. AsyncIPipeByte * This,
  8864. /* [length_is][size_is][out] */ BYTE *buf,
  8865. /* [out] */ ULONG *pcReturned);
  8866. HRESULT ( STDMETHODCALLTYPE *Begin_Push )(
  8867. AsyncIPipeByte * This,
  8868. /* [size_is][in] */ BYTE *buf,
  8869. /* [in] */ ULONG cSent);
  8870. HRESULT ( STDMETHODCALLTYPE *Finish_Push )(
  8871. AsyncIPipeByte * This);
  8872. END_INTERFACE
  8873. } AsyncIPipeByteVtbl;
  8874. interface AsyncIPipeByte
  8875. {
  8876. CONST_VTBL struct AsyncIPipeByteVtbl *lpVtbl;
  8877. };
  8878. #ifdef COBJMACROS
  8879. #define AsyncIPipeByte_QueryInterface(This,riid,ppvObject) \
  8880. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  8881. #define AsyncIPipeByte_AddRef(This) \
  8882. (This)->lpVtbl -> AddRef(This)
  8883. #define AsyncIPipeByte_Release(This) \
  8884. (This)->lpVtbl -> Release(This)
  8885. #define AsyncIPipeByte_Begin_Pull(This,cRequest) \
  8886. (This)->lpVtbl -> Begin_Pull(This,cRequest)
  8887. #define AsyncIPipeByte_Finish_Pull(This,buf,pcReturned) \
  8888. (This)->lpVtbl -> Finish_Pull(This,buf,pcReturned)
  8889. #define AsyncIPipeByte_Begin_Push(This,buf,cSent) \
  8890. (This)->lpVtbl -> Begin_Push(This,buf,cSent)
  8891. #define AsyncIPipeByte_Finish_Push(This) \
  8892. (This)->lpVtbl -> Finish_Push(This)
  8893. #endif /* COBJMACROS */
  8894. #endif /* C style interface */
  8895. HRESULT STDMETHODCALLTYPE AsyncIPipeByte_Begin_Pull_Proxy(
  8896. AsyncIPipeByte * This,
  8897. /* [in] */ ULONG cRequest);
  8898. void __RPC_STUB AsyncIPipeByte_Begin_Pull_Stub(
  8899. IRpcStubBuffer *This,
  8900. IRpcChannelBuffer *_pRpcChannelBuffer,
  8901. PRPC_MESSAGE _pRpcMessage,
  8902. DWORD *_pdwStubPhase);
  8903. HRESULT STDMETHODCALLTYPE AsyncIPipeByte_Finish_Pull_Proxy(
  8904. AsyncIPipeByte * This,
  8905. /* [length_is][size_is][out] */ BYTE *buf,
  8906. /* [out] */ ULONG *pcReturned);
  8907. void __RPC_STUB AsyncIPipeByte_Finish_Pull_Stub(
  8908. IRpcStubBuffer *This,
  8909. IRpcChannelBuffer *_pRpcChannelBuffer,
  8910. PRPC_MESSAGE _pRpcMessage,
  8911. DWORD *_pdwStubPhase);
  8912. HRESULT STDMETHODCALLTYPE AsyncIPipeByte_Begin_Push_Proxy(
  8913. AsyncIPipeByte * This,
  8914. /* [size_is][in] */ BYTE *buf,
  8915. /* [in] */ ULONG cSent);
  8916. void __RPC_STUB AsyncIPipeByte_Begin_Push_Stub(
  8917. IRpcStubBuffer *This,
  8918. IRpcChannelBuffer *_pRpcChannelBuffer,
  8919. PRPC_MESSAGE _pRpcMessage,
  8920. DWORD *_pdwStubPhase);
  8921. HRESULT STDMETHODCALLTYPE AsyncIPipeByte_Finish_Push_Proxy(
  8922. AsyncIPipeByte * This);
  8923. void __RPC_STUB AsyncIPipeByte_Finish_Push_Stub(
  8924. IRpcStubBuffer *This,
  8925. IRpcChannelBuffer *_pRpcChannelBuffer,
  8926. PRPC_MESSAGE _pRpcMessage,
  8927. DWORD *_pdwStubPhase);
  8928. #endif /* __AsyncIPipeByte_INTERFACE_DEFINED__ */
  8929. #ifndef __IPipeLong_INTERFACE_DEFINED__
  8930. #define __IPipeLong_INTERFACE_DEFINED__
  8931. /* interface IPipeLong */
  8932. /* [unique][async_uuid][uuid][object] */
  8933. EXTERN_C const IID IID_IPipeLong;
  8934. #if defined(__cplusplus) && !defined(CINTERFACE)
  8935. MIDL_INTERFACE("DB2F3ACC-2F86-11d1-8E04-00C04FB9989A")
  8936. IPipeLong : public IUnknown
  8937. {
  8938. public:
  8939. virtual HRESULT STDMETHODCALLTYPE Pull(
  8940. /* [length_is][size_is][out] */ LONG *buf,
  8941. /* [in] */ ULONG cRequest,
  8942. /* [out] */ ULONG *pcReturned) = 0;
  8943. virtual HRESULT STDMETHODCALLTYPE Push(
  8944. /* [size_is][in] */ LONG *buf,
  8945. /* [in] */ ULONG cSent) = 0;
  8946. };
  8947. #else /* C style interface */
  8948. typedef struct IPipeLongVtbl
  8949. {
  8950. BEGIN_INTERFACE
  8951. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  8952. IPipeLong * This,
  8953. /* [in] */ REFIID riid,
  8954. /* [iid_is][out] */ void **ppvObject);
  8955. ULONG ( STDMETHODCALLTYPE *AddRef )(
  8956. IPipeLong * This);
  8957. ULONG ( STDMETHODCALLTYPE *Release )(
  8958. IPipeLong * This);
  8959. HRESULT ( STDMETHODCALLTYPE *Pull )(
  8960. IPipeLong * This,
  8961. /* [length_is][size_is][out] */ LONG *buf,
  8962. /* [in] */ ULONG cRequest,
  8963. /* [out] */ ULONG *pcReturned);
  8964. HRESULT ( STDMETHODCALLTYPE *Push )(
  8965. IPipeLong * This,
  8966. /* [size_is][in] */ LONG *buf,
  8967. /* [in] */ ULONG cSent);
  8968. END_INTERFACE
  8969. } IPipeLongVtbl;
  8970. interface IPipeLong
  8971. {
  8972. CONST_VTBL struct IPipeLongVtbl *lpVtbl;
  8973. };
  8974. #ifdef COBJMACROS
  8975. #define IPipeLong_QueryInterface(This,riid,ppvObject) \
  8976. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  8977. #define IPipeLong_AddRef(This) \
  8978. (This)->lpVtbl -> AddRef(This)
  8979. #define IPipeLong_Release(This) \
  8980. (This)->lpVtbl -> Release(This)
  8981. #define IPipeLong_Pull(This,buf,cRequest,pcReturned) \
  8982. (This)->lpVtbl -> Pull(This,buf,cRequest,pcReturned)
  8983. #define IPipeLong_Push(This,buf,cSent) \
  8984. (This)->lpVtbl -> Push(This,buf,cSent)
  8985. #endif /* COBJMACROS */
  8986. #endif /* C style interface */
  8987. HRESULT STDMETHODCALLTYPE IPipeLong_Pull_Proxy(
  8988. IPipeLong * This,
  8989. /* [length_is][size_is][out] */ LONG *buf,
  8990. /* [in] */ ULONG cRequest,
  8991. /* [out] */ ULONG *pcReturned);
  8992. void __RPC_STUB IPipeLong_Pull_Stub(
  8993. IRpcStubBuffer *This,
  8994. IRpcChannelBuffer *_pRpcChannelBuffer,
  8995. PRPC_MESSAGE _pRpcMessage,
  8996. DWORD *_pdwStubPhase);
  8997. HRESULT STDMETHODCALLTYPE IPipeLong_Push_Proxy(
  8998. IPipeLong * This,
  8999. /* [size_is][in] */ LONG *buf,
  9000. /* [in] */ ULONG cSent);
  9001. void __RPC_STUB IPipeLong_Push_Stub(
  9002. IRpcStubBuffer *This,
  9003. IRpcChannelBuffer *_pRpcChannelBuffer,
  9004. PRPC_MESSAGE _pRpcMessage,
  9005. DWORD *_pdwStubPhase);
  9006. #endif /* __IPipeLong_INTERFACE_DEFINED__ */
  9007. #ifndef __AsyncIPipeLong_INTERFACE_DEFINED__
  9008. #define __AsyncIPipeLong_INTERFACE_DEFINED__
  9009. /* interface AsyncIPipeLong */
  9010. /* [uuid][unique][object] */
  9011. EXTERN_C const IID IID_AsyncIPipeLong;
  9012. #if defined(__cplusplus) && !defined(CINTERFACE)
  9013. MIDL_INTERFACE("DB2F3ACD-2F86-11d1-8E04-00C04FB9989A")
  9014. AsyncIPipeLong : public IUnknown
  9015. {
  9016. public:
  9017. virtual HRESULT STDMETHODCALLTYPE Begin_Pull(
  9018. /* [in] */ ULONG cRequest) = 0;
  9019. virtual HRESULT STDMETHODCALLTYPE Finish_Pull(
  9020. /* [length_is][size_is][out] */ LONG *buf,
  9021. /* [out] */ ULONG *pcReturned) = 0;
  9022. virtual HRESULT STDMETHODCALLTYPE Begin_Push(
  9023. /* [size_is][in] */ LONG *buf,
  9024. /* [in] */ ULONG cSent) = 0;
  9025. virtual HRESULT STDMETHODCALLTYPE Finish_Push( void) = 0;
  9026. };
  9027. #else /* C style interface */
  9028. typedef struct AsyncIPipeLongVtbl
  9029. {
  9030. BEGIN_INTERFACE
  9031. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  9032. AsyncIPipeLong * This,
  9033. /* [in] */ REFIID riid,
  9034. /* [iid_is][out] */ void **ppvObject);
  9035. ULONG ( STDMETHODCALLTYPE *AddRef )(
  9036. AsyncIPipeLong * This);
  9037. ULONG ( STDMETHODCALLTYPE *Release )(
  9038. AsyncIPipeLong * This);
  9039. HRESULT ( STDMETHODCALLTYPE *Begin_Pull )(
  9040. AsyncIPipeLong * This,
  9041. /* [in] */ ULONG cRequest);
  9042. HRESULT ( STDMETHODCALLTYPE *Finish_Pull )(
  9043. AsyncIPipeLong * This,
  9044. /* [length_is][size_is][out] */ LONG *buf,
  9045. /* [out] */ ULONG *pcReturned);
  9046. HRESULT ( STDMETHODCALLTYPE *Begin_Push )(
  9047. AsyncIPipeLong * This,
  9048. /* [size_is][in] */ LONG *buf,
  9049. /* [in] */ ULONG cSent);
  9050. HRESULT ( STDMETHODCALLTYPE *Finish_Push )(
  9051. AsyncIPipeLong * This);
  9052. END_INTERFACE
  9053. } AsyncIPipeLongVtbl;
  9054. interface AsyncIPipeLong
  9055. {
  9056. CONST_VTBL struct AsyncIPipeLongVtbl *lpVtbl;
  9057. };
  9058. #ifdef COBJMACROS
  9059. #define AsyncIPipeLong_QueryInterface(This,riid,ppvObject) \
  9060. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  9061. #define AsyncIPipeLong_AddRef(This) \
  9062. (This)->lpVtbl -> AddRef(This)
  9063. #define AsyncIPipeLong_Release(This) \
  9064. (This)->lpVtbl -> Release(This)
  9065. #define AsyncIPipeLong_Begin_Pull(This,cRequest) \
  9066. (This)->lpVtbl -> Begin_Pull(This,cRequest)
  9067. #define AsyncIPipeLong_Finish_Pull(This,buf,pcReturned) \
  9068. (This)->lpVtbl -> Finish_Pull(This,buf,pcReturned)
  9069. #define AsyncIPipeLong_Begin_Push(This,buf,cSent) \
  9070. (This)->lpVtbl -> Begin_Push(This,buf,cSent)
  9071. #define AsyncIPipeLong_Finish_Push(This) \
  9072. (This)->lpVtbl -> Finish_Push(This)
  9073. #endif /* COBJMACROS */
  9074. #endif /* C style interface */
  9075. HRESULT STDMETHODCALLTYPE AsyncIPipeLong_Begin_Pull_Proxy(
  9076. AsyncIPipeLong * This,
  9077. /* [in] */ ULONG cRequest);
  9078. void __RPC_STUB AsyncIPipeLong_Begin_Pull_Stub(
  9079. IRpcStubBuffer *This,
  9080. IRpcChannelBuffer *_pRpcChannelBuffer,
  9081. PRPC_MESSAGE _pRpcMessage,
  9082. DWORD *_pdwStubPhase);
  9083. HRESULT STDMETHODCALLTYPE AsyncIPipeLong_Finish_Pull_Proxy(
  9084. AsyncIPipeLong * This,
  9085. /* [length_is][size_is][out] */ LONG *buf,
  9086. /* [out] */ ULONG *pcReturned);
  9087. void __RPC_STUB AsyncIPipeLong_Finish_Pull_Stub(
  9088. IRpcStubBuffer *This,
  9089. IRpcChannelBuffer *_pRpcChannelBuffer,
  9090. PRPC_MESSAGE _pRpcMessage,
  9091. DWORD *_pdwStubPhase);
  9092. HRESULT STDMETHODCALLTYPE AsyncIPipeLong_Begin_Push_Proxy(
  9093. AsyncIPipeLong * This,
  9094. /* [size_is][in] */ LONG *buf,
  9095. /* [in] */ ULONG cSent);
  9096. void __RPC_STUB AsyncIPipeLong_Begin_Push_Stub(
  9097. IRpcStubBuffer *This,
  9098. IRpcChannelBuffer *_pRpcChannelBuffer,
  9099. PRPC_MESSAGE _pRpcMessage,
  9100. DWORD *_pdwStubPhase);
  9101. HRESULT STDMETHODCALLTYPE AsyncIPipeLong_Finish_Push_Proxy(
  9102. AsyncIPipeLong * This);
  9103. void __RPC_STUB AsyncIPipeLong_Finish_Push_Stub(
  9104. IRpcStubBuffer *This,
  9105. IRpcChannelBuffer *_pRpcChannelBuffer,
  9106. PRPC_MESSAGE _pRpcMessage,
  9107. DWORD *_pdwStubPhase);
  9108. #endif /* __AsyncIPipeLong_INTERFACE_DEFINED__ */
  9109. #ifndef __IPipeDouble_INTERFACE_DEFINED__
  9110. #define __IPipeDouble_INTERFACE_DEFINED__
  9111. /* interface IPipeDouble */
  9112. /* [unique][async_uuid][uuid][object] */
  9113. EXTERN_C const IID IID_IPipeDouble;
  9114. #if defined(__cplusplus) && !defined(CINTERFACE)
  9115. MIDL_INTERFACE("DB2F3ACE-2F86-11d1-8E04-00C04FB9989A")
  9116. IPipeDouble : public IUnknown
  9117. {
  9118. public:
  9119. virtual HRESULT STDMETHODCALLTYPE Pull(
  9120. /* [length_is][size_is][out] */ DOUBLE *buf,
  9121. /* [in] */ ULONG cRequest,
  9122. /* [out] */ ULONG *pcReturned) = 0;
  9123. virtual HRESULT STDMETHODCALLTYPE Push(
  9124. /* [size_is][in] */ DOUBLE *buf,
  9125. /* [in] */ ULONG cSent) = 0;
  9126. };
  9127. #else /* C style interface */
  9128. typedef struct IPipeDoubleVtbl
  9129. {
  9130. BEGIN_INTERFACE
  9131. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  9132. IPipeDouble * This,
  9133. /* [in] */ REFIID riid,
  9134. /* [iid_is][out] */ void **ppvObject);
  9135. ULONG ( STDMETHODCALLTYPE *AddRef )(
  9136. IPipeDouble * This);
  9137. ULONG ( STDMETHODCALLTYPE *Release )(
  9138. IPipeDouble * This);
  9139. HRESULT ( STDMETHODCALLTYPE *Pull )(
  9140. IPipeDouble * This,
  9141. /* [length_is][size_is][out] */ DOUBLE *buf,
  9142. /* [in] */ ULONG cRequest,
  9143. /* [out] */ ULONG *pcReturned);
  9144. HRESULT ( STDMETHODCALLTYPE *Push )(
  9145. IPipeDouble * This,
  9146. /* [size_is][in] */ DOUBLE *buf,
  9147. /* [in] */ ULONG cSent);
  9148. END_INTERFACE
  9149. } IPipeDoubleVtbl;
  9150. interface IPipeDouble
  9151. {
  9152. CONST_VTBL struct IPipeDoubleVtbl *lpVtbl;
  9153. };
  9154. #ifdef COBJMACROS
  9155. #define IPipeDouble_QueryInterface(This,riid,ppvObject) \
  9156. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  9157. #define IPipeDouble_AddRef(This) \
  9158. (This)->lpVtbl -> AddRef(This)
  9159. #define IPipeDouble_Release(This) \
  9160. (This)->lpVtbl -> Release(This)
  9161. #define IPipeDouble_Pull(This,buf,cRequest,pcReturned) \
  9162. (This)->lpVtbl -> Pull(This,buf,cRequest,pcReturned)
  9163. #define IPipeDouble_Push(This,buf,cSent) \
  9164. (This)->lpVtbl -> Push(This,buf,cSent)
  9165. #endif /* COBJMACROS */
  9166. #endif /* C style interface */
  9167. HRESULT STDMETHODCALLTYPE IPipeDouble_Pull_Proxy(
  9168. IPipeDouble * This,
  9169. /* [length_is][size_is][out] */ DOUBLE *buf,
  9170. /* [in] */ ULONG cRequest,
  9171. /* [out] */ ULONG *pcReturned);
  9172. void __RPC_STUB IPipeDouble_Pull_Stub(
  9173. IRpcStubBuffer *This,
  9174. IRpcChannelBuffer *_pRpcChannelBuffer,
  9175. PRPC_MESSAGE _pRpcMessage,
  9176. DWORD *_pdwStubPhase);
  9177. HRESULT STDMETHODCALLTYPE IPipeDouble_Push_Proxy(
  9178. IPipeDouble * This,
  9179. /* [size_is][in] */ DOUBLE *buf,
  9180. /* [in] */ ULONG cSent);
  9181. void __RPC_STUB IPipeDouble_Push_Stub(
  9182. IRpcStubBuffer *This,
  9183. IRpcChannelBuffer *_pRpcChannelBuffer,
  9184. PRPC_MESSAGE _pRpcMessage,
  9185. DWORD *_pdwStubPhase);
  9186. #endif /* __IPipeDouble_INTERFACE_DEFINED__ */
  9187. #ifndef __AsyncIPipeDouble_INTERFACE_DEFINED__
  9188. #define __AsyncIPipeDouble_INTERFACE_DEFINED__
  9189. /* interface AsyncIPipeDouble */
  9190. /* [uuid][unique][object] */
  9191. EXTERN_C const IID IID_AsyncIPipeDouble;
  9192. #if defined(__cplusplus) && !defined(CINTERFACE)
  9193. MIDL_INTERFACE("DB2F3ACF-2F86-11d1-8E04-00C04FB9989A")
  9194. AsyncIPipeDouble : public IUnknown
  9195. {
  9196. public:
  9197. virtual HRESULT STDMETHODCALLTYPE Begin_Pull(
  9198. /* [in] */ ULONG cRequest) = 0;
  9199. virtual HRESULT STDMETHODCALLTYPE Finish_Pull(
  9200. /* [length_is][size_is][out] */ DOUBLE *buf,
  9201. /* [out] */ ULONG *pcReturned) = 0;
  9202. virtual HRESULT STDMETHODCALLTYPE Begin_Push(
  9203. /* [size_is][in] */ DOUBLE *buf,
  9204. /* [in] */ ULONG cSent) = 0;
  9205. virtual HRESULT STDMETHODCALLTYPE Finish_Push( void) = 0;
  9206. };
  9207. #else /* C style interface */
  9208. typedef struct AsyncIPipeDoubleVtbl
  9209. {
  9210. BEGIN_INTERFACE
  9211. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  9212. AsyncIPipeDouble * This,
  9213. /* [in] */ REFIID riid,
  9214. /* [iid_is][out] */ void **ppvObject);
  9215. ULONG ( STDMETHODCALLTYPE *AddRef )(
  9216. AsyncIPipeDouble * This);
  9217. ULONG ( STDMETHODCALLTYPE *Release )(
  9218. AsyncIPipeDouble * This);
  9219. HRESULT ( STDMETHODCALLTYPE *Begin_Pull )(
  9220. AsyncIPipeDouble * This,
  9221. /* [in] */ ULONG cRequest);
  9222. HRESULT ( STDMETHODCALLTYPE *Finish_Pull )(
  9223. AsyncIPipeDouble * This,
  9224. /* [length_is][size_is][out] */ DOUBLE *buf,
  9225. /* [out] */ ULONG *pcReturned);
  9226. HRESULT ( STDMETHODCALLTYPE *Begin_Push )(
  9227. AsyncIPipeDouble * This,
  9228. /* [size_is][in] */ DOUBLE *buf,
  9229. /* [in] */ ULONG cSent);
  9230. HRESULT ( STDMETHODCALLTYPE *Finish_Push )(
  9231. AsyncIPipeDouble * This);
  9232. END_INTERFACE
  9233. } AsyncIPipeDoubleVtbl;
  9234. interface AsyncIPipeDouble
  9235. {
  9236. CONST_VTBL struct AsyncIPipeDoubleVtbl *lpVtbl;
  9237. };
  9238. #ifdef COBJMACROS
  9239. #define AsyncIPipeDouble_QueryInterface(This,riid,ppvObject) \
  9240. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  9241. #define AsyncIPipeDouble_AddRef(This) \
  9242. (This)->lpVtbl -> AddRef(This)
  9243. #define AsyncIPipeDouble_Release(This) \
  9244. (This)->lpVtbl -> Release(This)
  9245. #define AsyncIPipeDouble_Begin_Pull(This,cRequest) \
  9246. (This)->lpVtbl -> Begin_Pull(This,cRequest)
  9247. #define AsyncIPipeDouble_Finish_Pull(This,buf,pcReturned) \
  9248. (This)->lpVtbl -> Finish_Pull(This,buf,pcReturned)
  9249. #define AsyncIPipeDouble_Begin_Push(This,buf,cSent) \
  9250. (This)->lpVtbl -> Begin_Push(This,buf,cSent)
  9251. #define AsyncIPipeDouble_Finish_Push(This) \
  9252. (This)->lpVtbl -> Finish_Push(This)
  9253. #endif /* COBJMACROS */
  9254. #endif /* C style interface */
  9255. HRESULT STDMETHODCALLTYPE AsyncIPipeDouble_Begin_Pull_Proxy(
  9256. AsyncIPipeDouble * This,
  9257. /* [in] */ ULONG cRequest);
  9258. void __RPC_STUB AsyncIPipeDouble_Begin_Pull_Stub(
  9259. IRpcStubBuffer *This,
  9260. IRpcChannelBuffer *_pRpcChannelBuffer,
  9261. PRPC_MESSAGE _pRpcMessage,
  9262. DWORD *_pdwStubPhase);
  9263. HRESULT STDMETHODCALLTYPE AsyncIPipeDouble_Finish_Pull_Proxy(
  9264. AsyncIPipeDouble * This,
  9265. /* [length_is][size_is][out] */ DOUBLE *buf,
  9266. /* [out] */ ULONG *pcReturned);
  9267. void __RPC_STUB AsyncIPipeDouble_Finish_Pull_Stub(
  9268. IRpcStubBuffer *This,
  9269. IRpcChannelBuffer *_pRpcChannelBuffer,
  9270. PRPC_MESSAGE _pRpcMessage,
  9271. DWORD *_pdwStubPhase);
  9272. HRESULT STDMETHODCALLTYPE AsyncIPipeDouble_Begin_Push_Proxy(
  9273. AsyncIPipeDouble * This,
  9274. /* [size_is][in] */ DOUBLE *buf,
  9275. /* [in] */ ULONG cSent);
  9276. void __RPC_STUB AsyncIPipeDouble_Begin_Push_Stub(
  9277. IRpcStubBuffer *This,
  9278. IRpcChannelBuffer *_pRpcChannelBuffer,
  9279. PRPC_MESSAGE _pRpcMessage,
  9280. DWORD *_pdwStubPhase);
  9281. HRESULT STDMETHODCALLTYPE AsyncIPipeDouble_Finish_Push_Proxy(
  9282. AsyncIPipeDouble * This);
  9283. void __RPC_STUB AsyncIPipeDouble_Finish_Push_Stub(
  9284. IRpcStubBuffer *This,
  9285. IRpcChannelBuffer *_pRpcChannelBuffer,
  9286. PRPC_MESSAGE _pRpcMessage,
  9287. DWORD *_pdwStubPhase);
  9288. #endif /* __AsyncIPipeDouble_INTERFACE_DEFINED__ */
  9289. #ifndef __IThumbnailExtractor_INTERFACE_DEFINED__
  9290. #define __IThumbnailExtractor_INTERFACE_DEFINED__
  9291. /* interface IThumbnailExtractor */
  9292. /* [object][uuid] */
  9293. EXTERN_C const IID IID_IThumbnailExtractor;
  9294. #if defined(__cplusplus) && !defined(CINTERFACE)
  9295. MIDL_INTERFACE("969dc708-5c76-11d1-8d86-0000f804b057")
  9296. IThumbnailExtractor : public IUnknown
  9297. {
  9298. public:
  9299. virtual HRESULT STDMETHODCALLTYPE ExtractThumbnail(
  9300. /* [in] */ IStorage *pStg,
  9301. /* [in] */ ULONG ulLength,
  9302. /* [in] */ ULONG ulHeight,
  9303. /* [out] */ ULONG *pulOutputLength,
  9304. /* [out] */ ULONG *pulOutputHeight,
  9305. /* [out] */ HBITMAP *phOutputBitmap) = 0;
  9306. virtual HRESULT STDMETHODCALLTYPE OnFileUpdated(
  9307. /* [in] */ IStorage *pStg) = 0;
  9308. };
  9309. #else /* C style interface */
  9310. typedef struct IThumbnailExtractorVtbl
  9311. {
  9312. BEGIN_INTERFACE
  9313. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  9314. IThumbnailExtractor * This,
  9315. /* [in] */ REFIID riid,
  9316. /* [iid_is][out] */ void **ppvObject);
  9317. ULONG ( STDMETHODCALLTYPE *AddRef )(
  9318. IThumbnailExtractor * This);
  9319. ULONG ( STDMETHODCALLTYPE *Release )(
  9320. IThumbnailExtractor * This);
  9321. HRESULT ( STDMETHODCALLTYPE *ExtractThumbnail )(
  9322. IThumbnailExtractor * This,
  9323. /* [in] */ IStorage *pStg,
  9324. /* [in] */ ULONG ulLength,
  9325. /* [in] */ ULONG ulHeight,
  9326. /* [out] */ ULONG *pulOutputLength,
  9327. /* [out] */ ULONG *pulOutputHeight,
  9328. /* [out] */ HBITMAP *phOutputBitmap);
  9329. HRESULT ( STDMETHODCALLTYPE *OnFileUpdated )(
  9330. IThumbnailExtractor * This,
  9331. /* [in] */ IStorage *pStg);
  9332. END_INTERFACE
  9333. } IThumbnailExtractorVtbl;
  9334. interface IThumbnailExtractor
  9335. {
  9336. CONST_VTBL struct IThumbnailExtractorVtbl *lpVtbl;
  9337. };
  9338. #ifdef COBJMACROS
  9339. #define IThumbnailExtractor_QueryInterface(This,riid,ppvObject) \
  9340. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  9341. #define IThumbnailExtractor_AddRef(This) \
  9342. (This)->lpVtbl -> AddRef(This)
  9343. #define IThumbnailExtractor_Release(This) \
  9344. (This)->lpVtbl -> Release(This)
  9345. #define IThumbnailExtractor_ExtractThumbnail(This,pStg,ulLength,ulHeight,pulOutputLength,pulOutputHeight,phOutputBitmap) \
  9346. (This)->lpVtbl -> ExtractThumbnail(This,pStg,ulLength,ulHeight,pulOutputLength,pulOutputHeight,phOutputBitmap)
  9347. #define IThumbnailExtractor_OnFileUpdated(This,pStg) \
  9348. (This)->lpVtbl -> OnFileUpdated(This,pStg)
  9349. #endif /* COBJMACROS */
  9350. #endif /* C style interface */
  9351. HRESULT STDMETHODCALLTYPE IThumbnailExtractor_ExtractThumbnail_Proxy(
  9352. IThumbnailExtractor * This,
  9353. /* [in] */ IStorage *pStg,
  9354. /* [in] */ ULONG ulLength,
  9355. /* [in] */ ULONG ulHeight,
  9356. /* [out] */ ULONG *pulOutputLength,
  9357. /* [out] */ ULONG *pulOutputHeight,
  9358. /* [out] */ HBITMAP *phOutputBitmap);
  9359. void __RPC_STUB IThumbnailExtractor_ExtractThumbnail_Stub(
  9360. IRpcStubBuffer *This,
  9361. IRpcChannelBuffer *_pRpcChannelBuffer,
  9362. PRPC_MESSAGE _pRpcMessage,
  9363. DWORD *_pdwStubPhase);
  9364. HRESULT STDMETHODCALLTYPE IThumbnailExtractor_OnFileUpdated_Proxy(
  9365. IThumbnailExtractor * This,
  9366. /* [in] */ IStorage *pStg);
  9367. void __RPC_STUB IThumbnailExtractor_OnFileUpdated_Stub(
  9368. IRpcStubBuffer *This,
  9369. IRpcChannelBuffer *_pRpcChannelBuffer,
  9370. PRPC_MESSAGE _pRpcMessage,
  9371. DWORD *_pdwStubPhase);
  9372. #endif /* __IThumbnailExtractor_INTERFACE_DEFINED__ */
  9373. #ifndef __IDummyHICONIncluder_INTERFACE_DEFINED__
  9374. #define __IDummyHICONIncluder_INTERFACE_DEFINED__
  9375. /* interface IDummyHICONIncluder */
  9376. /* [uuid][unique][object] */
  9377. EXTERN_C const IID IID_IDummyHICONIncluder;
  9378. #if defined(__cplusplus) && !defined(CINTERFACE)
  9379. MIDL_INTERFACE("947990de-cc28-11d2-a0f7-00805f858fb1")
  9380. IDummyHICONIncluder : public IUnknown
  9381. {
  9382. public:
  9383. virtual HRESULT STDMETHODCALLTYPE Dummy(
  9384. /* [in] */ HICON h1,
  9385. /* [in] */ HDC h2) = 0;
  9386. };
  9387. #else /* C style interface */
  9388. typedef struct IDummyHICONIncluderVtbl
  9389. {
  9390. BEGIN_INTERFACE
  9391. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  9392. IDummyHICONIncluder * This,
  9393. /* [in] */ REFIID riid,
  9394. /* [iid_is][out] */ void **ppvObject);
  9395. ULONG ( STDMETHODCALLTYPE *AddRef )(
  9396. IDummyHICONIncluder * This);
  9397. ULONG ( STDMETHODCALLTYPE *Release )(
  9398. IDummyHICONIncluder * This);
  9399. HRESULT ( STDMETHODCALLTYPE *Dummy )(
  9400. IDummyHICONIncluder * This,
  9401. /* [in] */ HICON h1,
  9402. /* [in] */ HDC h2);
  9403. END_INTERFACE
  9404. } IDummyHICONIncluderVtbl;
  9405. interface IDummyHICONIncluder
  9406. {
  9407. CONST_VTBL struct IDummyHICONIncluderVtbl *lpVtbl;
  9408. };
  9409. #ifdef COBJMACROS
  9410. #define IDummyHICONIncluder_QueryInterface(This,riid,ppvObject) \
  9411. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  9412. #define IDummyHICONIncluder_AddRef(This) \
  9413. (This)->lpVtbl -> AddRef(This)
  9414. #define IDummyHICONIncluder_Release(This) \
  9415. (This)->lpVtbl -> Release(This)
  9416. #define IDummyHICONIncluder_Dummy(This,h1,h2) \
  9417. (This)->lpVtbl -> Dummy(This,h1,h2)
  9418. #endif /* COBJMACROS */
  9419. #endif /* C style interface */
  9420. HRESULT STDMETHODCALLTYPE IDummyHICONIncluder_Dummy_Proxy(
  9421. IDummyHICONIncluder * This,
  9422. /* [in] */ HICON h1,
  9423. /* [in] */ HDC h2);
  9424. void __RPC_STUB IDummyHICONIncluder_Dummy_Stub(
  9425. IRpcStubBuffer *This,
  9426. IRpcChannelBuffer *_pRpcChannelBuffer,
  9427. PRPC_MESSAGE _pRpcMessage,
  9428. DWORD *_pdwStubPhase);
  9429. #endif /* __IDummyHICONIncluder_INTERFACE_DEFINED__ */
  9430. /* interface __MIDL_itf_objidl_0084 */
  9431. /* [local] */
  9432. typedef
  9433. enum _APTTYPE
  9434. { APTTYPE_CURRENT = -1,
  9435. APTTYPE_STA = 0,
  9436. APTTYPE_MTA = 1,
  9437. APTTYPE_NA = 2,
  9438. APTTYPE_MAINSTA = 3
  9439. } APTTYPE;
  9440. typedef
  9441. enum _THDTYPE
  9442. { THDTYPE_BLOCKMESSAGES = 0,
  9443. THDTYPE_PROCESSMESSAGES = 1
  9444. } THDTYPE;
  9445. typedef DWORD APARTMENTID;
  9446. extern RPC_IF_HANDLE __MIDL_itf_objidl_0084_v0_0_c_ifspec;
  9447. extern RPC_IF_HANDLE __MIDL_itf_objidl_0084_v0_0_s_ifspec;
  9448. #ifndef __IComThreadingInfo_INTERFACE_DEFINED__
  9449. #define __IComThreadingInfo_INTERFACE_DEFINED__
  9450. /* interface IComThreadingInfo */
  9451. /* [unique][uuid][object][local] */
  9452. EXTERN_C const IID IID_IComThreadingInfo;
  9453. #if defined(__cplusplus) && !defined(CINTERFACE)
  9454. MIDL_INTERFACE("000001ce-0000-0000-C000-000000000046")
  9455. IComThreadingInfo : public IUnknown
  9456. {
  9457. public:
  9458. virtual HRESULT STDMETHODCALLTYPE GetCurrentApartmentType(
  9459. /* [out] */ APTTYPE *pAptType) = 0;
  9460. virtual HRESULT STDMETHODCALLTYPE GetCurrentThreadType(
  9461. /* [out] */ THDTYPE *pThreadType) = 0;
  9462. virtual HRESULT STDMETHODCALLTYPE GetCurrentLogicalThreadId(
  9463. /* [out] */ GUID *pguidLogicalThreadId) = 0;
  9464. virtual HRESULT STDMETHODCALLTYPE SetCurrentLogicalThreadId(
  9465. /* [in] */ REFGUID rguid) = 0;
  9466. };
  9467. #else /* C style interface */
  9468. typedef struct IComThreadingInfoVtbl
  9469. {
  9470. BEGIN_INTERFACE
  9471. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  9472. IComThreadingInfo * This,
  9473. /* [in] */ REFIID riid,
  9474. /* [iid_is][out] */ void **ppvObject);
  9475. ULONG ( STDMETHODCALLTYPE *AddRef )(
  9476. IComThreadingInfo * This);
  9477. ULONG ( STDMETHODCALLTYPE *Release )(
  9478. IComThreadingInfo * This);
  9479. HRESULT ( STDMETHODCALLTYPE *GetCurrentApartmentType )(
  9480. IComThreadingInfo * This,
  9481. /* [out] */ APTTYPE *pAptType);
  9482. HRESULT ( STDMETHODCALLTYPE *GetCurrentThreadType )(
  9483. IComThreadingInfo * This,
  9484. /* [out] */ THDTYPE *pThreadType);
  9485. HRESULT ( STDMETHODCALLTYPE *GetCurrentLogicalThreadId )(
  9486. IComThreadingInfo * This,
  9487. /* [out] */ GUID *pguidLogicalThreadId);
  9488. HRESULT ( STDMETHODCALLTYPE *SetCurrentLogicalThreadId )(
  9489. IComThreadingInfo * This,
  9490. /* [in] */ REFGUID rguid);
  9491. END_INTERFACE
  9492. } IComThreadingInfoVtbl;
  9493. interface IComThreadingInfo
  9494. {
  9495. CONST_VTBL struct IComThreadingInfoVtbl *lpVtbl;
  9496. };
  9497. #ifdef COBJMACROS
  9498. #define IComThreadingInfo_QueryInterface(This,riid,ppvObject) \
  9499. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  9500. #define IComThreadingInfo_AddRef(This) \
  9501. (This)->lpVtbl -> AddRef(This)
  9502. #define IComThreadingInfo_Release(This) \
  9503. (This)->lpVtbl -> Release(This)
  9504. #define IComThreadingInfo_GetCurrentApartmentType(This,pAptType) \
  9505. (This)->lpVtbl -> GetCurrentApartmentType(This,pAptType)
  9506. #define IComThreadingInfo_GetCurrentThreadType(This,pThreadType) \
  9507. (This)->lpVtbl -> GetCurrentThreadType(This,pThreadType)
  9508. #define IComThreadingInfo_GetCurrentLogicalThreadId(This,pguidLogicalThreadId) \
  9509. (This)->lpVtbl -> GetCurrentLogicalThreadId(This,pguidLogicalThreadId)
  9510. #define IComThreadingInfo_SetCurrentLogicalThreadId(This,rguid) \
  9511. (This)->lpVtbl -> SetCurrentLogicalThreadId(This,rguid)
  9512. #endif /* COBJMACROS */
  9513. #endif /* C style interface */
  9514. HRESULT STDMETHODCALLTYPE IComThreadingInfo_GetCurrentApartmentType_Proxy(
  9515. IComThreadingInfo * This,
  9516. /* [out] */ APTTYPE *pAptType);
  9517. void __RPC_STUB IComThreadingInfo_GetCurrentApartmentType_Stub(
  9518. IRpcStubBuffer *This,
  9519. IRpcChannelBuffer *_pRpcChannelBuffer,
  9520. PRPC_MESSAGE _pRpcMessage,
  9521. DWORD *_pdwStubPhase);
  9522. HRESULT STDMETHODCALLTYPE IComThreadingInfo_GetCurrentThreadType_Proxy(
  9523. IComThreadingInfo * This,
  9524. /* [out] */ THDTYPE *pThreadType);
  9525. void __RPC_STUB IComThreadingInfo_GetCurrentThreadType_Stub(
  9526. IRpcStubBuffer *This,
  9527. IRpcChannelBuffer *_pRpcChannelBuffer,
  9528. PRPC_MESSAGE _pRpcMessage,
  9529. DWORD *_pdwStubPhase);
  9530. HRESULT STDMETHODCALLTYPE IComThreadingInfo_GetCurrentLogicalThreadId_Proxy(
  9531. IComThreadingInfo * This,
  9532. /* [out] */ GUID *pguidLogicalThreadId);
  9533. void __RPC_STUB IComThreadingInfo_GetCurrentLogicalThreadId_Stub(
  9534. IRpcStubBuffer *This,
  9535. IRpcChannelBuffer *_pRpcChannelBuffer,
  9536. PRPC_MESSAGE _pRpcMessage,
  9537. DWORD *_pdwStubPhase);
  9538. HRESULT STDMETHODCALLTYPE IComThreadingInfo_SetCurrentLogicalThreadId_Proxy(
  9539. IComThreadingInfo * This,
  9540. /* [in] */ REFGUID rguid);
  9541. void __RPC_STUB IComThreadingInfo_SetCurrentLogicalThreadId_Stub(
  9542. IRpcStubBuffer *This,
  9543. IRpcChannelBuffer *_pRpcChannelBuffer,
  9544. PRPC_MESSAGE _pRpcMessage,
  9545. DWORD *_pdwStubPhase);
  9546. #endif /* __IComThreadingInfo_INTERFACE_DEFINED__ */
  9547. #ifndef __IProcessInitControl_INTERFACE_DEFINED__
  9548. #define __IProcessInitControl_INTERFACE_DEFINED__
  9549. /* interface IProcessInitControl */
  9550. /* [uuid][unique][object] */
  9551. EXTERN_C const IID IID_IProcessInitControl;
  9552. #if defined(__cplusplus) && !defined(CINTERFACE)
  9553. MIDL_INTERFACE("72380d55-8d2b-43a3-8513-2b6ef31434e9")
  9554. IProcessInitControl : public IUnknown
  9555. {
  9556. public:
  9557. virtual HRESULT STDMETHODCALLTYPE ResetInitializerTimeout(
  9558. /* [in] */ DWORD dwSecondsRemaining) = 0;
  9559. };
  9560. #else /* C style interface */
  9561. typedef struct IProcessInitControlVtbl
  9562. {
  9563. BEGIN_INTERFACE
  9564. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  9565. IProcessInitControl * This,
  9566. /* [in] */ REFIID riid,
  9567. /* [iid_is][out] */ void **ppvObject);
  9568. ULONG ( STDMETHODCALLTYPE *AddRef )(
  9569. IProcessInitControl * This);
  9570. ULONG ( STDMETHODCALLTYPE *Release )(
  9571. IProcessInitControl * This);
  9572. HRESULT ( STDMETHODCALLTYPE *ResetInitializerTimeout )(
  9573. IProcessInitControl * This,
  9574. /* [in] */ DWORD dwSecondsRemaining);
  9575. END_INTERFACE
  9576. } IProcessInitControlVtbl;
  9577. interface IProcessInitControl
  9578. {
  9579. CONST_VTBL struct IProcessInitControlVtbl *lpVtbl;
  9580. };
  9581. #ifdef COBJMACROS
  9582. #define IProcessInitControl_QueryInterface(This,riid,ppvObject) \
  9583. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  9584. #define IProcessInitControl_AddRef(This) \
  9585. (This)->lpVtbl -> AddRef(This)
  9586. #define IProcessInitControl_Release(This) \
  9587. (This)->lpVtbl -> Release(This)
  9588. #define IProcessInitControl_ResetInitializerTimeout(This,dwSecondsRemaining) \
  9589. (This)->lpVtbl -> ResetInitializerTimeout(This,dwSecondsRemaining)
  9590. #endif /* COBJMACROS */
  9591. #endif /* C style interface */
  9592. HRESULT STDMETHODCALLTYPE IProcessInitControl_ResetInitializerTimeout_Proxy(
  9593. IProcessInitControl * This,
  9594. /* [in] */ DWORD dwSecondsRemaining);
  9595. void __RPC_STUB IProcessInitControl_ResetInitializerTimeout_Stub(
  9596. IRpcStubBuffer *This,
  9597. IRpcChannelBuffer *_pRpcChannelBuffer,
  9598. PRPC_MESSAGE _pRpcMessage,
  9599. DWORD *_pdwStubPhase);
  9600. #endif /* __IProcessInitControl_INTERFACE_DEFINED__ */
  9601. /* interface __MIDL_itf_objidl_0086 */
  9602. /* [local] */
  9603. #if (_WIN32_WINNT >= 0x0501 )
  9604. extern RPC_IF_HANDLE __MIDL_itf_objidl_0086_v0_0_c_ifspec;
  9605. extern RPC_IF_HANDLE __MIDL_itf_objidl_0086_v0_0_s_ifspec;
  9606. #ifndef __IInitializeSpy_INTERFACE_DEFINED__
  9607. #define __IInitializeSpy_INTERFACE_DEFINED__
  9608. /* interface IInitializeSpy */
  9609. /* [unique][uuid][object][local] */
  9610. typedef /* [unique] */ IInitializeSpy *LPINITIALIZESPY;
  9611. EXTERN_C const IID IID_IInitializeSpy;
  9612. #if defined(__cplusplus) && !defined(CINTERFACE)
  9613. MIDL_INTERFACE("00000034-0000-0000-C000-000000000046")
  9614. IInitializeSpy : public IUnknown
  9615. {
  9616. public:
  9617. virtual HRESULT STDMETHODCALLTYPE PreInitialize(
  9618. /* [in] */ DWORD dwCoInit,
  9619. /* [in] */ DWORD dwCurThreadAptRefs) = 0;
  9620. virtual HRESULT STDMETHODCALLTYPE PostInitialize(
  9621. /* [in] */ HRESULT hrCoInit,
  9622. /* [in] */ DWORD dwCoInit,
  9623. /* [in] */ DWORD dwNewThreadAptRefs) = 0;
  9624. virtual HRESULT STDMETHODCALLTYPE PreUninitialize(
  9625. /* [in] */ DWORD dwCurThreadAptRefs) = 0;
  9626. virtual HRESULT STDMETHODCALLTYPE PostUninitialize(
  9627. /* [in] */ DWORD dwNewThreadAptRefs) = 0;
  9628. };
  9629. #else /* C style interface */
  9630. typedef struct IInitializeSpyVtbl
  9631. {
  9632. BEGIN_INTERFACE
  9633. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  9634. IInitializeSpy * This,
  9635. /* [in] */ REFIID riid,
  9636. /* [iid_is][out] */ void **ppvObject);
  9637. ULONG ( STDMETHODCALLTYPE *AddRef )(
  9638. IInitializeSpy * This);
  9639. ULONG ( STDMETHODCALLTYPE *Release )(
  9640. IInitializeSpy * This);
  9641. HRESULT ( STDMETHODCALLTYPE *PreInitialize )(
  9642. IInitializeSpy * This,
  9643. /* [in] */ DWORD dwCoInit,
  9644. /* [in] */ DWORD dwCurThreadAptRefs);
  9645. HRESULT ( STDMETHODCALLTYPE *PostInitialize )(
  9646. IInitializeSpy * This,
  9647. /* [in] */ HRESULT hrCoInit,
  9648. /* [in] */ DWORD dwCoInit,
  9649. /* [in] */ DWORD dwNewThreadAptRefs);
  9650. HRESULT ( STDMETHODCALLTYPE *PreUninitialize )(
  9651. IInitializeSpy * This,
  9652. /* [in] */ DWORD dwCurThreadAptRefs);
  9653. HRESULT ( STDMETHODCALLTYPE *PostUninitialize )(
  9654. IInitializeSpy * This,
  9655. /* [in] */ DWORD dwNewThreadAptRefs);
  9656. END_INTERFACE
  9657. } IInitializeSpyVtbl;
  9658. interface IInitializeSpy
  9659. {
  9660. CONST_VTBL struct IInitializeSpyVtbl *lpVtbl;
  9661. };
  9662. #ifdef COBJMACROS
  9663. #define IInitializeSpy_QueryInterface(This,riid,ppvObject) \
  9664. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  9665. #define IInitializeSpy_AddRef(This) \
  9666. (This)->lpVtbl -> AddRef(This)
  9667. #define IInitializeSpy_Release(This) \
  9668. (This)->lpVtbl -> Release(This)
  9669. #define IInitializeSpy_PreInitialize(This,dwCoInit,dwCurThreadAptRefs) \
  9670. (This)->lpVtbl -> PreInitialize(This,dwCoInit,dwCurThreadAptRefs)
  9671. #define IInitializeSpy_PostInitialize(This,hrCoInit,dwCoInit,dwNewThreadAptRefs) \
  9672. (This)->lpVtbl -> PostInitialize(This,hrCoInit,dwCoInit,dwNewThreadAptRefs)
  9673. #define IInitializeSpy_PreUninitialize(This,dwCurThreadAptRefs) \
  9674. (This)->lpVtbl -> PreUninitialize(This,dwCurThreadAptRefs)
  9675. #define IInitializeSpy_PostUninitialize(This,dwNewThreadAptRefs) \
  9676. (This)->lpVtbl -> PostUninitialize(This,dwNewThreadAptRefs)
  9677. #endif /* COBJMACROS */
  9678. #endif /* C style interface */
  9679. HRESULT STDMETHODCALLTYPE IInitializeSpy_PreInitialize_Proxy(
  9680. IInitializeSpy * This,
  9681. /* [in] */ DWORD dwCoInit,
  9682. /* [in] */ DWORD dwCurThreadAptRefs);
  9683. void __RPC_STUB IInitializeSpy_PreInitialize_Stub(
  9684. IRpcStubBuffer *This,
  9685. IRpcChannelBuffer *_pRpcChannelBuffer,
  9686. PRPC_MESSAGE _pRpcMessage,
  9687. DWORD *_pdwStubPhase);
  9688. HRESULT STDMETHODCALLTYPE IInitializeSpy_PostInitialize_Proxy(
  9689. IInitializeSpy * This,
  9690. /* [in] */ HRESULT hrCoInit,
  9691. /* [in] */ DWORD dwCoInit,
  9692. /* [in] */ DWORD dwNewThreadAptRefs);
  9693. void __RPC_STUB IInitializeSpy_PostInitialize_Stub(
  9694. IRpcStubBuffer *This,
  9695. IRpcChannelBuffer *_pRpcChannelBuffer,
  9696. PRPC_MESSAGE _pRpcMessage,
  9697. DWORD *_pdwStubPhase);
  9698. HRESULT STDMETHODCALLTYPE IInitializeSpy_PreUninitialize_Proxy(
  9699. IInitializeSpy * This,
  9700. /* [in] */ DWORD dwCurThreadAptRefs);
  9701. void __RPC_STUB IInitializeSpy_PreUninitialize_Stub(
  9702. IRpcStubBuffer *This,
  9703. IRpcChannelBuffer *_pRpcChannelBuffer,
  9704. PRPC_MESSAGE _pRpcMessage,
  9705. DWORD *_pdwStubPhase);
  9706. HRESULT STDMETHODCALLTYPE IInitializeSpy_PostUninitialize_Proxy(
  9707. IInitializeSpy * This,
  9708. /* [in] */ DWORD dwNewThreadAptRefs);
  9709. void __RPC_STUB IInitializeSpy_PostUninitialize_Stub(
  9710. IRpcStubBuffer *This,
  9711. IRpcChannelBuffer *_pRpcChannelBuffer,
  9712. PRPC_MESSAGE _pRpcMessage,
  9713. DWORD *_pdwStubPhase);
  9714. #endif /* __IInitializeSpy_INTERFACE_DEFINED__ */
  9715. /* interface __MIDL_itf_objidl_0087 */
  9716. /* [local] */
  9717. #endif
  9718. #if ( _MSC_VER >= 800 )
  9719. #if _MSC_VER >= 1200
  9720. #pragma warning(pop)
  9721. #else
  9722. #pragma warning(default:4201)
  9723. #endif
  9724. #endif
  9725. extern RPC_IF_HANDLE __MIDL_itf_objidl_0087_v0_0_c_ifspec;
  9726. extern RPC_IF_HANDLE __MIDL_itf_objidl_0087_v0_0_s_ifspec;
  9727. /* Additional Prototypes for ALL interfaces */
  9728. unsigned long __RPC_USER ASYNC_STGMEDIUM_UserSize( unsigned long *, unsigned long , ASYNC_STGMEDIUM * );
  9729. unsigned char * __RPC_USER ASYNC_STGMEDIUM_UserMarshal( unsigned long *, unsigned char *, ASYNC_STGMEDIUM * );
  9730. unsigned char * __RPC_USER ASYNC_STGMEDIUM_UserUnmarshal(unsigned long *, unsigned char *, ASYNC_STGMEDIUM * );
  9731. void __RPC_USER ASYNC_STGMEDIUM_UserFree( unsigned long *, ASYNC_STGMEDIUM * );
  9732. unsigned long __RPC_USER CLIPFORMAT_UserSize( unsigned long *, unsigned long , CLIPFORMAT * );
  9733. unsigned char * __RPC_USER CLIPFORMAT_UserMarshal( unsigned long *, unsigned char *, CLIPFORMAT * );
  9734. unsigned char * __RPC_USER CLIPFORMAT_UserUnmarshal(unsigned long *, unsigned char *, CLIPFORMAT * );
  9735. void __RPC_USER CLIPFORMAT_UserFree( unsigned long *, CLIPFORMAT * );
  9736. unsigned long __RPC_USER FLAG_STGMEDIUM_UserSize( unsigned long *, unsigned long , FLAG_STGMEDIUM * );
  9737. unsigned char * __RPC_USER FLAG_STGMEDIUM_UserMarshal( unsigned long *, unsigned char *, FLAG_STGMEDIUM * );
  9738. unsigned char * __RPC_USER FLAG_STGMEDIUM_UserUnmarshal(unsigned long *, unsigned char *, FLAG_STGMEDIUM * );
  9739. void __RPC_USER FLAG_STGMEDIUM_UserFree( unsigned long *, FLAG_STGMEDIUM * );
  9740. unsigned long __RPC_USER HBITMAP_UserSize( unsigned long *, unsigned long , HBITMAP * );
  9741. unsigned char * __RPC_USER HBITMAP_UserMarshal( unsigned long *, unsigned char *, HBITMAP * );
  9742. unsigned char * __RPC_USER HBITMAP_UserUnmarshal(unsigned long *, unsigned char *, HBITMAP * );
  9743. void __RPC_USER HBITMAP_UserFree( unsigned long *, HBITMAP * );
  9744. unsigned long __RPC_USER HDC_UserSize( unsigned long *, unsigned long , HDC * );
  9745. unsigned char * __RPC_USER HDC_UserMarshal( unsigned long *, unsigned char *, HDC * );
  9746. unsigned char * __RPC_USER HDC_UserUnmarshal(unsigned long *, unsigned char *, HDC * );
  9747. void __RPC_USER HDC_UserFree( unsigned long *, HDC * );
  9748. unsigned long __RPC_USER HICON_UserSize( unsigned long *, unsigned long , HICON * );
  9749. unsigned char * __RPC_USER HICON_UserMarshal( unsigned long *, unsigned char *, HICON * );
  9750. unsigned char * __RPC_USER HICON_UserUnmarshal(unsigned long *, unsigned char *, HICON * );
  9751. void __RPC_USER HICON_UserFree( unsigned long *, HICON * );
  9752. unsigned long __RPC_USER SNB_UserSize( unsigned long *, unsigned long , SNB * );
  9753. unsigned char * __RPC_USER SNB_UserMarshal( unsigned long *, unsigned char *, SNB * );
  9754. unsigned char * __RPC_USER SNB_UserUnmarshal(unsigned long *, unsigned char *, SNB * );
  9755. void __RPC_USER SNB_UserFree( unsigned long *, SNB * );
  9756. unsigned long __RPC_USER STGMEDIUM_UserSize( unsigned long *, unsigned long , STGMEDIUM * );
  9757. unsigned char * __RPC_USER STGMEDIUM_UserMarshal( unsigned long *, unsigned char *, STGMEDIUM * );
  9758. unsigned char * __RPC_USER STGMEDIUM_UserUnmarshal(unsigned long *, unsigned char *, STGMEDIUM * );
  9759. void __RPC_USER STGMEDIUM_UserFree( unsigned long *, STGMEDIUM * );
  9760. /* [local] */ HRESULT STDMETHODCALLTYPE IEnumUnknown_Next_Proxy(
  9761. IEnumUnknown * This,
  9762. /* [in] */ ULONG celt,
  9763. /* [out] */ IUnknown **rgelt,
  9764. /* [out] */ ULONG *pceltFetched);
  9765. /* [call_as] */ HRESULT STDMETHODCALLTYPE IEnumUnknown_Next_Stub(
  9766. IEnumUnknown * This,
  9767. /* [in] */ ULONG celt,
  9768. /* [length_is][size_is][out] */ IUnknown **rgelt,
  9769. /* [out] */ ULONG *pceltFetched);
  9770. /* [local] */ HRESULT STDMETHODCALLTYPE IBindCtx_SetBindOptions_Proxy(
  9771. IBindCtx * This,
  9772. /* [in] */ BIND_OPTS *pbindopts);
  9773. /* [call_as] */ HRESULT STDMETHODCALLTYPE IBindCtx_SetBindOptions_Stub(
  9774. IBindCtx * This,
  9775. /* [in] */ BIND_OPTS2 *pbindopts);
  9776. /* [local] */ HRESULT STDMETHODCALLTYPE IBindCtx_GetBindOptions_Proxy(
  9777. IBindCtx * This,
  9778. /* [out][in] */ BIND_OPTS *pbindopts);
  9779. /* [call_as] */ HRESULT STDMETHODCALLTYPE IBindCtx_GetBindOptions_Stub(
  9780. IBindCtx * This,
  9781. /* [out][in] */ BIND_OPTS2 *pbindopts);
  9782. /* [local] */ HRESULT STDMETHODCALLTYPE IEnumMoniker_Next_Proxy(
  9783. IEnumMoniker * This,
  9784. /* [in] */ ULONG celt,
  9785. /* [length_is][size_is][out] */ IMoniker **rgelt,
  9786. /* [out] */ ULONG *pceltFetched);
  9787. /* [call_as] */ HRESULT STDMETHODCALLTYPE IEnumMoniker_Next_Stub(
  9788. IEnumMoniker * This,
  9789. /* [in] */ ULONG celt,
  9790. /* [length_is][size_is][out] */ IMoniker **rgelt,
  9791. /* [out] */ ULONG *pceltFetched);
  9792. /* [local] */ BOOL STDMETHODCALLTYPE IRunnableObject_IsRunning_Proxy(
  9793. IRunnableObject * This);
  9794. /* [call_as] */ HRESULT STDMETHODCALLTYPE IRunnableObject_IsRunning_Stub(
  9795. IRunnableObject * This);
  9796. /* [local] */ HRESULT STDMETHODCALLTYPE IMoniker_BindToObject_Proxy(
  9797. IMoniker * This,
  9798. /* [unique][in] */ IBindCtx *pbc,
  9799. /* [unique][in] */ IMoniker *pmkToLeft,
  9800. /* [in] */ REFIID riidResult,
  9801. /* [iid_is][out] */ void **ppvResult);
  9802. /* [call_as] */ HRESULT STDMETHODCALLTYPE IMoniker_BindToObject_Stub(
  9803. IMoniker * This,
  9804. /* [unique][in] */ IBindCtx *pbc,
  9805. /* [unique][in] */ IMoniker *pmkToLeft,
  9806. /* [in] */ REFIID riidResult,
  9807. /* [iid_is][out] */ IUnknown **ppvResult);
  9808. /* [local] */ HRESULT STDMETHODCALLTYPE IMoniker_BindToStorage_Proxy(
  9809. IMoniker * This,
  9810. /* [unique][in] */ IBindCtx *pbc,
  9811. /* [unique][in] */ IMoniker *pmkToLeft,
  9812. /* [in] */ REFIID riid,
  9813. /* [iid_is][out] */ void **ppvObj);
  9814. /* [call_as] */ HRESULT STDMETHODCALLTYPE IMoniker_BindToStorage_Stub(
  9815. IMoniker * This,
  9816. /* [unique][in] */ IBindCtx *pbc,
  9817. /* [unique][in] */ IMoniker *pmkToLeft,
  9818. /* [in] */ REFIID riid,
  9819. /* [iid_is][out] */ IUnknown **ppvObj);
  9820. /* [local] */ HRESULT STDMETHODCALLTYPE IEnumString_Next_Proxy(
  9821. IEnumString * This,
  9822. /* [in] */ ULONG celt,
  9823. /* [length_is][size_is][out] */ LPOLESTR *rgelt,
  9824. /* [out] */ ULONG *pceltFetched);
  9825. /* [call_as] */ HRESULT STDMETHODCALLTYPE IEnumString_Next_Stub(
  9826. IEnumString * This,
  9827. /* [in] */ ULONG celt,
  9828. /* [length_is][size_is][out] */ LPOLESTR *rgelt,
  9829. /* [out] */ ULONG *pceltFetched);
  9830. /* [local] */ HRESULT STDMETHODCALLTYPE ISequentialStream_Read_Proxy(
  9831. ISequentialStream * This,
  9832. /* [length_is][size_is][out] */ void *pv,
  9833. /* [in] */ ULONG cb,
  9834. /* [out] */ ULONG *pcbRead);
  9835. /* [call_as] */ HRESULT STDMETHODCALLTYPE ISequentialStream_Read_Stub(
  9836. ISequentialStream * This,
  9837. /* [length_is][size_is][out] */ byte *pv,
  9838. /* [in] */ ULONG cb,
  9839. /* [out] */ ULONG *pcbRead);
  9840. /* [local] */ HRESULT STDMETHODCALLTYPE ISequentialStream_Write_Proxy(
  9841. ISequentialStream * This,
  9842. /* [size_is][in] */ const void *pv,
  9843. /* [in] */ ULONG cb,
  9844. /* [out] */ ULONG *pcbWritten);
  9845. /* [call_as] */ HRESULT STDMETHODCALLTYPE ISequentialStream_Write_Stub(
  9846. ISequentialStream * This,
  9847. /* [size_is][in] */ const byte *pv,
  9848. /* [in] */ ULONG cb,
  9849. /* [out] */ ULONG *pcbWritten);
  9850. /* [local] */ HRESULT STDMETHODCALLTYPE IStream_Seek_Proxy(
  9851. IStream * This,
  9852. /* [in] */ LARGE_INTEGER dlibMove,
  9853. /* [in] */ DWORD dwOrigin,
  9854. /* [out] */ ULARGE_INTEGER *plibNewPosition);
  9855. /* [call_as] */ HRESULT STDMETHODCALLTYPE IStream_Seek_Stub(
  9856. IStream * This,
  9857. /* [in] */ LARGE_INTEGER dlibMove,
  9858. /* [in] */ DWORD dwOrigin,
  9859. /* [out] */ ULARGE_INTEGER *plibNewPosition);
  9860. /* [local] */ HRESULT STDMETHODCALLTYPE IStream_CopyTo_Proxy(
  9861. IStream * This,
  9862. /* [unique][in] */ IStream *pstm,
  9863. /* [in] */ ULARGE_INTEGER cb,
  9864. /* [out] */ ULARGE_INTEGER *pcbRead,
  9865. /* [out] */ ULARGE_INTEGER *pcbWritten);
  9866. /* [call_as] */ HRESULT STDMETHODCALLTYPE IStream_CopyTo_Stub(
  9867. IStream * This,
  9868. /* [unique][in] */ IStream *pstm,
  9869. /* [in] */ ULARGE_INTEGER cb,
  9870. /* [out] */ ULARGE_INTEGER *pcbRead,
  9871. /* [out] */ ULARGE_INTEGER *pcbWritten);
  9872. /* [local] */ HRESULT STDMETHODCALLTYPE IEnumSTATSTG_Next_Proxy(
  9873. IEnumSTATSTG * This,
  9874. /* [in] */ ULONG celt,
  9875. /* [length_is][size_is][out] */ STATSTG *rgelt,
  9876. /* [out] */ ULONG *pceltFetched);
  9877. /* [call_as] */ HRESULT STDMETHODCALLTYPE IEnumSTATSTG_Next_Stub(
  9878. IEnumSTATSTG * This,
  9879. /* [in] */ ULONG celt,
  9880. /* [length_is][size_is][out] */ STATSTG *rgelt,
  9881. /* [out] */ ULONG *pceltFetched);
  9882. /* [local] */ HRESULT STDMETHODCALLTYPE IStorage_OpenStream_Proxy(
  9883. IStorage * This,
  9884. /* [string][in] */ const OLECHAR *pwcsName,
  9885. /* [unique][in] */ void *reserved1,
  9886. /* [in] */ DWORD grfMode,
  9887. /* [in] */ DWORD reserved2,
  9888. /* [out] */ IStream **ppstm);
  9889. /* [call_as] */ HRESULT STDMETHODCALLTYPE IStorage_OpenStream_Stub(
  9890. IStorage * This,
  9891. /* [string][in] */ const OLECHAR *pwcsName,
  9892. /* [in] */ unsigned long cbReserved1,
  9893. /* [size_is][unique][in] */ byte *reserved1,
  9894. /* [in] */ DWORD grfMode,
  9895. /* [in] */ DWORD reserved2,
  9896. /* [out] */ IStream **ppstm);
  9897. /* [local] */ HRESULT STDMETHODCALLTYPE IStorage_EnumElements_Proxy(
  9898. IStorage * This,
  9899. /* [in] */ DWORD reserved1,
  9900. /* [size_is][unique][in] */ void *reserved2,
  9901. /* [in] */ DWORD reserved3,
  9902. /* [out] */ IEnumSTATSTG **ppenum);
  9903. /* [call_as] */ HRESULT STDMETHODCALLTYPE IStorage_EnumElements_Stub(
  9904. IStorage * This,
  9905. /* [in] */ DWORD reserved1,
  9906. /* [in] */ unsigned long cbReserved2,
  9907. /* [size_is][unique][in] */ byte *reserved2,
  9908. /* [in] */ DWORD reserved3,
  9909. /* [out] */ IEnumSTATSTG **ppenum);
  9910. /* [local] */ HRESULT STDMETHODCALLTYPE ILockBytes_ReadAt_Proxy(
  9911. ILockBytes * This,
  9912. /* [in] */ ULARGE_INTEGER ulOffset,
  9913. /* [length_is][size_is][out] */ void *pv,
  9914. /* [in] */ ULONG cb,
  9915. /* [out] */ ULONG *pcbRead);
  9916. /* [call_as] */ HRESULT __stdcall ILockBytes_ReadAt_Stub(
  9917. ILockBytes * This,
  9918. /* [in] */ ULARGE_INTEGER ulOffset,
  9919. /* [length_is][size_is][out] */ byte *pv,
  9920. /* [in] */ ULONG cb,
  9921. /* [out] */ ULONG *pcbRead);
  9922. /* [local] */ HRESULT STDMETHODCALLTYPE ILockBytes_WriteAt_Proxy(
  9923. ILockBytes * This,
  9924. /* [in] */ ULARGE_INTEGER ulOffset,
  9925. /* [size_is][in] */ const void *pv,
  9926. /* [in] */ ULONG cb,
  9927. /* [out] */ ULONG *pcbWritten);
  9928. /* [call_as] */ HRESULT STDMETHODCALLTYPE ILockBytes_WriteAt_Stub(
  9929. ILockBytes * This,
  9930. /* [in] */ ULARGE_INTEGER ulOffset,
  9931. /* [size_is][in] */ const byte *pv,
  9932. /* [in] */ ULONG cb,
  9933. /* [out] */ ULONG *pcbWritten);
  9934. /* [local] */ HRESULT STDMETHODCALLTYPE IEnumFORMATETC_Next_Proxy(
  9935. IEnumFORMATETC * This,
  9936. /* [in] */ ULONG celt,
  9937. /* [length_is][size_is][out] */ FORMATETC *rgelt,
  9938. /* [out] */ ULONG *pceltFetched);
  9939. /* [call_as] */ HRESULT STDMETHODCALLTYPE IEnumFORMATETC_Next_Stub(
  9940. IEnumFORMATETC * This,
  9941. /* [in] */ ULONG celt,
  9942. /* [length_is][size_is][out] */ FORMATETC *rgelt,
  9943. /* [out] */ ULONG *pceltFetched);
  9944. /* [local] */ HRESULT STDMETHODCALLTYPE IEnumSTATDATA_Next_Proxy(
  9945. IEnumSTATDATA * This,
  9946. /* [in] */ ULONG celt,
  9947. /* [length_is][size_is][out] */ STATDATA *rgelt,
  9948. /* [out] */ ULONG *pceltFetched);
  9949. /* [call_as] */ HRESULT STDMETHODCALLTYPE IEnumSTATDATA_Next_Stub(
  9950. IEnumSTATDATA * This,
  9951. /* [in] */ ULONG celt,
  9952. /* [length_is][size_is][out] */ STATDATA *rgelt,
  9953. /* [out] */ ULONG *pceltFetched);
  9954. /* [local] */ void STDMETHODCALLTYPE IAdviseSink_OnDataChange_Proxy(
  9955. IAdviseSink * This,
  9956. /* [unique][in] */ FORMATETC *pFormatetc,
  9957. /* [unique][in] */ STGMEDIUM *pStgmed);
  9958. /* [call_as] */ HRESULT STDMETHODCALLTYPE IAdviseSink_OnDataChange_Stub(
  9959. IAdviseSink * This,
  9960. /* [unique][in] */ FORMATETC *pFormatetc,
  9961. /* [unique][in] */ ASYNC_STGMEDIUM *pStgmed);
  9962. /* [local] */ void STDMETHODCALLTYPE IAdviseSink_OnViewChange_Proxy(
  9963. IAdviseSink * This,
  9964. /* [in] */ DWORD dwAspect,
  9965. /* [in] */ LONG lindex);
  9966. /* [call_as] */ HRESULT STDMETHODCALLTYPE IAdviseSink_OnViewChange_Stub(
  9967. IAdviseSink * This,
  9968. /* [in] */ DWORD dwAspect,
  9969. /* [in] */ LONG lindex);
  9970. /* [local] */ void STDMETHODCALLTYPE IAdviseSink_OnRename_Proxy(
  9971. IAdviseSink * This,
  9972. /* [in] */ IMoniker *pmk);
  9973. /* [call_as] */ HRESULT STDMETHODCALLTYPE IAdviseSink_OnRename_Stub(
  9974. IAdviseSink * This,
  9975. /* [in] */ IMoniker *pmk);
  9976. /* [local] */ void STDMETHODCALLTYPE IAdviseSink_OnSave_Proxy(
  9977. IAdviseSink * This);
  9978. /* [call_as] */ HRESULT STDMETHODCALLTYPE IAdviseSink_OnSave_Stub(
  9979. IAdviseSink * This);
  9980. /* [local] */ void STDMETHODCALLTYPE IAdviseSink_OnClose_Proxy(
  9981. IAdviseSink * This);
  9982. /* [call_as] */ HRESULT STDMETHODCALLTYPE IAdviseSink_OnClose_Stub(
  9983. IAdviseSink * This);
  9984. /* [local] */ void STDMETHODCALLTYPE IAdviseSink2_OnLinkSrcChange_Proxy(
  9985. IAdviseSink2 * This,
  9986. /* [unique][in] */ IMoniker *pmk);
  9987. /* [call_as] */ HRESULT STDMETHODCALLTYPE IAdviseSink2_OnLinkSrcChange_Stub(
  9988. IAdviseSink2 * This,
  9989. /* [unique][in] */ IMoniker *pmk);
  9990. /* [local] */ HRESULT STDMETHODCALLTYPE IDataObject_GetData_Proxy(
  9991. IDataObject * This,
  9992. /* [unique][in] */ FORMATETC *pformatetcIn,
  9993. /* [out] */ STGMEDIUM *pmedium);
  9994. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDataObject_GetData_Stub(
  9995. IDataObject * This,
  9996. /* [unique][in] */ FORMATETC *pformatetcIn,
  9997. /* [out] */ STGMEDIUM *pRemoteMedium);
  9998. /* [local] */ HRESULT STDMETHODCALLTYPE IDataObject_GetDataHere_Proxy(
  9999. IDataObject * This,
  10000. /* [unique][in] */ FORMATETC *pformatetc,
  10001. /* [out][in] */ STGMEDIUM *pmedium);
  10002. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDataObject_GetDataHere_Stub(
  10003. IDataObject * This,
  10004. /* [unique][in] */ FORMATETC *pformatetc,
  10005. /* [out][in] */ STGMEDIUM *pRemoteMedium);
  10006. /* [local] */ HRESULT STDMETHODCALLTYPE IDataObject_SetData_Proxy(
  10007. IDataObject * This,
  10008. /* [unique][in] */ FORMATETC *pformatetc,
  10009. /* [unique][in] */ STGMEDIUM *pmedium,
  10010. /* [in] */ BOOL fRelease);
  10011. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDataObject_SetData_Stub(
  10012. IDataObject * This,
  10013. /* [unique][in] */ FORMATETC *pformatetc,
  10014. /* [unique][in] */ FLAG_STGMEDIUM *pmedium,
  10015. /* [in] */ BOOL fRelease);
  10016. /* [local] */ HRESULT STDMETHODCALLTYPE IFillLockBytes_FillAppend_Proxy(
  10017. IFillLockBytes * This,
  10018. /* [size_is][in] */ const void *pv,
  10019. /* [in] */ ULONG cb,
  10020. /* [out] */ ULONG *pcbWritten);
  10021. /* [call_as] */ HRESULT __stdcall IFillLockBytes_FillAppend_Stub(
  10022. IFillLockBytes * This,
  10023. /* [size_is][in] */ const byte *pv,
  10024. /* [in] */ ULONG cb,
  10025. /* [out] */ ULONG *pcbWritten);
  10026. /* [local] */ HRESULT STDMETHODCALLTYPE IFillLockBytes_FillAt_Proxy(
  10027. IFillLockBytes * This,
  10028. /* [in] */ ULARGE_INTEGER ulOffset,
  10029. /* [size_is][in] */ const void *pv,
  10030. /* [in] */ ULONG cb,
  10031. /* [out] */ ULONG *pcbWritten);
  10032. /* [call_as] */ HRESULT __stdcall IFillLockBytes_FillAt_Stub(
  10033. IFillLockBytes * This,
  10034. /* [in] */ ULARGE_INTEGER ulOffset,
  10035. /* [size_is][in] */ const byte *pv,
  10036. /* [in] */ ULONG cb,
  10037. /* [out] */ ULONG *pcbWritten);
  10038. /* [local] */ void STDMETHODCALLTYPE AsyncIAdviseSink_Begin_OnDataChange_Proxy(
  10039. AsyncIAdviseSink * This,
  10040. /* [unique][in] */ FORMATETC *pFormatetc,
  10041. /* [unique][in] */ STGMEDIUM *pStgmed);
  10042. /* [call_as] */ HRESULT STDMETHODCALLTYPE AsyncIAdviseSink_Begin_OnDataChange_Stub(
  10043. AsyncIAdviseSink * This,
  10044. /* [unique][in] */ FORMATETC *pFormatetc,
  10045. /* [unique][in] */ ASYNC_STGMEDIUM *pStgmed);
  10046. /* [local] */ void STDMETHODCALLTYPE AsyncIAdviseSink_Finish_OnDataChange_Proxy(
  10047. AsyncIAdviseSink * This);
  10048. /* [call_as] */ HRESULT STDMETHODCALLTYPE AsyncIAdviseSink_Finish_OnDataChange_Stub(
  10049. AsyncIAdviseSink * This);
  10050. /* [local] */ void STDMETHODCALLTYPE AsyncIAdviseSink_Begin_OnViewChange_Proxy(
  10051. AsyncIAdviseSink * This,
  10052. /* [in] */ DWORD dwAspect,
  10053. /* [in] */ LONG lindex);
  10054. /* [call_as] */ HRESULT STDMETHODCALLTYPE AsyncIAdviseSink_Begin_OnViewChange_Stub(
  10055. AsyncIAdviseSink * This,
  10056. /* [in] */ DWORD dwAspect,
  10057. /* [in] */ LONG lindex);
  10058. /* [local] */ void STDMETHODCALLTYPE AsyncIAdviseSink_Finish_OnViewChange_Proxy(
  10059. AsyncIAdviseSink * This);
  10060. /* [call_as] */ HRESULT STDMETHODCALLTYPE AsyncIAdviseSink_Finish_OnViewChange_Stub(
  10061. AsyncIAdviseSink * This);
  10062. /* [local] */ void STDMETHODCALLTYPE AsyncIAdviseSink_Begin_OnRename_Proxy(
  10063. AsyncIAdviseSink * This,
  10064. /* [in] */ IMoniker *pmk);
  10065. /* [call_as] */ HRESULT STDMETHODCALLTYPE AsyncIAdviseSink_Begin_OnRename_Stub(
  10066. AsyncIAdviseSink * This,
  10067. /* [in] */ IMoniker *pmk);
  10068. /* [local] */ void STDMETHODCALLTYPE AsyncIAdviseSink_Finish_OnRename_Proxy(
  10069. AsyncIAdviseSink * This);
  10070. /* [call_as] */ HRESULT STDMETHODCALLTYPE AsyncIAdviseSink_Finish_OnRename_Stub(
  10071. AsyncIAdviseSink * This);
  10072. /* [local] */ void STDMETHODCALLTYPE AsyncIAdviseSink_Begin_OnSave_Proxy(
  10073. AsyncIAdviseSink * This);
  10074. /* [call_as] */ HRESULT STDMETHODCALLTYPE AsyncIAdviseSink_Begin_OnSave_Stub(
  10075. AsyncIAdviseSink * This);
  10076. /* [local] */ void STDMETHODCALLTYPE AsyncIAdviseSink_Finish_OnSave_Proxy(
  10077. AsyncIAdviseSink * This);
  10078. /* [call_as] */ HRESULT STDMETHODCALLTYPE AsyncIAdviseSink_Finish_OnSave_Stub(
  10079. AsyncIAdviseSink * This);
  10080. /* [local] */ void STDMETHODCALLTYPE AsyncIAdviseSink_Begin_OnClose_Proxy(
  10081. AsyncIAdviseSink * This);
  10082. /* [call_as] */ HRESULT STDMETHODCALLTYPE AsyncIAdviseSink_Begin_OnClose_Stub(
  10083. AsyncIAdviseSink * This);
  10084. /* [local] */ void STDMETHODCALLTYPE AsyncIAdviseSink_Finish_OnClose_Proxy(
  10085. AsyncIAdviseSink * This);
  10086. /* [call_as] */ HRESULT STDMETHODCALLTYPE AsyncIAdviseSink_Finish_OnClose_Stub(
  10087. AsyncIAdviseSink * This);
  10088. /* [local] */ void STDMETHODCALLTYPE AsyncIAdviseSink2_Begin_OnLinkSrcChange_Proxy(
  10089. AsyncIAdviseSink2 * This,
  10090. /* [unique][in] */ IMoniker *pmk);
  10091. /* [call_as] */ HRESULT STDMETHODCALLTYPE AsyncIAdviseSink2_Begin_OnLinkSrcChange_Stub(
  10092. AsyncIAdviseSink2 * This,
  10093. /* [unique][in] */ IMoniker *pmk);
  10094. /* [local] */ void STDMETHODCALLTYPE AsyncIAdviseSink2_Finish_OnLinkSrcChange_Proxy(
  10095. AsyncIAdviseSink2 * This);
  10096. /* [call_as] */ HRESULT STDMETHODCALLTYPE AsyncIAdviseSink2_Finish_OnLinkSrcChange_Stub(
  10097. AsyncIAdviseSink2 * This);
  10098. /* end of Additional Prototypes */
  10099. #ifdef __cplusplus
  10100. }
  10101. #endif
  10102. #endif