Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1212 lines
37 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. /* at Fri Sep 06 11:15:44 2002
  5. */
  6. /* Compiler settings for cordac.idl:
  7. Oicf, W1, Zp8, env=Win32 (32b run)
  8. protocol : dce , ms_ext, c_ext
  9. error checks: allocation ref bounds_check enum stub_data , no_format_optimization
  10. VC __declspec() decoration level:
  11. __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  12. DECLSPEC_UUID(), MIDL_INTERFACE()
  13. */
  14. //@@MIDL_FILE_HEADING( )
  15. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  16. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  17. #define __REQUIRED_RPCNDR_H_VERSION__ 440
  18. #endif
  19. #include "rpc.h"
  20. #include "rpcndr.h"
  21. #ifndef __RPCNDR_H_VERSION__
  22. #error this stub requires an updated version of <rpcndr.h>
  23. #endif // __RPCNDR_H_VERSION__
  24. #ifndef COM_NO_WINDOWS_H
  25. #include "windows.h"
  26. #include "ole2.h"
  27. #endif /*COM_NO_WINDOWS_H*/
  28. #ifndef __cordac_h__
  29. #define __cordac_h__
  30. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  31. #pragma once
  32. #endif
  33. /* Forward Declarations */
  34. #ifndef __ICorDataAccessServices_FWD_DEFINED__
  35. #define __ICorDataAccessServices_FWD_DEFINED__
  36. typedef interface ICorDataAccessServices ICorDataAccessServices;
  37. #endif /* __ICorDataAccessServices_FWD_DEFINED__ */
  38. #ifndef __ICorDataEnumMemoryRegions_FWD_DEFINED__
  39. #define __ICorDataEnumMemoryRegions_FWD_DEFINED__
  40. typedef interface ICorDataEnumMemoryRegions ICorDataEnumMemoryRegions;
  41. #endif /* __ICorDataEnumMemoryRegions_FWD_DEFINED__ */
  42. #ifndef __ICorDataAccess_FWD_DEFINED__
  43. #define __ICorDataAccess_FWD_DEFINED__
  44. typedef interface ICorDataAccess ICorDataAccess;
  45. #endif /* __ICorDataAccess_FWD_DEFINED__ */
  46. #ifndef __ICorDataStackWalk_FWD_DEFINED__
  47. #define __ICorDataStackWalk_FWD_DEFINED__
  48. typedef interface ICorDataStackWalk ICorDataStackWalk;
  49. #endif /* __ICorDataStackWalk_FWD_DEFINED__ */
  50. #ifndef __ICorDataThreads_FWD_DEFINED__
  51. #define __ICorDataThreads_FWD_DEFINED__
  52. typedef interface ICorDataThreads ICorDataThreads;
  53. #endif /* __ICorDataThreads_FWD_DEFINED__ */
  54. /* header files for imported files */
  55. #include "unknwn.h"
  56. #ifdef __cplusplus
  57. extern "C"{
  58. #endif
  59. void * __RPC_USER MIDL_user_allocate(size_t);
  60. void __RPC_USER MIDL_user_free( void * );
  61. /* interface __MIDL_itf_cordac_0000 */
  62. /* [local] */
  63. #if 0
  64. typedef UINT32 mdToken;
  65. typedef mdToken mdMethodDef;
  66. #endif
  67. typedef ULONG64 CORDATA_ADDRESS;
  68. STDAPI CreateCorDataAccess(REFIID iid, ICorDataAccessServices* services, void** access);
  69. typedef HRESULT (STDAPICALLTYPE* PFN_CreateCorDataAccess)(REFIID iid, ICorDataAccessServices* services, void** access);
  70. extern RPC_IF_HANDLE __MIDL_itf_cordac_0000_v0_0_c_ifspec;
  71. extern RPC_IF_HANDLE __MIDL_itf_cordac_0000_v0_0_s_ifspec;
  72. #ifndef __ICorDataAccessServices_INTERFACE_DEFINED__
  73. #define __ICorDataAccessServices_INTERFACE_DEFINED__
  74. /* interface ICorDataAccessServices */
  75. /* [unique][uuid][object] */
  76. EXTERN_C const IID IID_ICorDataAccessServices;
  77. #if defined(__cplusplus) && !defined(CINTERFACE)
  78. MIDL_INTERFACE("1ecab4f2-1303-4764-b388-f7bfbfa82647")
  79. ICorDataAccessServices : public IUnknown
  80. {
  81. public:
  82. virtual HRESULT STDMETHODCALLTYPE GetMachineType(
  83. /* [out] */ ULONG32 *machine) = 0;
  84. virtual HRESULT STDMETHODCALLTYPE GetPointerSize(
  85. /* [out] */ ULONG32 *size) = 0;
  86. virtual HRESULT STDMETHODCALLTYPE GetImageBase(
  87. /* [string][in] */ LPCWSTR name,
  88. /* [out] */ CORDATA_ADDRESS *base) = 0;
  89. virtual HRESULT STDMETHODCALLTYPE ReadVirtual(
  90. /* [in] */ CORDATA_ADDRESS address,
  91. /* [length_is][size_is][out] */ BYTE *buffer,
  92. /* [in] */ ULONG32 request,
  93. /* [out] */ ULONG32 *done) = 0;
  94. virtual HRESULT STDMETHODCALLTYPE WriteVirtual(
  95. /* [in] */ CORDATA_ADDRESS address,
  96. /* [size_is][in] */ BYTE *buffer,
  97. /* [in] */ ULONG32 request,
  98. /* [out] */ ULONG32 *done) = 0;
  99. virtual HRESULT STDMETHODCALLTYPE GetTlsValue(
  100. /* [in] */ ULONG32 index,
  101. /* [out] */ CORDATA_ADDRESS *value) = 0;
  102. virtual HRESULT STDMETHODCALLTYPE SetTlsValue(
  103. /* [in] */ ULONG32 index,
  104. /* [in] */ CORDATA_ADDRESS value) = 0;
  105. virtual HRESULT STDMETHODCALLTYPE GetCurrentThreadId(
  106. /* [out] */ ULONG32 *threadId) = 0;
  107. virtual HRESULT STDMETHODCALLTYPE GetThreadContext(
  108. /* [in] */ ULONG32 threadId,
  109. /* [in] */ ULONG32 contextFlags,
  110. /* [in] */ ULONG32 contextSize,
  111. /* [size_is][out] */ BYTE *context) = 0;
  112. virtual HRESULT STDMETHODCALLTYPE SetThreadContext(
  113. /* [in] */ ULONG32 threadId,
  114. /* [in] */ ULONG32 contextSize,
  115. /* [size_is][in] */ BYTE *context) = 0;
  116. };
  117. #else /* C style interface */
  118. typedef struct ICorDataAccessServicesVtbl
  119. {
  120. BEGIN_INTERFACE
  121. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  122. ICorDataAccessServices * This,
  123. /* [in] */ REFIID riid,
  124. /* [iid_is][out] */ void **ppvObject);
  125. ULONG ( STDMETHODCALLTYPE *AddRef )(
  126. ICorDataAccessServices * This);
  127. ULONG ( STDMETHODCALLTYPE *Release )(
  128. ICorDataAccessServices * This);
  129. HRESULT ( STDMETHODCALLTYPE *GetMachineType )(
  130. ICorDataAccessServices * This,
  131. /* [out] */ ULONG32 *machine);
  132. HRESULT ( STDMETHODCALLTYPE *GetPointerSize )(
  133. ICorDataAccessServices * This,
  134. /* [out] */ ULONG32 *size);
  135. HRESULT ( STDMETHODCALLTYPE *GetImageBase )(
  136. ICorDataAccessServices * This,
  137. /* [string][in] */ LPCWSTR name,
  138. /* [out] */ CORDATA_ADDRESS *base);
  139. HRESULT ( STDMETHODCALLTYPE *ReadVirtual )(
  140. ICorDataAccessServices * This,
  141. /* [in] */ CORDATA_ADDRESS address,
  142. /* [length_is][size_is][out] */ BYTE *buffer,
  143. /* [in] */ ULONG32 request,
  144. /* [out] */ ULONG32 *done);
  145. HRESULT ( STDMETHODCALLTYPE *WriteVirtual )(
  146. ICorDataAccessServices * This,
  147. /* [in] */ CORDATA_ADDRESS address,
  148. /* [size_is][in] */ BYTE *buffer,
  149. /* [in] */ ULONG32 request,
  150. /* [out] */ ULONG32 *done);
  151. HRESULT ( STDMETHODCALLTYPE *GetTlsValue )(
  152. ICorDataAccessServices * This,
  153. /* [in] */ ULONG32 index,
  154. /* [out] */ CORDATA_ADDRESS *value);
  155. HRESULT ( STDMETHODCALLTYPE *SetTlsValue )(
  156. ICorDataAccessServices * This,
  157. /* [in] */ ULONG32 index,
  158. /* [in] */ CORDATA_ADDRESS value);
  159. HRESULT ( STDMETHODCALLTYPE *GetCurrentThreadId )(
  160. ICorDataAccessServices * This,
  161. /* [out] */ ULONG32 *threadId);
  162. HRESULT ( STDMETHODCALLTYPE *GetThreadContext )(
  163. ICorDataAccessServices * This,
  164. /* [in] */ ULONG32 threadId,
  165. /* [in] */ ULONG32 contextFlags,
  166. /* [in] */ ULONG32 contextSize,
  167. /* [size_is][out] */ BYTE *context);
  168. HRESULT ( STDMETHODCALLTYPE *SetThreadContext )(
  169. ICorDataAccessServices * This,
  170. /* [in] */ ULONG32 threadId,
  171. /* [in] */ ULONG32 contextSize,
  172. /* [size_is][in] */ BYTE *context);
  173. END_INTERFACE
  174. } ICorDataAccessServicesVtbl;
  175. interface ICorDataAccessServices
  176. {
  177. CONST_VTBL struct ICorDataAccessServicesVtbl *lpVtbl;
  178. };
  179. #ifdef COBJMACROS
  180. #define ICorDataAccessServices_QueryInterface(This,riid,ppvObject) \
  181. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  182. #define ICorDataAccessServices_AddRef(This) \
  183. (This)->lpVtbl -> AddRef(This)
  184. #define ICorDataAccessServices_Release(This) \
  185. (This)->lpVtbl -> Release(This)
  186. #define ICorDataAccessServices_GetMachineType(This,machine) \
  187. (This)->lpVtbl -> GetMachineType(This,machine)
  188. #define ICorDataAccessServices_GetPointerSize(This,size) \
  189. (This)->lpVtbl -> GetPointerSize(This,size)
  190. #define ICorDataAccessServices_GetImageBase(This,name,base) \
  191. (This)->lpVtbl -> GetImageBase(This,name,base)
  192. #define ICorDataAccessServices_ReadVirtual(This,address,buffer,request,done) \
  193. (This)->lpVtbl -> ReadVirtual(This,address,buffer,request,done)
  194. #define ICorDataAccessServices_WriteVirtual(This,address,buffer,request,done) \
  195. (This)->lpVtbl -> WriteVirtual(This,address,buffer,request,done)
  196. #define ICorDataAccessServices_GetTlsValue(This,index,value) \
  197. (This)->lpVtbl -> GetTlsValue(This,index,value)
  198. #define ICorDataAccessServices_SetTlsValue(This,index,value) \
  199. (This)->lpVtbl -> SetTlsValue(This,index,value)
  200. #define ICorDataAccessServices_GetCurrentThreadId(This,threadId) \
  201. (This)->lpVtbl -> GetCurrentThreadId(This,threadId)
  202. #define ICorDataAccessServices_GetThreadContext(This,threadId,contextFlags,contextSize,context) \
  203. (This)->lpVtbl -> GetThreadContext(This,threadId,contextFlags,contextSize,context)
  204. #define ICorDataAccessServices_SetThreadContext(This,threadId,contextSize,context) \
  205. (This)->lpVtbl -> SetThreadContext(This,threadId,contextSize,context)
  206. #endif /* COBJMACROS */
  207. #endif /* C style interface */
  208. HRESULT STDMETHODCALLTYPE ICorDataAccessServices_GetMachineType_Proxy(
  209. ICorDataAccessServices * This,
  210. /* [out] */ ULONG32 *machine);
  211. void __RPC_STUB ICorDataAccessServices_GetMachineType_Stub(
  212. IRpcStubBuffer *This,
  213. IRpcChannelBuffer *_pRpcChannelBuffer,
  214. PRPC_MESSAGE _pRpcMessage,
  215. DWORD *_pdwStubPhase);
  216. HRESULT STDMETHODCALLTYPE ICorDataAccessServices_GetPointerSize_Proxy(
  217. ICorDataAccessServices * This,
  218. /* [out] */ ULONG32 *size);
  219. void __RPC_STUB ICorDataAccessServices_GetPointerSize_Stub(
  220. IRpcStubBuffer *This,
  221. IRpcChannelBuffer *_pRpcChannelBuffer,
  222. PRPC_MESSAGE _pRpcMessage,
  223. DWORD *_pdwStubPhase);
  224. HRESULT STDMETHODCALLTYPE ICorDataAccessServices_GetImageBase_Proxy(
  225. ICorDataAccessServices * This,
  226. /* [string][in] */ LPCWSTR name,
  227. /* [out] */ CORDATA_ADDRESS *base);
  228. void __RPC_STUB ICorDataAccessServices_GetImageBase_Stub(
  229. IRpcStubBuffer *This,
  230. IRpcChannelBuffer *_pRpcChannelBuffer,
  231. PRPC_MESSAGE _pRpcMessage,
  232. DWORD *_pdwStubPhase);
  233. HRESULT STDMETHODCALLTYPE ICorDataAccessServices_ReadVirtual_Proxy(
  234. ICorDataAccessServices * This,
  235. /* [in] */ CORDATA_ADDRESS address,
  236. /* [length_is][size_is][out] */ BYTE *buffer,
  237. /* [in] */ ULONG32 request,
  238. /* [out] */ ULONG32 *done);
  239. void __RPC_STUB ICorDataAccessServices_ReadVirtual_Stub(
  240. IRpcStubBuffer *This,
  241. IRpcChannelBuffer *_pRpcChannelBuffer,
  242. PRPC_MESSAGE _pRpcMessage,
  243. DWORD *_pdwStubPhase);
  244. HRESULT STDMETHODCALLTYPE ICorDataAccessServices_WriteVirtual_Proxy(
  245. ICorDataAccessServices * This,
  246. /* [in] */ CORDATA_ADDRESS address,
  247. /* [size_is][in] */ BYTE *buffer,
  248. /* [in] */ ULONG32 request,
  249. /* [out] */ ULONG32 *done);
  250. void __RPC_STUB ICorDataAccessServices_WriteVirtual_Stub(
  251. IRpcStubBuffer *This,
  252. IRpcChannelBuffer *_pRpcChannelBuffer,
  253. PRPC_MESSAGE _pRpcMessage,
  254. DWORD *_pdwStubPhase);
  255. HRESULT STDMETHODCALLTYPE ICorDataAccessServices_GetTlsValue_Proxy(
  256. ICorDataAccessServices * This,
  257. /* [in] */ ULONG32 index,
  258. /* [out] */ CORDATA_ADDRESS *value);
  259. void __RPC_STUB ICorDataAccessServices_GetTlsValue_Stub(
  260. IRpcStubBuffer *This,
  261. IRpcChannelBuffer *_pRpcChannelBuffer,
  262. PRPC_MESSAGE _pRpcMessage,
  263. DWORD *_pdwStubPhase);
  264. HRESULT STDMETHODCALLTYPE ICorDataAccessServices_SetTlsValue_Proxy(
  265. ICorDataAccessServices * This,
  266. /* [in] */ ULONG32 index,
  267. /* [in] */ CORDATA_ADDRESS value);
  268. void __RPC_STUB ICorDataAccessServices_SetTlsValue_Stub(
  269. IRpcStubBuffer *This,
  270. IRpcChannelBuffer *_pRpcChannelBuffer,
  271. PRPC_MESSAGE _pRpcMessage,
  272. DWORD *_pdwStubPhase);
  273. HRESULT STDMETHODCALLTYPE ICorDataAccessServices_GetCurrentThreadId_Proxy(
  274. ICorDataAccessServices * This,
  275. /* [out] */ ULONG32 *threadId);
  276. void __RPC_STUB ICorDataAccessServices_GetCurrentThreadId_Stub(
  277. IRpcStubBuffer *This,
  278. IRpcChannelBuffer *_pRpcChannelBuffer,
  279. PRPC_MESSAGE _pRpcMessage,
  280. DWORD *_pdwStubPhase);
  281. HRESULT STDMETHODCALLTYPE ICorDataAccessServices_GetThreadContext_Proxy(
  282. ICorDataAccessServices * This,
  283. /* [in] */ ULONG32 threadId,
  284. /* [in] */ ULONG32 contextFlags,
  285. /* [in] */ ULONG32 contextSize,
  286. /* [size_is][out] */ BYTE *context);
  287. void __RPC_STUB ICorDataAccessServices_GetThreadContext_Stub(
  288. IRpcStubBuffer *This,
  289. IRpcChannelBuffer *_pRpcChannelBuffer,
  290. PRPC_MESSAGE _pRpcMessage,
  291. DWORD *_pdwStubPhase);
  292. HRESULT STDMETHODCALLTYPE ICorDataAccessServices_SetThreadContext_Proxy(
  293. ICorDataAccessServices * This,
  294. /* [in] */ ULONG32 threadId,
  295. /* [in] */ ULONG32 contextSize,
  296. /* [size_is][in] */ BYTE *context);
  297. void __RPC_STUB ICorDataAccessServices_SetThreadContext_Stub(
  298. IRpcStubBuffer *This,
  299. IRpcChannelBuffer *_pRpcChannelBuffer,
  300. PRPC_MESSAGE _pRpcMessage,
  301. DWORD *_pdwStubPhase);
  302. #endif /* __ICorDataAccessServices_INTERFACE_DEFINED__ */
  303. #ifndef __ICorDataEnumMemoryRegions_INTERFACE_DEFINED__
  304. #define __ICorDataEnumMemoryRegions_INTERFACE_DEFINED__
  305. /* interface ICorDataEnumMemoryRegions */
  306. /* [unique][uuid][object] */
  307. EXTERN_C const IID IID_ICorDataEnumMemoryRegions;
  308. #if defined(__cplusplus) && !defined(CINTERFACE)
  309. MIDL_INTERFACE("b09a7a62-dc77-4e5a-96c6-3ae64870d3cc")
  310. ICorDataEnumMemoryRegions : public IUnknown
  311. {
  312. public:
  313. virtual HRESULT STDMETHODCALLTYPE EnumMemoryRegion(
  314. /* [in] */ CORDATA_ADDRESS address,
  315. /* [in] */ ULONG32 size) = 0;
  316. };
  317. #else /* C style interface */
  318. typedef struct ICorDataEnumMemoryRegionsVtbl
  319. {
  320. BEGIN_INTERFACE
  321. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  322. ICorDataEnumMemoryRegions * This,
  323. /* [in] */ REFIID riid,
  324. /* [iid_is][out] */ void **ppvObject);
  325. ULONG ( STDMETHODCALLTYPE *AddRef )(
  326. ICorDataEnumMemoryRegions * This);
  327. ULONG ( STDMETHODCALLTYPE *Release )(
  328. ICorDataEnumMemoryRegions * This);
  329. HRESULT ( STDMETHODCALLTYPE *EnumMemoryRegion )(
  330. ICorDataEnumMemoryRegions * This,
  331. /* [in] */ CORDATA_ADDRESS address,
  332. /* [in] */ ULONG32 size);
  333. END_INTERFACE
  334. } ICorDataEnumMemoryRegionsVtbl;
  335. interface ICorDataEnumMemoryRegions
  336. {
  337. CONST_VTBL struct ICorDataEnumMemoryRegionsVtbl *lpVtbl;
  338. };
  339. #ifdef COBJMACROS
  340. #define ICorDataEnumMemoryRegions_QueryInterface(This,riid,ppvObject) \
  341. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  342. #define ICorDataEnumMemoryRegions_AddRef(This) \
  343. (This)->lpVtbl -> AddRef(This)
  344. #define ICorDataEnumMemoryRegions_Release(This) \
  345. (This)->lpVtbl -> Release(This)
  346. #define ICorDataEnumMemoryRegions_EnumMemoryRegion(This,address,size) \
  347. (This)->lpVtbl -> EnumMemoryRegion(This,address,size)
  348. #endif /* COBJMACROS */
  349. #endif /* C style interface */
  350. HRESULT STDMETHODCALLTYPE ICorDataEnumMemoryRegions_EnumMemoryRegion_Proxy(
  351. ICorDataEnumMemoryRegions * This,
  352. /* [in] */ CORDATA_ADDRESS address,
  353. /* [in] */ ULONG32 size);
  354. void __RPC_STUB ICorDataEnumMemoryRegions_EnumMemoryRegion_Stub(
  355. IRpcStubBuffer *This,
  356. IRpcChannelBuffer *_pRpcChannelBuffer,
  357. PRPC_MESSAGE _pRpcMessage,
  358. DWORD *_pdwStubPhase);
  359. #endif /* __ICorDataEnumMemoryRegions_INTERFACE_DEFINED__ */
  360. #ifndef __ICorDataAccess_INTERFACE_DEFINED__
  361. #define __ICorDataAccess_INTERFACE_DEFINED__
  362. /* interface ICorDataAccess */
  363. /* [unique][uuid][object] */
  364. typedef
  365. enum CorDataStackWalkFlags
  366. { DAC_STACK_ALL_FRAMES = 0,
  367. DAC_STACK_COR_FRAMES = 0x1,
  368. DAC_STACK_COR_METHOD_FRAMES = 0x2
  369. } CorDataStackWalkFlags;
  370. typedef
  371. enum CorDataEnumMemoryFlags
  372. { DAC_ENUM_MEM_DEFAULT = 0
  373. } CorDataEnumMemoryFlags;
  374. EXTERN_C const IID IID_ICorDataAccess;
  375. #if defined(__cplusplus) && !defined(CINTERFACE)
  376. MIDL_INTERFACE("6222a81f-3aab-4926-a583-8495743523fb")
  377. ICorDataAccess : public IUnknown
  378. {
  379. public:
  380. virtual HRESULT STDMETHODCALLTYPE Flush( void) = 0;
  381. virtual HRESULT STDMETHODCALLTYPE IsCorCode(
  382. /* [in] */ CORDATA_ADDRESS address) = 0;
  383. virtual HRESULT STDMETHODCALLTYPE GetILOffsetFromTargetAddress(
  384. /* [in] */ CORDATA_ADDRESS address,
  385. /* [out] */ CORDATA_ADDRESS *moduleBase,
  386. /* [out] */ mdMethodDef *methodDef,
  387. /* [out] */ ULONG32 *offset) = 0;
  388. virtual HRESULT STDMETHODCALLTYPE GetCodeSymbolForTargetAddress(
  389. /* [in] */ CORDATA_ADDRESS address,
  390. /* [size_is][string][out] */ LPWSTR symbol,
  391. /* [in] */ ULONG32 symbolChars,
  392. /* [out] */ CORDATA_ADDRESS *displacement) = 0;
  393. virtual HRESULT STDMETHODCALLTYPE StartStackWalk(
  394. /* [in] */ ULONG32 corThreadId,
  395. /* [in] */ CorDataStackWalkFlags flags,
  396. /* [out] */ ICorDataStackWalk **walk) = 0;
  397. virtual HRESULT STDMETHODCALLTYPE EnumMemoryRegions(
  398. /* [in] */ ICorDataEnumMemoryRegions *callback,
  399. /* [in] */ CorDataEnumMemoryFlags flags) = 0;
  400. virtual HRESULT STDMETHODCALLTYPE Request(
  401. /* [in] */ ULONG32 reqCode,
  402. /* [in] */ ULONG32 inBufferSize,
  403. /* [size_is][in] */ BYTE *inBuffer,
  404. /* [in] */ ULONG32 outBufferSize,
  405. /* [size_is][out] */ BYTE *outBuffer) = 0;
  406. };
  407. #else /* C style interface */
  408. typedef struct ICorDataAccessVtbl
  409. {
  410. BEGIN_INTERFACE
  411. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  412. ICorDataAccess * This,
  413. /* [in] */ REFIID riid,
  414. /* [iid_is][out] */ void **ppvObject);
  415. ULONG ( STDMETHODCALLTYPE *AddRef )(
  416. ICorDataAccess * This);
  417. ULONG ( STDMETHODCALLTYPE *Release )(
  418. ICorDataAccess * This);
  419. HRESULT ( STDMETHODCALLTYPE *Flush )(
  420. ICorDataAccess * This);
  421. HRESULT ( STDMETHODCALLTYPE *IsCorCode )(
  422. ICorDataAccess * This,
  423. /* [in] */ CORDATA_ADDRESS address);
  424. HRESULT ( STDMETHODCALLTYPE *GetILOffsetFromTargetAddress )(
  425. ICorDataAccess * This,
  426. /* [in] */ CORDATA_ADDRESS address,
  427. /* [out] */ CORDATA_ADDRESS *moduleBase,
  428. /* [out] */ mdMethodDef *methodDef,
  429. /* [out] */ ULONG32 *offset);
  430. HRESULT ( STDMETHODCALLTYPE *GetCodeSymbolForTargetAddress )(
  431. ICorDataAccess * This,
  432. /* [in] */ CORDATA_ADDRESS address,
  433. /* [size_is][string][out] */ LPWSTR symbol,
  434. /* [in] */ ULONG32 symbolChars,
  435. /* [out] */ CORDATA_ADDRESS *displacement);
  436. HRESULT ( STDMETHODCALLTYPE *StartStackWalk )(
  437. ICorDataAccess * This,
  438. /* [in] */ ULONG32 corThreadId,
  439. /* [in] */ CorDataStackWalkFlags flags,
  440. /* [out] */ ICorDataStackWalk **walk);
  441. HRESULT ( STDMETHODCALLTYPE *EnumMemoryRegions )(
  442. ICorDataAccess * This,
  443. /* [in] */ ICorDataEnumMemoryRegions *callback,
  444. /* [in] */ CorDataEnumMemoryFlags flags);
  445. HRESULT ( STDMETHODCALLTYPE *Request )(
  446. ICorDataAccess * This,
  447. /* [in] */ ULONG32 reqCode,
  448. /* [in] */ ULONG32 inBufferSize,
  449. /* [size_is][in] */ BYTE *inBuffer,
  450. /* [in] */ ULONG32 outBufferSize,
  451. /* [size_is][out] */ BYTE *outBuffer);
  452. END_INTERFACE
  453. } ICorDataAccessVtbl;
  454. interface ICorDataAccess
  455. {
  456. CONST_VTBL struct ICorDataAccessVtbl *lpVtbl;
  457. };
  458. #ifdef COBJMACROS
  459. #define ICorDataAccess_QueryInterface(This,riid,ppvObject) \
  460. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  461. #define ICorDataAccess_AddRef(This) \
  462. (This)->lpVtbl -> AddRef(This)
  463. #define ICorDataAccess_Release(This) \
  464. (This)->lpVtbl -> Release(This)
  465. #define ICorDataAccess_Flush(This) \
  466. (This)->lpVtbl -> Flush(This)
  467. #define ICorDataAccess_IsCorCode(This,address) \
  468. (This)->lpVtbl -> IsCorCode(This,address)
  469. #define ICorDataAccess_GetILOffsetFromTargetAddress(This,address,moduleBase,methodDef,offset) \
  470. (This)->lpVtbl -> GetILOffsetFromTargetAddress(This,address,moduleBase,methodDef,offset)
  471. #define ICorDataAccess_GetCodeSymbolForTargetAddress(This,address,symbol,symbolChars,displacement) \
  472. (This)->lpVtbl -> GetCodeSymbolForTargetAddress(This,address,symbol,symbolChars,displacement)
  473. #define ICorDataAccess_StartStackWalk(This,corThreadId,flags,walk) \
  474. (This)->lpVtbl -> StartStackWalk(This,corThreadId,flags,walk)
  475. #define ICorDataAccess_EnumMemoryRegions(This,callback,flags) \
  476. (This)->lpVtbl -> EnumMemoryRegions(This,callback,flags)
  477. #define ICorDataAccess_Request(This,reqCode,inBufferSize,inBuffer,outBufferSize,outBuffer) \
  478. (This)->lpVtbl -> Request(This,reqCode,inBufferSize,inBuffer,outBufferSize,outBuffer)
  479. #endif /* COBJMACROS */
  480. #endif /* C style interface */
  481. HRESULT STDMETHODCALLTYPE ICorDataAccess_Flush_Proxy(
  482. ICorDataAccess * This);
  483. void __RPC_STUB ICorDataAccess_Flush_Stub(
  484. IRpcStubBuffer *This,
  485. IRpcChannelBuffer *_pRpcChannelBuffer,
  486. PRPC_MESSAGE _pRpcMessage,
  487. DWORD *_pdwStubPhase);
  488. HRESULT STDMETHODCALLTYPE ICorDataAccess_IsCorCode_Proxy(
  489. ICorDataAccess * This,
  490. /* [in] */ CORDATA_ADDRESS address);
  491. void __RPC_STUB ICorDataAccess_IsCorCode_Stub(
  492. IRpcStubBuffer *This,
  493. IRpcChannelBuffer *_pRpcChannelBuffer,
  494. PRPC_MESSAGE _pRpcMessage,
  495. DWORD *_pdwStubPhase);
  496. HRESULT STDMETHODCALLTYPE ICorDataAccess_GetILOffsetFromTargetAddress_Proxy(
  497. ICorDataAccess * This,
  498. /* [in] */ CORDATA_ADDRESS address,
  499. /* [out] */ CORDATA_ADDRESS *moduleBase,
  500. /* [out] */ mdMethodDef *methodDef,
  501. /* [out] */ ULONG32 *offset);
  502. void __RPC_STUB ICorDataAccess_GetILOffsetFromTargetAddress_Stub(
  503. IRpcStubBuffer *This,
  504. IRpcChannelBuffer *_pRpcChannelBuffer,
  505. PRPC_MESSAGE _pRpcMessage,
  506. DWORD *_pdwStubPhase);
  507. HRESULT STDMETHODCALLTYPE ICorDataAccess_GetCodeSymbolForTargetAddress_Proxy(
  508. ICorDataAccess * This,
  509. /* [in] */ CORDATA_ADDRESS address,
  510. /* [size_is][string][out] */ LPWSTR symbol,
  511. /* [in] */ ULONG32 symbolChars,
  512. /* [out] */ CORDATA_ADDRESS *displacement);
  513. void __RPC_STUB ICorDataAccess_GetCodeSymbolForTargetAddress_Stub(
  514. IRpcStubBuffer *This,
  515. IRpcChannelBuffer *_pRpcChannelBuffer,
  516. PRPC_MESSAGE _pRpcMessage,
  517. DWORD *_pdwStubPhase);
  518. HRESULT STDMETHODCALLTYPE ICorDataAccess_StartStackWalk_Proxy(
  519. ICorDataAccess * This,
  520. /* [in] */ ULONG32 corThreadId,
  521. /* [in] */ CorDataStackWalkFlags flags,
  522. /* [out] */ ICorDataStackWalk **walk);
  523. void __RPC_STUB ICorDataAccess_StartStackWalk_Stub(
  524. IRpcStubBuffer *This,
  525. IRpcChannelBuffer *_pRpcChannelBuffer,
  526. PRPC_MESSAGE _pRpcMessage,
  527. DWORD *_pdwStubPhase);
  528. HRESULT STDMETHODCALLTYPE ICorDataAccess_EnumMemoryRegions_Proxy(
  529. ICorDataAccess * This,
  530. /* [in] */ ICorDataEnumMemoryRegions *callback,
  531. /* [in] */ CorDataEnumMemoryFlags flags);
  532. void __RPC_STUB ICorDataAccess_EnumMemoryRegions_Stub(
  533. IRpcStubBuffer *This,
  534. IRpcChannelBuffer *_pRpcChannelBuffer,
  535. PRPC_MESSAGE _pRpcMessage,
  536. DWORD *_pdwStubPhase);
  537. HRESULT STDMETHODCALLTYPE ICorDataAccess_Request_Proxy(
  538. ICorDataAccess * This,
  539. /* [in] */ ULONG32 reqCode,
  540. /* [in] */ ULONG32 inBufferSize,
  541. /* [size_is][in] */ BYTE *inBuffer,
  542. /* [in] */ ULONG32 outBufferSize,
  543. /* [size_is][out] */ BYTE *outBuffer);
  544. void __RPC_STUB ICorDataAccess_Request_Stub(
  545. IRpcStubBuffer *This,
  546. IRpcChannelBuffer *_pRpcChannelBuffer,
  547. PRPC_MESSAGE _pRpcMessage,
  548. DWORD *_pdwStubPhase);
  549. #endif /* __ICorDataAccess_INTERFACE_DEFINED__ */
  550. #ifndef __ICorDataStackWalk_INTERFACE_DEFINED__
  551. #define __ICorDataStackWalk_INTERFACE_DEFINED__
  552. /* interface ICorDataStackWalk */
  553. /* [unique][uuid][object] */
  554. typedef
  555. enum CorDataFrameType
  556. { DAC_FRAME_UNRECOGNIZED = 0,
  557. DAC_FRAME_COR_FRAME = DAC_FRAME_UNRECOGNIZED + 1,
  558. DAC_FRAME_COR_METHOD_FRAME = DAC_FRAME_COR_FRAME + 1
  559. } CorDataFrameType;
  560. EXTERN_C const IID IID_ICorDataStackWalk;
  561. #if defined(__cplusplus) && !defined(CINTERFACE)
  562. MIDL_INTERFACE("e2140180-6101-4b12-beaf-c74dcda31a65")
  563. ICorDataStackWalk : public IUnknown
  564. {
  565. public:
  566. virtual HRESULT STDMETHODCALLTYPE GetCorFrame(
  567. /* [out] */ CORDATA_ADDRESS *corFrame) = 0;
  568. virtual HRESULT STDMETHODCALLTYPE GetFrameDescription(
  569. /* [out] */ CorDataFrameType *type,
  570. /* [size_is][string][out] */ LPWSTR text,
  571. /* [in] */ ULONG32 textChars) = 0;
  572. virtual HRESULT STDMETHODCALLTYPE GetFrameContext(
  573. /* [in] */ ULONG32 contextSize,
  574. /* [size_is][out] */ BYTE *context) = 0;
  575. virtual HRESULT STDMETHODCALLTYPE SetFrameContext(
  576. /* [in] */ ULONG32 contextSize,
  577. /* [size_is][in] */ BYTE *context) = 0;
  578. virtual HRESULT STDMETHODCALLTYPE UnwindFrame( void) = 0;
  579. };
  580. #else /* C style interface */
  581. typedef struct ICorDataStackWalkVtbl
  582. {
  583. BEGIN_INTERFACE
  584. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  585. ICorDataStackWalk * This,
  586. /* [in] */ REFIID riid,
  587. /* [iid_is][out] */ void **ppvObject);
  588. ULONG ( STDMETHODCALLTYPE *AddRef )(
  589. ICorDataStackWalk * This);
  590. ULONG ( STDMETHODCALLTYPE *Release )(
  591. ICorDataStackWalk * This);
  592. HRESULT ( STDMETHODCALLTYPE *GetCorFrame )(
  593. ICorDataStackWalk * This,
  594. /* [out] */ CORDATA_ADDRESS *corFrame);
  595. HRESULT ( STDMETHODCALLTYPE *GetFrameDescription )(
  596. ICorDataStackWalk * This,
  597. /* [out] */ CorDataFrameType *type,
  598. /* [size_is][string][out] */ LPWSTR text,
  599. /* [in] */ ULONG32 textChars);
  600. HRESULT ( STDMETHODCALLTYPE *GetFrameContext )(
  601. ICorDataStackWalk * This,
  602. /* [in] */ ULONG32 contextSize,
  603. /* [size_is][out] */ BYTE *context);
  604. HRESULT ( STDMETHODCALLTYPE *SetFrameContext )(
  605. ICorDataStackWalk * This,
  606. /* [in] */ ULONG32 contextSize,
  607. /* [size_is][in] */ BYTE *context);
  608. HRESULT ( STDMETHODCALLTYPE *UnwindFrame )(
  609. ICorDataStackWalk * This);
  610. END_INTERFACE
  611. } ICorDataStackWalkVtbl;
  612. interface ICorDataStackWalk
  613. {
  614. CONST_VTBL struct ICorDataStackWalkVtbl *lpVtbl;
  615. };
  616. #ifdef COBJMACROS
  617. #define ICorDataStackWalk_QueryInterface(This,riid,ppvObject) \
  618. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  619. #define ICorDataStackWalk_AddRef(This) \
  620. (This)->lpVtbl -> AddRef(This)
  621. #define ICorDataStackWalk_Release(This) \
  622. (This)->lpVtbl -> Release(This)
  623. #define ICorDataStackWalk_GetCorFrame(This,corFrame) \
  624. (This)->lpVtbl -> GetCorFrame(This,corFrame)
  625. #define ICorDataStackWalk_GetFrameDescription(This,type,text,textChars) \
  626. (This)->lpVtbl -> GetFrameDescription(This,type,text,textChars)
  627. #define ICorDataStackWalk_GetFrameContext(This,contextSize,context) \
  628. (This)->lpVtbl -> GetFrameContext(This,contextSize,context)
  629. #define ICorDataStackWalk_SetFrameContext(This,contextSize,context) \
  630. (This)->lpVtbl -> SetFrameContext(This,contextSize,context)
  631. #define ICorDataStackWalk_UnwindFrame(This) \
  632. (This)->lpVtbl -> UnwindFrame(This)
  633. #endif /* COBJMACROS */
  634. #endif /* C style interface */
  635. HRESULT STDMETHODCALLTYPE ICorDataStackWalk_GetCorFrame_Proxy(
  636. ICorDataStackWalk * This,
  637. /* [out] */ CORDATA_ADDRESS *corFrame);
  638. void __RPC_STUB ICorDataStackWalk_GetCorFrame_Stub(
  639. IRpcStubBuffer *This,
  640. IRpcChannelBuffer *_pRpcChannelBuffer,
  641. PRPC_MESSAGE _pRpcMessage,
  642. DWORD *_pdwStubPhase);
  643. HRESULT STDMETHODCALLTYPE ICorDataStackWalk_GetFrameDescription_Proxy(
  644. ICorDataStackWalk * This,
  645. /* [out] */ CorDataFrameType *type,
  646. /* [size_is][string][out] */ LPWSTR text,
  647. /* [in] */ ULONG32 textChars);
  648. void __RPC_STUB ICorDataStackWalk_GetFrameDescription_Stub(
  649. IRpcStubBuffer *This,
  650. IRpcChannelBuffer *_pRpcChannelBuffer,
  651. PRPC_MESSAGE _pRpcMessage,
  652. DWORD *_pdwStubPhase);
  653. HRESULT STDMETHODCALLTYPE ICorDataStackWalk_GetFrameContext_Proxy(
  654. ICorDataStackWalk * This,
  655. /* [in] */ ULONG32 contextSize,
  656. /* [size_is][out] */ BYTE *context);
  657. void __RPC_STUB ICorDataStackWalk_GetFrameContext_Stub(
  658. IRpcStubBuffer *This,
  659. IRpcChannelBuffer *_pRpcChannelBuffer,
  660. PRPC_MESSAGE _pRpcMessage,
  661. DWORD *_pdwStubPhase);
  662. HRESULT STDMETHODCALLTYPE ICorDataStackWalk_SetFrameContext_Proxy(
  663. ICorDataStackWalk * This,
  664. /* [in] */ ULONG32 contextSize,
  665. /* [size_is][in] */ BYTE *context);
  666. void __RPC_STUB ICorDataStackWalk_SetFrameContext_Stub(
  667. IRpcStubBuffer *This,
  668. IRpcChannelBuffer *_pRpcChannelBuffer,
  669. PRPC_MESSAGE _pRpcMessage,
  670. DWORD *_pdwStubPhase);
  671. HRESULT STDMETHODCALLTYPE ICorDataStackWalk_UnwindFrame_Proxy(
  672. ICorDataStackWalk * This);
  673. void __RPC_STUB ICorDataStackWalk_UnwindFrame_Stub(
  674. IRpcStubBuffer *This,
  675. IRpcChannelBuffer *_pRpcChannelBuffer,
  676. PRPC_MESSAGE _pRpcMessage,
  677. DWORD *_pdwStubPhase);
  678. #endif /* __ICorDataStackWalk_INTERFACE_DEFINED__ */
  679. #ifndef __ICorDataThreads_INTERFACE_DEFINED__
  680. #define __ICorDataThreads_INTERFACE_DEFINED__
  681. /* interface ICorDataThreads */
  682. /* [unique][uuid][object] */
  683. EXTERN_C const IID IID_ICorDataThreads;
  684. #if defined(__cplusplus) && !defined(CINTERFACE)
  685. MIDL_INTERFACE("24d34d86-52fc-4e64-b2fb-f4d14070ae44")
  686. ICorDataThreads : public IUnknown
  687. {
  688. public:
  689. virtual HRESULT STDMETHODCALLTYPE GetCurrentCorThread(
  690. /* [out] */ ULONG32 *corThreadId,
  691. /* [out] */ CORDATA_ADDRESS *corThread) = 0;
  692. virtual HRESULT STDMETHODCALLTYPE GetNumberCorThreads(
  693. /* [out] */ ULONG32 *numThreads) = 0;
  694. virtual HRESULT STDMETHODCALLTYPE EnumCorThreads(
  695. /* [in] */ CORDATA_ADDRESS startThread,
  696. /* [out] */ ULONG32 *corThreadId,
  697. /* [out] */ ULONG32 *runningOnSysThreadId,
  698. /* [out] */ CORDATA_ADDRESS *nextThread) = 0;
  699. virtual HRESULT STDMETHODCALLTYPE GetCorThreadContext(
  700. /* [in] */ ULONG32 corThreadId,
  701. /* [in] */ ULONG32 contextFlags,
  702. /* [in] */ ULONG32 contextSize,
  703. /* [size_is][out] */ BYTE *context) = 0;
  704. virtual HRESULT STDMETHODCALLTYPE SetCorThreadContext(
  705. /* [in] */ ULONG32 corThreadId,
  706. /* [in] */ ULONG32 contextSize,
  707. /* [size_is][out] */ BYTE *context) = 0;
  708. };
  709. #else /* C style interface */
  710. typedef struct ICorDataThreadsVtbl
  711. {
  712. BEGIN_INTERFACE
  713. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  714. ICorDataThreads * This,
  715. /* [in] */ REFIID riid,
  716. /* [iid_is][out] */ void **ppvObject);
  717. ULONG ( STDMETHODCALLTYPE *AddRef )(
  718. ICorDataThreads * This);
  719. ULONG ( STDMETHODCALLTYPE *Release )(
  720. ICorDataThreads * This);
  721. HRESULT ( STDMETHODCALLTYPE *GetCurrentCorThread )(
  722. ICorDataThreads * This,
  723. /* [out] */ ULONG32 *corThreadId,
  724. /* [out] */ CORDATA_ADDRESS *corThread);
  725. HRESULT ( STDMETHODCALLTYPE *GetNumberCorThreads )(
  726. ICorDataThreads * This,
  727. /* [out] */ ULONG32 *numThreads);
  728. HRESULT ( STDMETHODCALLTYPE *EnumCorThreads )(
  729. ICorDataThreads * This,
  730. /* [in] */ CORDATA_ADDRESS startThread,
  731. /* [out] */ ULONG32 *corThreadId,
  732. /* [out] */ ULONG32 *runningOnSysThreadId,
  733. /* [out] */ CORDATA_ADDRESS *nextThread);
  734. HRESULT ( STDMETHODCALLTYPE *GetCorThreadContext )(
  735. ICorDataThreads * This,
  736. /* [in] */ ULONG32 corThreadId,
  737. /* [in] */ ULONG32 contextFlags,
  738. /* [in] */ ULONG32 contextSize,
  739. /* [size_is][out] */ BYTE *context);
  740. HRESULT ( STDMETHODCALLTYPE *SetCorThreadContext )(
  741. ICorDataThreads * This,
  742. /* [in] */ ULONG32 corThreadId,
  743. /* [in] */ ULONG32 contextSize,
  744. /* [size_is][out] */ BYTE *context);
  745. END_INTERFACE
  746. } ICorDataThreadsVtbl;
  747. interface ICorDataThreads
  748. {
  749. CONST_VTBL struct ICorDataThreadsVtbl *lpVtbl;
  750. };
  751. #ifdef COBJMACROS
  752. #define ICorDataThreads_QueryInterface(This,riid,ppvObject) \
  753. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  754. #define ICorDataThreads_AddRef(This) \
  755. (This)->lpVtbl -> AddRef(This)
  756. #define ICorDataThreads_Release(This) \
  757. (This)->lpVtbl -> Release(This)
  758. #define ICorDataThreads_GetCurrentCorThread(This,corThreadId,corThread) \
  759. (This)->lpVtbl -> GetCurrentCorThread(This,corThreadId,corThread)
  760. #define ICorDataThreads_GetNumberCorThreads(This,numThreads) \
  761. (This)->lpVtbl -> GetNumberCorThreads(This,numThreads)
  762. #define ICorDataThreads_EnumCorThreads(This,startThread,corThreadId,runningOnSysThreadId,nextThread) \
  763. (This)->lpVtbl -> EnumCorThreads(This,startThread,corThreadId,runningOnSysThreadId,nextThread)
  764. #define ICorDataThreads_GetCorThreadContext(This,corThreadId,contextFlags,contextSize,context) \
  765. (This)->lpVtbl -> GetCorThreadContext(This,corThreadId,contextFlags,contextSize,context)
  766. #define ICorDataThreads_SetCorThreadContext(This,corThreadId,contextSize,context) \
  767. (This)->lpVtbl -> SetCorThreadContext(This,corThreadId,contextSize,context)
  768. #endif /* COBJMACROS */
  769. #endif /* C style interface */
  770. HRESULT STDMETHODCALLTYPE ICorDataThreads_GetCurrentCorThread_Proxy(
  771. ICorDataThreads * This,
  772. /* [out] */ ULONG32 *corThreadId,
  773. /* [out] */ CORDATA_ADDRESS *corThread);
  774. void __RPC_STUB ICorDataThreads_GetCurrentCorThread_Stub(
  775. IRpcStubBuffer *This,
  776. IRpcChannelBuffer *_pRpcChannelBuffer,
  777. PRPC_MESSAGE _pRpcMessage,
  778. DWORD *_pdwStubPhase);
  779. HRESULT STDMETHODCALLTYPE ICorDataThreads_GetNumberCorThreads_Proxy(
  780. ICorDataThreads * This,
  781. /* [out] */ ULONG32 *numThreads);
  782. void __RPC_STUB ICorDataThreads_GetNumberCorThreads_Stub(
  783. IRpcStubBuffer *This,
  784. IRpcChannelBuffer *_pRpcChannelBuffer,
  785. PRPC_MESSAGE _pRpcMessage,
  786. DWORD *_pdwStubPhase);
  787. HRESULT STDMETHODCALLTYPE ICorDataThreads_EnumCorThreads_Proxy(
  788. ICorDataThreads * This,
  789. /* [in] */ CORDATA_ADDRESS startThread,
  790. /* [out] */ ULONG32 *corThreadId,
  791. /* [out] */ ULONG32 *runningOnSysThreadId,
  792. /* [out] */ CORDATA_ADDRESS *nextThread);
  793. void __RPC_STUB ICorDataThreads_EnumCorThreads_Stub(
  794. IRpcStubBuffer *This,
  795. IRpcChannelBuffer *_pRpcChannelBuffer,
  796. PRPC_MESSAGE _pRpcMessage,
  797. DWORD *_pdwStubPhase);
  798. HRESULT STDMETHODCALLTYPE ICorDataThreads_GetCorThreadContext_Proxy(
  799. ICorDataThreads * This,
  800. /* [in] */ ULONG32 corThreadId,
  801. /* [in] */ ULONG32 contextFlags,
  802. /* [in] */ ULONG32 contextSize,
  803. /* [size_is][out] */ BYTE *context);
  804. void __RPC_STUB ICorDataThreads_GetCorThreadContext_Stub(
  805. IRpcStubBuffer *This,
  806. IRpcChannelBuffer *_pRpcChannelBuffer,
  807. PRPC_MESSAGE _pRpcMessage,
  808. DWORD *_pdwStubPhase);
  809. HRESULT STDMETHODCALLTYPE ICorDataThreads_SetCorThreadContext_Proxy(
  810. ICorDataThreads * This,
  811. /* [in] */ ULONG32 corThreadId,
  812. /* [in] */ ULONG32 contextSize,
  813. /* [size_is][out] */ BYTE *context);
  814. void __RPC_STUB ICorDataThreads_SetCorThreadContext_Stub(
  815. IRpcStubBuffer *This,
  816. IRpcChannelBuffer *_pRpcChannelBuffer,
  817. PRPC_MESSAGE _pRpcMessage,
  818. DWORD *_pdwStubPhase);
  819. #endif /* __ICorDataThreads_INTERFACE_DEFINED__ */
  820. /* Additional Prototypes for ALL interfaces */
  821. /* end of Additional Prototypes */
  822. #ifdef __cplusplus
  823. }
  824. #endif
  825. #endif