home *** CD-ROM | disk | FTP | other *** search
/ io Programmo 40 / IOPROG_40.ISO / SOFT / NETFrameworkSDK.exe / comsdk.cab / mscoree.h < prev    next >
Encoding:
C/C++ Source or Header  |  2000-06-23  |  52.6 KB  |  1,666 lines

  1. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  2.  
  3.  
  4. /* File created by MIDL compiler version 5.01.0164 */
  5. /* at Fri Jun 23 00:40:11 2000
  6.  */
  7. /* Compiler settings for mscoree.idl:
  8.     Oicf (OptLev=i2), W1, Zp8, env=Win32, ms_ext, c_ext
  9.     error checks: allocation ref bounds_check enum stub_data , no_format_optimization
  10. */
  11. //@@MIDL_FILE_HEADING(  )
  12.  
  13.  
  14. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  15. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  16. #define __REQUIRED_RPCNDR_H_VERSION__ 440
  17. #endif
  18.  
  19. #include "rpc.h"
  20. #include "rpcndr.h"
  21.  
  22. #ifndef __RPCNDR_H_VERSION__
  23. #error this stub requires an updated version of <rpcndr.h>
  24. #endif // __RPCNDR_H_VERSION__
  25.  
  26. #ifndef COM_NO_WINDOWS_H
  27. #include "windows.h"
  28. #include "ole2.h"
  29. #endif /*COM_NO_WINDOWS_H*/
  30.  
  31. #ifndef __mscoree_h__
  32. #define __mscoree_h__
  33.  
  34. #ifdef __cplusplus
  35. extern "C"{
  36. #endif 
  37.  
  38. /* Forward Declarations */ 
  39.  
  40. #ifndef __IObjectHandle_FWD_DEFINED__
  41. #define __IObjectHandle_FWD_DEFINED__
  42. typedef interface IObjectHandle IObjectHandle;
  43. #endif     /* __IObjectHandle_FWD_DEFINED__ */
  44.  
  45.  
  46. #ifndef __IAppDomainBinding_FWD_DEFINED__
  47. #define __IAppDomainBinding_FWD_DEFINED__
  48. typedef interface IAppDomainBinding IAppDomainBinding;
  49. #endif     /* __IAppDomainBinding_FWD_DEFINED__ */
  50.  
  51.  
  52. #ifndef __IGCThreadControl_FWD_DEFINED__
  53. #define __IGCThreadControl_FWD_DEFINED__
  54. typedef interface IGCThreadControl IGCThreadControl;
  55. #endif     /* __IGCThreadControl_FWD_DEFINED__ */
  56.  
  57.  
  58. #ifndef __ICorThreadpool_FWD_DEFINED__
  59. #define __ICorThreadpool_FWD_DEFINED__
  60. typedef interface ICorThreadpool ICorThreadpool;
  61. #endif     /* __ICorThreadpool_FWD_DEFINED__ */
  62.  
  63.  
  64. #ifndef __IDebuggerThreadControl_FWD_DEFINED__
  65. #define __IDebuggerThreadControl_FWD_DEFINED__
  66. typedef interface IDebuggerThreadControl IDebuggerThreadControl;
  67. #endif     /* __IDebuggerThreadControl_FWD_DEFINED__ */
  68.  
  69.  
  70. #ifndef __ICorConfiguration_FWD_DEFINED__
  71. #define __ICorConfiguration_FWD_DEFINED__
  72. typedef interface ICorConfiguration ICorConfiguration;
  73. #endif     /* __ICorConfiguration_FWD_DEFINED__ */
  74.  
  75.  
  76. #ifndef __ICorRuntimeHost_FWD_DEFINED__
  77. #define __ICorRuntimeHost_FWD_DEFINED__
  78. typedef interface ICorRuntimeHost ICorRuntimeHost;
  79. #endif     /* __ICorRuntimeHost_FWD_DEFINED__ */
  80.  
  81.  
  82. #ifndef __IManagedObject_FWD_DEFINED__
  83. #define __IManagedObject_FWD_DEFINED__
  84. typedef interface IManagedObject IManagedObject;
  85. #endif     /* __IManagedObject_FWD_DEFINED__ */
  86.  
  87.  
  88. #ifndef __ComCallUnmarshal_FWD_DEFINED__
  89. #define __ComCallUnmarshal_FWD_DEFINED__
  90.  
  91. #ifdef __cplusplus
  92. typedef class ComCallUnmarshal ComCallUnmarshal;
  93. #else
  94. typedef struct ComCallUnmarshal ComCallUnmarshal;
  95. #endif /* __cplusplus */
  96.  
  97. #endif     /* __ComCallUnmarshal_FWD_DEFINED__ */
  98.  
  99.  
  100. #ifndef __CorRuntimeHost_FWD_DEFINED__
  101. #define __CorRuntimeHost_FWD_DEFINED__
  102.  
  103. #ifdef __cplusplus
  104. typedef class CorRuntimeHost CorRuntimeHost;
  105. #else
  106. typedef struct CorRuntimeHost CorRuntimeHost;
  107. #endif /* __cplusplus */
  108.  
  109. #endif     /* __CorRuntimeHost_FWD_DEFINED__ */
  110.  
  111.  
  112. /* header files for imported files */
  113. #include "unknwn.h"
  114. #include "gchost.h"
  115. #include "ivalidator.h"
  116.  
  117. void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);
  118. void __RPC_USER MIDL_user_free( void __RPC_FAR * ); 
  119.  
  120. /* interface __MIDL_itf_mscoree_0000 */
  121. /* [local] */ 
  122.  
  123. extern const GUID __declspec(selectany) LIBID_mscoree = {0x5477469e,0x83b1,0x11d2,{0x8b,0x49,0x00,0xa0,0xc9,0xb7,0xc9,0xc4}};
  124. extern const GUID  __declspec(selectany) CLSID_CorRuntimeHost = { 0xcb2f6723, 0xab3a, 0x11d2, { 0x9c, 0x40, 0x00, 0xc0, 0x4f, 0xa3, 0x0a, 0x3e } };
  125. extern const GUID __declspec(selectany) CLSID_ComCallUnmarshal = {0x3F281000,0xE95A,0x11d2,{0x88,0x6B,0x00,0xC0,0x4F,0x86,0x9F,0x04}};
  126. extern const GUID __declspec(selectany) IID_IObjectHandle = { 0xc460e2b4, 0xe199, 0x412a, { 0x84, 0x56, 0x84, 0xdc, 0x3e, 0x48, 0x38, 0xc3 } };
  127. extern const GUID  __declspec(selectany) IID_IManagedObject = { 0xc3fcc19e, 0xa970, 0x11d2, { 0x8b, 0x5a, 0x00, 0xa0, 0xc9, 0xb7, 0xc9, 0xc4 } };
  128. extern const GUID  __declspec(selectany) IID_ICorRuntimeHost = { 0xcb2f6722, 0xab3a, 0x11d2, { 0x9c, 0x40, 0x00, 0xc0, 0x4f, 0xa3, 0x0a, 0x3e } };
  129. extern const GUID  __declspec(selectany) IID_ICorThreadpool = { 0x84680D3A, 0xB2C1, 0x46e8, {0xAC, 0xC2, 0xDB, 0xC0, 0xA3, 0x59, 0x15, 0x9A } };
  130. STDAPI GetCORSystemDirectory(LPWSTR pbuffer, DWORD  cchBuffer, DWORD* dwlength);
  131. STDAPI GetCORVersion(LPWSTR pbuffer, DWORD cchBuffer, DWORD* dwlength);
  132. STDAPI CorBindToRuntime(LPWSTR pwszVersion, LPWSTR pwszBuildFlavor, REFCLSID rclsid, REFIID riid, LPVOID FAR *ppv);
  133. STDAPI CorBindToCurrentRuntime(LPCWSTR pwszFileName, REFCLSID rclsid, REFIID riid, LPVOID FAR *ppv);
  134. STDAPI RunDll32ShimW(HWND hwnd, HINSTANCE hinst, LPWSTR lpszCmdLine, int nCmdShow);
  135. STDAPI LoadLibraryShim(LPCWSTR szDllName, LPCWSTR szVersion, LPVOID pvReserved, HMODULE *phModDll);
  136. STDAPI GetRealProcAddress(LPCSTR pwszProcName, VOID** ppv);
  137. void STDMETHODCALLTYPE CorExitProcess();
  138. typedef /* [public] */ 
  139. enum __MIDL___MIDL_itf_mscoree_0000_0001
  140.     {    STARTUP_CONCURRENT_GC    = 0x1
  141.     }    STARTUP_FLAGS;
  142.  
  143.  
  144.  
  145. extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_v0_0_c_ifspec;
  146. extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_v0_0_s_ifspec;
  147.  
  148. #ifndef __IObjectHandle_INTERFACE_DEFINED__
  149. #define __IObjectHandle_INTERFACE_DEFINED__
  150.  
  151. /* interface IObjectHandle */
  152. /* [unique][helpstring][uuid][oleautomation][object] */ 
  153.  
  154.  
  155. EXTERN_C const IID IID_IObjectHandle;
  156.  
  157. #if defined(__cplusplus) && !defined(CINTERFACE)
  158.     
  159.     MIDL_INTERFACE("C460E2B4-E199-412a-8456-84DC3E4838C3")
  160.     IObjectHandle : public IUnknown
  161.     {
  162.     public:
  163.         virtual HRESULT STDMETHODCALLTYPE Unwrap( 
  164.             /* [retval][out] */ VARIANT __RPC_FAR *ppv) = 0;
  165.         
  166.     };
  167.     
  168. #else     /* C style interface */
  169.  
  170.     typedef struct IObjectHandleVtbl
  171.     {
  172.         BEGIN_INTERFACE
  173.         
  174.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  175.             IObjectHandle __RPC_FAR * This,
  176.             /* [in] */ REFIID riid,
  177.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  178.         
  179.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  180.             IObjectHandle __RPC_FAR * This);
  181.         
  182.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  183.             IObjectHandle __RPC_FAR * This);
  184.         
  185.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Unwrap )( 
  186.             IObjectHandle __RPC_FAR * This,
  187.             /* [retval][out] */ VARIANT __RPC_FAR *ppv);
  188.         
  189.         END_INTERFACE
  190.     } IObjectHandleVtbl;
  191.  
  192.     interface IObjectHandle
  193.     {
  194.         CONST_VTBL struct IObjectHandleVtbl __RPC_FAR *lpVtbl;
  195.     };
  196.  
  197.     
  198.  
  199. #ifdef COBJMACROS
  200.  
  201.  
  202. #define IObjectHandle_QueryInterface(This,riid,ppvObject)    \
  203.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  204.  
  205. #define IObjectHandle_AddRef(This)    \
  206.     (This)->lpVtbl -> AddRef(This)
  207.  
  208. #define IObjectHandle_Release(This)    \
  209.     (This)->lpVtbl -> Release(This)
  210.  
  211.  
  212. #define IObjectHandle_Unwrap(This,ppv)    \
  213.     (This)->lpVtbl -> Unwrap(This,ppv)
  214.  
  215. #endif /* COBJMACROS */
  216.  
  217.  
  218. #endif     /* C style interface */
  219.  
  220.  
  221.  
  222. HRESULT STDMETHODCALLTYPE IObjectHandle_Unwrap_Proxy( 
  223.     IObjectHandle __RPC_FAR * This,
  224.     /* [retval][out] */ VARIANT __RPC_FAR *ppv);
  225.  
  226.  
  227. void __RPC_STUB IObjectHandle_Unwrap_Stub(
  228.     IRpcStubBuffer *This,
  229.     IRpcChannelBuffer *_pRpcChannelBuffer,
  230.     PRPC_MESSAGE _pRpcMessage,
  231.     DWORD *_pdwStubPhase);
  232.  
  233.  
  234.  
  235. #endif     /* __IObjectHandle_INTERFACE_DEFINED__ */
  236.  
  237.  
  238. #ifndef __IAppDomainBinding_INTERFACE_DEFINED__
  239. #define __IAppDomainBinding_INTERFACE_DEFINED__
  240.  
  241. /* interface IAppDomainBinding */
  242. /* [object][local][unique][helpstring][version][uuid] */ 
  243.  
  244.  
  245. EXTERN_C const IID IID_IAppDomainBinding;
  246.  
  247. #if defined(__cplusplus) && !defined(CINTERFACE)
  248.     
  249.     MIDL_INTERFACE("5C2B07A7-1E98-11d3-872F-00C04F79ED0D")
  250.     IAppDomainBinding : public IUnknown
  251.     {
  252.     public:
  253.         virtual HRESULT STDMETHODCALLTYPE OnAppDomain( 
  254.             /* [in] */ IUnknown __RPC_FAR *pAppdomain) = 0;
  255.         
  256.     };
  257.     
  258. #else     /* C style interface */
  259.  
  260.     typedef struct IAppDomainBindingVtbl
  261.     {
  262.         BEGIN_INTERFACE
  263.         
  264.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  265.             IAppDomainBinding __RPC_FAR * This,
  266.             /* [in] */ REFIID riid,
  267.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  268.         
  269.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  270.             IAppDomainBinding __RPC_FAR * This);
  271.         
  272.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  273.             IAppDomainBinding __RPC_FAR * This);
  274.         
  275.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *OnAppDomain )( 
  276.             IAppDomainBinding __RPC_FAR * This,
  277.             /* [in] */ IUnknown __RPC_FAR *pAppdomain);
  278.         
  279.         END_INTERFACE
  280.     } IAppDomainBindingVtbl;
  281.  
  282.     interface IAppDomainBinding
  283.     {
  284.         CONST_VTBL struct IAppDomainBindingVtbl __RPC_FAR *lpVtbl;
  285.     };
  286.  
  287.     
  288.  
  289. #ifdef COBJMACROS
  290.  
  291.  
  292. #define IAppDomainBinding_QueryInterface(This,riid,ppvObject)    \
  293.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  294.  
  295. #define IAppDomainBinding_AddRef(This)    \
  296.     (This)->lpVtbl -> AddRef(This)
  297.  
  298. #define IAppDomainBinding_Release(This)    \
  299.     (This)->lpVtbl -> Release(This)
  300.  
  301.  
  302. #define IAppDomainBinding_OnAppDomain(This,pAppdomain)    \
  303.     (This)->lpVtbl -> OnAppDomain(This,pAppdomain)
  304.  
  305. #endif /* COBJMACROS */
  306.  
  307.  
  308. #endif     /* C style interface */
  309.  
  310.  
  311.  
  312. HRESULT STDMETHODCALLTYPE IAppDomainBinding_OnAppDomain_Proxy( 
  313.     IAppDomainBinding __RPC_FAR * This,
  314.     /* [in] */ IUnknown __RPC_FAR *pAppdomain);
  315.  
  316.  
  317. void __RPC_STUB IAppDomainBinding_OnAppDomain_Stub(
  318.     IRpcStubBuffer *This,
  319.     IRpcChannelBuffer *_pRpcChannelBuffer,
  320.     PRPC_MESSAGE _pRpcMessage,
  321.     DWORD *_pdwStubPhase);
  322.  
  323.  
  324.  
  325. #endif     /* __IAppDomainBinding_INTERFACE_DEFINED__ */
  326.  
  327.  
  328. #ifndef __IGCThreadControl_INTERFACE_DEFINED__
  329. #define __IGCThreadControl_INTERFACE_DEFINED__
  330.  
  331. /* interface IGCThreadControl */
  332. /* [object][local][unique][helpstring][version][uuid] */ 
  333.  
  334.  
  335. EXTERN_C const IID IID_IGCThreadControl;
  336.  
  337. #if defined(__cplusplus) && !defined(CINTERFACE)
  338.     
  339.     MIDL_INTERFACE("F31D1788-C397-4725-87A5-6AF3472C2791")
  340.     IGCThreadControl : public IUnknown
  341.     {
  342.     public:
  343.         virtual HRESULT STDMETHODCALLTYPE ThreadIsBlockingForSuspension( void) = 0;
  344.         
  345.         virtual HRESULT STDMETHODCALLTYPE SuspensionStarting( void) = 0;
  346.         
  347.         virtual HRESULT STDMETHODCALLTYPE SuspensionEnding( 
  348.             DWORD Generation) = 0;
  349.         
  350.     };
  351.     
  352. #else     /* C style interface */
  353.  
  354.     typedef struct IGCThreadControlVtbl
  355.     {
  356.         BEGIN_INTERFACE
  357.         
  358.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  359.             IGCThreadControl __RPC_FAR * This,
  360.             /* [in] */ REFIID riid,
  361.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  362.         
  363.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  364.             IGCThreadControl __RPC_FAR * This);
  365.         
  366.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  367.             IGCThreadControl __RPC_FAR * This);
  368.         
  369.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ThreadIsBlockingForSuspension )( 
  370.             IGCThreadControl __RPC_FAR * This);
  371.         
  372.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SuspensionStarting )( 
  373.             IGCThreadControl __RPC_FAR * This);
  374.         
  375.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SuspensionEnding )( 
  376.             IGCThreadControl __RPC_FAR * This,
  377.             DWORD Generation);
  378.         
  379.         END_INTERFACE
  380.     } IGCThreadControlVtbl;
  381.  
  382.     interface IGCThreadControl
  383.     {
  384.         CONST_VTBL struct IGCThreadControlVtbl __RPC_FAR *lpVtbl;
  385.     };
  386.  
  387.     
  388.  
  389. #ifdef COBJMACROS
  390.  
  391.  
  392. #define IGCThreadControl_QueryInterface(This,riid,ppvObject)    \
  393.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  394.  
  395. #define IGCThreadControl_AddRef(This)    \
  396.     (This)->lpVtbl -> AddRef(This)
  397.  
  398. #define IGCThreadControl_Release(This)    \
  399.     (This)->lpVtbl -> Release(This)
  400.  
  401.  
  402. #define IGCThreadControl_ThreadIsBlockingForSuspension(This)    \
  403.     (This)->lpVtbl -> ThreadIsBlockingForSuspension(This)
  404.  
  405. #define IGCThreadControl_SuspensionStarting(This)    \
  406.     (This)->lpVtbl -> SuspensionStarting(This)
  407.  
  408. #define IGCThreadControl_SuspensionEnding(This,Generation)    \
  409.     (This)->lpVtbl -> SuspensionEnding(This,Generation)
  410.  
  411. #endif /* COBJMACROS */
  412.  
  413.  
  414. #endif     /* C style interface */
  415.  
  416.  
  417.  
  418. HRESULT STDMETHODCALLTYPE IGCThreadControl_ThreadIsBlockingForSuspension_Proxy( 
  419.     IGCThreadControl __RPC_FAR * This);
  420.  
  421.  
  422. void __RPC_STUB IGCThreadControl_ThreadIsBlockingForSuspension_Stub(
  423.     IRpcStubBuffer *This,
  424.     IRpcChannelBuffer *_pRpcChannelBuffer,
  425.     PRPC_MESSAGE _pRpcMessage,
  426.     DWORD *_pdwStubPhase);
  427.  
  428.  
  429. HRESULT STDMETHODCALLTYPE IGCThreadControl_SuspensionStarting_Proxy( 
  430.     IGCThreadControl __RPC_FAR * This);
  431.  
  432.  
  433. void __RPC_STUB IGCThreadControl_SuspensionStarting_Stub(
  434.     IRpcStubBuffer *This,
  435.     IRpcChannelBuffer *_pRpcChannelBuffer,
  436.     PRPC_MESSAGE _pRpcMessage,
  437.     DWORD *_pdwStubPhase);
  438.  
  439.  
  440. HRESULT STDMETHODCALLTYPE IGCThreadControl_SuspensionEnding_Proxy( 
  441.     IGCThreadControl __RPC_FAR * This,
  442.     DWORD Generation);
  443.  
  444.  
  445. void __RPC_STUB IGCThreadControl_SuspensionEnding_Stub(
  446.     IRpcStubBuffer *This,
  447.     IRpcChannelBuffer *_pRpcChannelBuffer,
  448.     PRPC_MESSAGE _pRpcMessage,
  449.     DWORD *_pdwStubPhase);
  450.  
  451.  
  452.  
  453. #endif     /* __IGCThreadControl_INTERFACE_DEFINED__ */
  454.  
  455.  
  456. /* interface __MIDL_itf_mscoree_0106 */
  457. /* [local] */ 
  458.  
  459. typedef VOID ( __stdcall __RPC_FAR *WAITORTIMERCALLBACK )( 
  460.     PVOID __MIDL_0014,
  461.     BOOL __MIDL_0015);
  462.  
  463. typedef DWORD ( __stdcall __RPC_FAR *LPTHREAD_START_ROUTINE )( 
  464.     LPVOID lpThreadParameter);
  465.  
  466. #ifdef UNDER_CE
  467. typedef VOID ( __RPC_FAR *LPOVERLAPPED_COMPLETION_ROUTINE )( 
  468.     DWORD dwErrorCode,
  469.     DWORD dwNumberOfBytesTransfered,
  470.     LPVOID lpOverlapped);
  471.  
  472. #endif // UNDER_CE
  473.  
  474.  
  475. extern RPC_IF_HANDLE __MIDL_itf_mscoree_0106_v0_0_c_ifspec;
  476. extern RPC_IF_HANDLE __MIDL_itf_mscoree_0106_v0_0_s_ifspec;
  477.  
  478. #ifndef __ICorThreadpool_INTERFACE_DEFINED__
  479. #define __ICorThreadpool_INTERFACE_DEFINED__
  480.  
  481. /* interface ICorThreadpool */
  482. /* [object][local][unique][helpstring][version][uuid] */ 
  483.  
  484.  
  485. EXTERN_C const IID IID_ICorThreadpool;
  486.  
  487. #if defined(__cplusplus) && !defined(CINTERFACE)
  488.     
  489.     MIDL_INTERFACE("84680D3A-B2C1-46e8-ACC2-DBC0A359159A")
  490.     ICorThreadpool : public IUnknown
  491.     {
  492.     public:
  493.         virtual HRESULT STDMETHODCALLTYPE CorRegisterWaitForSingleObject( 
  494.             /* [in] */ HANDLE __RPC_FAR *phNewWaitObject,
  495.             /* [in] */ HANDLE hWaitObject,
  496.             /* [in] */ WAITORTIMERCALLBACK Callback,
  497.             /* [in] */ PVOID Context,
  498.             /* [in] */ ULONG timeout,
  499.             /* [in] */ BOOL executeOnlyOnce,
  500.             /* [out] */ BOOL __RPC_FAR *result) = 0;
  501.         
  502.         virtual HRESULT STDMETHODCALLTYPE CorUnregisterWait( 
  503.             /* [in] */ HANDLE hWaitObject,
  504.             /* [in] */ HANDLE CompletionEvent,
  505.             /* [out] */ BOOL __RPC_FAR *result) = 0;
  506.         
  507.         virtual HRESULT STDMETHODCALLTYPE CorQueueUserWorkItem( 
  508.             /* [in] */ LPTHREAD_START_ROUTINE Function,
  509.             /* [in] */ PVOID Context,
  510.             /* [in] */ BOOL executeOnlyOnce,
  511.             /* [out] */ BOOL __RPC_FAR *result) = 0;
  512.         
  513.         virtual HRESULT STDMETHODCALLTYPE CorCreateTimer( 
  514.             /* [in] */ HANDLE __RPC_FAR *phNewTimer,
  515.             /* [in] */ WAITORTIMERCALLBACK Callback,
  516.             /* [in] */ PVOID Parameter,
  517.             /* [in] */ DWORD DueTime,
  518.             /* [in] */ DWORD Period,
  519.             /* [out] */ BOOL __RPC_FAR *result) = 0;
  520.         
  521.         virtual HRESULT STDMETHODCALLTYPE CorChangeTimer( 
  522.             /* [in] */ HANDLE Timer,
  523.             /* [in] */ ULONG DueTime,
  524.             /* [in] */ ULONG Period,
  525.             /* [out] */ BOOL __RPC_FAR *result) = 0;
  526.         
  527.         virtual HRESULT STDMETHODCALLTYPE CorDeleteTimer( 
  528.             /* [in] */ HANDLE Timer,
  529.             /* [in] */ HANDLE CompletionEvent,
  530.             /* [out] */ BOOL __RPC_FAR *result) = 0;
  531.         
  532.         virtual HRESULT STDMETHODCALLTYPE CorBindIoCompletionCallback( 
  533.             /* [in] */ HANDLE fileHandle,
  534.             /* [in] */ LPOVERLAPPED_COMPLETION_ROUTINE callback) = 0;
  535.         
  536.     };
  537.     
  538. #else     /* C style interface */
  539.  
  540.     typedef struct ICorThreadpoolVtbl
  541.     {
  542.         BEGIN_INTERFACE
  543.         
  544.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  545.             ICorThreadpool __RPC_FAR * This,
  546.             /* [in] */ REFIID riid,
  547.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  548.         
  549.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  550.             ICorThreadpool __RPC_FAR * This);
  551.         
  552.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  553.             ICorThreadpool __RPC_FAR * This);
  554.         
  555.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CorRegisterWaitForSingleObject )( 
  556.             ICorThreadpool __RPC_FAR * This,
  557.             /* [in] */ HANDLE __RPC_FAR *phNewWaitObject,
  558.             /* [in] */ HANDLE hWaitObject,
  559.             /* [in] */ WAITORTIMERCALLBACK Callback,
  560.             /* [in] */ PVOID Context,
  561.             /* [in] */ ULONG timeout,
  562.             /* [in] */ BOOL executeOnlyOnce,
  563.             /* [out] */ BOOL __RPC_FAR *result);
  564.         
  565.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CorUnregisterWait )( 
  566.             ICorThreadpool __RPC_FAR * This,
  567.             /* [in] */ HANDLE hWaitObject,
  568.             /* [in] */ HANDLE CompletionEvent,
  569.             /* [out] */ BOOL __RPC_FAR *result);
  570.         
  571.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CorQueueUserWorkItem )( 
  572.             ICorThreadpool __RPC_FAR * This,
  573.             /* [in] */ LPTHREAD_START_ROUTINE Function,
  574.             /* [in] */ PVOID Context,
  575.             /* [in] */ BOOL executeOnlyOnce,
  576.             /* [out] */ BOOL __RPC_FAR *result);
  577.         
  578.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CorCreateTimer )( 
  579.             ICorThreadpool __RPC_FAR * This,
  580.             /* [in] */ HANDLE __RPC_FAR *phNewTimer,
  581.             /* [in] */ WAITORTIMERCALLBACK Callback,
  582.             /* [in] */ PVOID Parameter,
  583.             /* [in] */ DWORD DueTime,
  584.             /* [in] */ DWORD Period,
  585.             /* [out] */ BOOL __RPC_FAR *result);
  586.         
  587.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CorChangeTimer )( 
  588.             ICorThreadpool __RPC_FAR * This,
  589.             /* [in] */ HANDLE Timer,
  590.             /* [in] */ ULONG DueTime,
  591.             /* [in] */ ULONG Period,
  592.             /* [out] */ BOOL __RPC_FAR *result);
  593.         
  594.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CorDeleteTimer )( 
  595.             ICorThreadpool __RPC_FAR * This,
  596.             /* [in] */ HANDLE Timer,
  597.             /* [in] */ HANDLE CompletionEvent,
  598.             /* [out] */ BOOL __RPC_FAR *result);
  599.         
  600.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CorBindIoCompletionCallback )( 
  601.             ICorThreadpool __RPC_FAR * This,
  602.             /* [in] */ HANDLE fileHandle,
  603.             /* [in] */ LPOVERLAPPED_COMPLETION_ROUTINE callback);
  604.         
  605.         END_INTERFACE
  606.     } ICorThreadpoolVtbl;
  607.  
  608.     interface ICorThreadpool
  609.     {
  610.         CONST_VTBL struct ICorThreadpoolVtbl __RPC_FAR *lpVtbl;
  611.     };
  612.  
  613.     
  614.  
  615. #ifdef COBJMACROS
  616.  
  617.  
  618. #define ICorThreadpool_QueryInterface(This,riid,ppvObject)    \
  619.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  620.  
  621. #define ICorThreadpool_AddRef(This)    \
  622.     (This)->lpVtbl -> AddRef(This)
  623.  
  624. #define ICorThreadpool_Release(This)    \
  625.     (This)->lpVtbl -> Release(This)
  626.  
  627.  
  628. #define ICorThreadpool_CorRegisterWaitForSingleObject(This,phNewWaitObject,hWaitObject,Callback,Context,timeout,executeOnlyOnce,result)    \
  629.     (This)->lpVtbl -> CorRegisterWaitForSingleObject(This,phNewWaitObject,hWaitObject,Callback,Context,timeout,executeOnlyOnce,result)
  630.  
  631. #define ICorThreadpool_CorUnregisterWait(This,hWaitObject,CompletionEvent,result)    \
  632.     (This)->lpVtbl -> CorUnregisterWait(This,hWaitObject,CompletionEvent,result)
  633.  
  634. #define ICorThreadpool_CorQueueUserWorkItem(This,Function,Context,executeOnlyOnce,result)    \
  635.     (This)->lpVtbl -> CorQueueUserWorkItem(This,Function,Context,executeOnlyOnce,result)
  636.  
  637. #define ICorThreadpool_CorCreateTimer(This,phNewTimer,Callback,Parameter,DueTime,Period,result)    \
  638.     (This)->lpVtbl -> CorCreateTimer(This,phNewTimer,Callback,Parameter,DueTime,Period,result)
  639.  
  640. #define ICorThreadpool_CorChangeTimer(This,Timer,DueTime,Period,result)    \
  641.     (This)->lpVtbl -> CorChangeTimer(This,Timer,DueTime,Period,result)
  642.  
  643. #define ICorThreadpool_CorDeleteTimer(This,Timer,CompletionEvent,result)    \
  644.     (This)->lpVtbl -> CorDeleteTimer(This,Timer,CompletionEvent,result)
  645.  
  646. #define ICorThreadpool_CorBindIoCompletionCallback(This,fileHandle,callback)    \
  647.     (This)->lpVtbl -> CorBindIoCompletionCallback(This,fileHandle,callback)
  648.  
  649. #endif /* COBJMACROS */
  650.  
  651.  
  652. #endif     /* C style interface */
  653.  
  654.  
  655.  
  656. HRESULT STDMETHODCALLTYPE ICorThreadpool_CorRegisterWaitForSingleObject_Proxy( 
  657.     ICorThreadpool __RPC_FAR * This,
  658.     /* [in] */ HANDLE __RPC_FAR *phNewWaitObject,
  659.     /* [in] */ HANDLE hWaitObject,
  660.     /* [in] */ WAITORTIMERCALLBACK Callback,
  661.     /* [in] */ PVOID Context,
  662.     /* [in] */ ULONG timeout,
  663.     /* [in] */ BOOL executeOnlyOnce,
  664.     /* [out] */ BOOL __RPC_FAR *result);
  665.  
  666.  
  667. void __RPC_STUB ICorThreadpool_CorRegisterWaitForSingleObject_Stub(
  668.     IRpcStubBuffer *This,
  669.     IRpcChannelBuffer *_pRpcChannelBuffer,
  670.     PRPC_MESSAGE _pRpcMessage,
  671.     DWORD *_pdwStubPhase);
  672.  
  673.  
  674. HRESULT STDMETHODCALLTYPE ICorThreadpool_CorUnregisterWait_Proxy( 
  675.     ICorThreadpool __RPC_FAR * This,
  676.     /* [in] */ HANDLE hWaitObject,
  677.     /* [in] */ HANDLE CompletionEvent,
  678.     /* [out] */ BOOL __RPC_FAR *result);
  679.  
  680.  
  681. void __RPC_STUB ICorThreadpool_CorUnregisterWait_Stub(
  682.     IRpcStubBuffer *This,
  683.     IRpcChannelBuffer *_pRpcChannelBuffer,
  684.     PRPC_MESSAGE _pRpcMessage,
  685.     DWORD *_pdwStubPhase);
  686.  
  687.  
  688. HRESULT STDMETHODCALLTYPE ICorThreadpool_CorQueueUserWorkItem_Proxy( 
  689.     ICorThreadpool __RPC_FAR * This,
  690.     /* [in] */ LPTHREAD_START_ROUTINE Function,
  691.     /* [in] */ PVOID Context,
  692.     /* [in] */ BOOL executeOnlyOnce,
  693.     /* [out] */ BOOL __RPC_FAR *result);
  694.  
  695.  
  696. void __RPC_STUB ICorThreadpool_CorQueueUserWorkItem_Stub(
  697.     IRpcStubBuffer *This,
  698.     IRpcChannelBuffer *_pRpcChannelBuffer,
  699.     PRPC_MESSAGE _pRpcMessage,
  700.     DWORD *_pdwStubPhase);
  701.  
  702.  
  703. HRESULT STDMETHODCALLTYPE ICorThreadpool_CorCreateTimer_Proxy( 
  704.     ICorThreadpool __RPC_FAR * This,
  705.     /* [in] */ HANDLE __RPC_FAR *phNewTimer,
  706.     /* [in] */ WAITORTIMERCALLBACK Callback,
  707.     /* [in] */ PVOID Parameter,
  708.     /* [in] */ DWORD DueTime,
  709.     /* [in] */ DWORD Period,
  710.     /* [out] */ BOOL __RPC_FAR *result);
  711.  
  712.  
  713. void __RPC_STUB ICorThreadpool_CorCreateTimer_Stub(
  714.     IRpcStubBuffer *This,
  715.     IRpcChannelBuffer *_pRpcChannelBuffer,
  716.     PRPC_MESSAGE _pRpcMessage,
  717.     DWORD *_pdwStubPhase);
  718.  
  719.  
  720. HRESULT STDMETHODCALLTYPE ICorThreadpool_CorChangeTimer_Proxy( 
  721.     ICorThreadpool __RPC_FAR * This,
  722.     /* [in] */ HANDLE Timer,
  723.     /* [in] */ ULONG DueTime,
  724.     /* [in] */ ULONG Period,
  725.     /* [out] */ BOOL __RPC_FAR *result);
  726.  
  727.  
  728. void __RPC_STUB ICorThreadpool_CorChangeTimer_Stub(
  729.     IRpcStubBuffer *This,
  730.     IRpcChannelBuffer *_pRpcChannelBuffer,
  731.     PRPC_MESSAGE _pRpcMessage,
  732.     DWORD *_pdwStubPhase);
  733.  
  734.  
  735. HRESULT STDMETHODCALLTYPE ICorThreadpool_CorDeleteTimer_Proxy( 
  736.     ICorThreadpool __RPC_FAR * This,
  737.     /* [in] */ HANDLE Timer,
  738.     /* [in] */ HANDLE CompletionEvent,
  739.     /* [out] */ BOOL __RPC_FAR *result);
  740.  
  741.  
  742. void __RPC_STUB ICorThreadpool_CorDeleteTimer_Stub(
  743.     IRpcStubBuffer *This,
  744.     IRpcChannelBuffer *_pRpcChannelBuffer,
  745.     PRPC_MESSAGE _pRpcMessage,
  746.     DWORD *_pdwStubPhase);
  747.  
  748.  
  749. HRESULT STDMETHODCALLTYPE ICorThreadpool_CorBindIoCompletionCallback_Proxy( 
  750.     ICorThreadpool __RPC_FAR * This,
  751.     /* [in] */ HANDLE fileHandle,
  752.     /* [in] */ LPOVERLAPPED_COMPLETION_ROUTINE callback);
  753.  
  754.  
  755. void __RPC_STUB ICorThreadpool_CorBindIoCompletionCallback_Stub(
  756.     IRpcStubBuffer *This,
  757.     IRpcChannelBuffer *_pRpcChannelBuffer,
  758.     PRPC_MESSAGE _pRpcMessage,
  759.     DWORD *_pdwStubPhase);
  760.  
  761.  
  762.  
  763. #endif     /* __ICorThreadpool_INTERFACE_DEFINED__ */
  764.  
  765.  
  766. #ifndef __IDebuggerThreadControl_INTERFACE_DEFINED__
  767. #define __IDebuggerThreadControl_INTERFACE_DEFINED__
  768.  
  769. /* interface IDebuggerThreadControl */
  770. /* [object][local][unique][helpstring][version][uuid] */ 
  771.  
  772.  
  773. EXTERN_C const IID IID_IDebuggerThreadControl;
  774.  
  775. #if defined(__cplusplus) && !defined(CINTERFACE)
  776.     
  777.     MIDL_INTERFACE("23D86786-0BB5-4774-8FB5-E3522ADD6246")
  778.     IDebuggerThreadControl : public IUnknown
  779.     {
  780.     public:
  781.         virtual HRESULT STDMETHODCALLTYPE ThreadIsBlockingForDebugger( void) = 0;
  782.         
  783.         virtual HRESULT STDMETHODCALLTYPE ReleaseAllRuntimeThreads( void) = 0;
  784.         
  785.     };
  786.     
  787. #else     /* C style interface */
  788.  
  789.     typedef struct IDebuggerThreadControlVtbl
  790.     {
  791.         BEGIN_INTERFACE
  792.         
  793.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  794.             IDebuggerThreadControl __RPC_FAR * This,
  795.             /* [in] */ REFIID riid,
  796.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  797.         
  798.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  799.             IDebuggerThreadControl __RPC_FAR * This);
  800.         
  801.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  802.             IDebuggerThreadControl __RPC_FAR * This);
  803.         
  804.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ThreadIsBlockingForDebugger )( 
  805.             IDebuggerThreadControl __RPC_FAR * This);
  806.         
  807.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ReleaseAllRuntimeThreads )( 
  808.             IDebuggerThreadControl __RPC_FAR * This);
  809.         
  810.         END_INTERFACE
  811.     } IDebuggerThreadControlVtbl;
  812.  
  813.     interface IDebuggerThreadControl
  814.     {
  815.         CONST_VTBL struct IDebuggerThreadControlVtbl __RPC_FAR *lpVtbl;
  816.     };
  817.  
  818.     
  819.  
  820. #ifdef COBJMACROS
  821.  
  822.  
  823. #define IDebuggerThreadControl_QueryInterface(This,riid,ppvObject)    \
  824.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  825.  
  826. #define IDebuggerThreadControl_AddRef(This)    \
  827.     (This)->lpVtbl -> AddRef(This)
  828.  
  829. #define IDebuggerThreadControl_Release(This)    \
  830.     (This)->lpVtbl -> Release(This)
  831.  
  832.  
  833. #define IDebuggerThreadControl_ThreadIsBlockingForDebugger(This)    \
  834.     (This)->lpVtbl -> ThreadIsBlockingForDebugger(This)
  835.  
  836. #define IDebuggerThreadControl_ReleaseAllRuntimeThreads(This)    \
  837.     (This)->lpVtbl -> ReleaseAllRuntimeThreads(This)
  838.  
  839. #endif /* COBJMACROS */
  840.  
  841.  
  842. #endif     /* C style interface */
  843.  
  844.  
  845.  
  846. HRESULT STDMETHODCALLTYPE IDebuggerThreadControl_ThreadIsBlockingForDebugger_Proxy( 
  847.     IDebuggerThreadControl __RPC_FAR * This);
  848.  
  849.  
  850. void __RPC_STUB IDebuggerThreadControl_ThreadIsBlockingForDebugger_Stub(
  851.     IRpcStubBuffer *This,
  852.     IRpcChannelBuffer *_pRpcChannelBuffer,
  853.     PRPC_MESSAGE _pRpcMessage,
  854.     DWORD *_pdwStubPhase);
  855.  
  856.  
  857. HRESULT STDMETHODCALLTYPE IDebuggerThreadControl_ReleaseAllRuntimeThreads_Proxy( 
  858.     IDebuggerThreadControl __RPC_FAR * This);
  859.  
  860.  
  861. void __RPC_STUB IDebuggerThreadControl_ReleaseAllRuntimeThreads_Stub(
  862.     IRpcStubBuffer *This,
  863.     IRpcChannelBuffer *_pRpcChannelBuffer,
  864.     PRPC_MESSAGE _pRpcMessage,
  865.     DWORD *_pdwStubPhase);
  866.  
  867.  
  868.  
  869. #endif     /* __IDebuggerThreadControl_INTERFACE_DEFINED__ */
  870.  
  871.  
  872. #ifndef __ICorConfiguration_INTERFACE_DEFINED__
  873. #define __ICorConfiguration_INTERFACE_DEFINED__
  874.  
  875. /* interface ICorConfiguration */
  876. /* [object][local][unique][helpstring][version][uuid] */ 
  877.  
  878.  
  879. EXTERN_C const IID IID_ICorConfiguration;
  880.  
  881. #if defined(__cplusplus) && !defined(CINTERFACE)
  882.     
  883.     MIDL_INTERFACE("5C2B07A5-1E98-11d3-872F-00C04F79ED0D")
  884.     ICorConfiguration : public IUnknown
  885.     {
  886.     public:
  887.         virtual HRESULT STDMETHODCALLTYPE SetAppDomainLoadEvent( 
  888.             /* [in] */ IAppDomainBinding __RPC_FAR *pAppStartEvent) = 0;
  889.         
  890.         virtual HRESULT STDMETHODCALLTYPE SetGCThreadControl( 
  891.             /* [in] */ IGCThreadControl __RPC_FAR *pGCThreadControl) = 0;
  892.         
  893.         virtual HRESULT STDMETHODCALLTYPE SetDebuggerThreadControl( 
  894.             /* [in] */ IDebuggerThreadControl __RPC_FAR *pDebuggerThreadControl) = 0;
  895.         
  896.         virtual HRESULT STDMETHODCALLTYPE AddDebuggerSpecialThread( 
  897.             /* [in] */ DWORD dwSpecialThreadId) = 0;
  898.         
  899.     };
  900.     
  901. #else     /* C style interface */
  902.  
  903.     typedef struct ICorConfigurationVtbl
  904.     {
  905.         BEGIN_INTERFACE
  906.         
  907.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  908.             ICorConfiguration __RPC_FAR * This,
  909.             /* [in] */ REFIID riid,
  910.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  911.         
  912.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  913.             ICorConfiguration __RPC_FAR * This);
  914.         
  915.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  916.             ICorConfiguration __RPC_FAR * This);
  917.         
  918.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetAppDomainLoadEvent )( 
  919.             ICorConfiguration __RPC_FAR * This,
  920.             /* [in] */ IAppDomainBinding __RPC_FAR *pAppStartEvent);
  921.         
  922.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetGCThreadControl )( 
  923.             ICorConfiguration __RPC_FAR * This,
  924.             /* [in] */ IGCThreadControl __RPC_FAR *pGCThreadControl);
  925.         
  926.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetDebuggerThreadControl )( 
  927.             ICorConfiguration __RPC_FAR * This,
  928.             /* [in] */ IDebuggerThreadControl __RPC_FAR *pDebuggerThreadControl);
  929.         
  930.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddDebuggerSpecialThread )( 
  931.             ICorConfiguration __RPC_FAR * This,
  932.             /* [in] */ DWORD dwSpecialThreadId);
  933.         
  934.         END_INTERFACE
  935.     } ICorConfigurationVtbl;
  936.  
  937.     interface ICorConfiguration
  938.     {
  939.         CONST_VTBL struct ICorConfigurationVtbl __RPC_FAR *lpVtbl;
  940.     };
  941.  
  942.     
  943.  
  944. #ifdef COBJMACROS
  945.  
  946.  
  947. #define ICorConfiguration_QueryInterface(This,riid,ppvObject)    \
  948.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  949.  
  950. #define ICorConfiguration_AddRef(This)    \
  951.     (This)->lpVtbl -> AddRef(This)
  952.  
  953. #define ICorConfiguration_Release(This)    \
  954.     (This)->lpVtbl -> Release(This)
  955.  
  956.  
  957. #define ICorConfiguration_SetAppDomainLoadEvent(This,pAppStartEvent)    \
  958.     (This)->lpVtbl -> SetAppDomainLoadEvent(This,pAppStartEvent)
  959.  
  960. #define ICorConfiguration_SetGCThreadControl(This,pGCThreadControl)    \
  961.     (This)->lpVtbl -> SetGCThreadControl(This,pGCThreadControl)
  962.  
  963. #define ICorConfiguration_SetDebuggerThreadControl(This,pDebuggerThreadControl)    \
  964.     (This)->lpVtbl -> SetDebuggerThreadControl(This,pDebuggerThreadControl)
  965.  
  966. #define ICorConfiguration_AddDebuggerSpecialThread(This,dwSpecialThreadId)    \
  967.     (This)->lpVtbl -> AddDebuggerSpecialThread(This,dwSpecialThreadId)
  968.  
  969. #endif /* COBJMACROS */
  970.  
  971.  
  972. #endif     /* C style interface */
  973.  
  974.  
  975.  
  976. HRESULT STDMETHODCALLTYPE ICorConfiguration_SetAppDomainLoadEvent_Proxy( 
  977.     ICorConfiguration __RPC_FAR * This,
  978.     /* [in] */ IAppDomainBinding __RPC_FAR *pAppStartEvent);
  979.  
  980.  
  981. void __RPC_STUB ICorConfiguration_SetAppDomainLoadEvent_Stub(
  982.     IRpcStubBuffer *This,
  983.     IRpcChannelBuffer *_pRpcChannelBuffer,
  984.     PRPC_MESSAGE _pRpcMessage,
  985.     DWORD *_pdwStubPhase);
  986.  
  987.  
  988. HRESULT STDMETHODCALLTYPE ICorConfiguration_SetGCThreadControl_Proxy( 
  989.     ICorConfiguration __RPC_FAR * This,
  990.     /* [in] */ IGCThreadControl __RPC_FAR *pGCThreadControl);
  991.  
  992.  
  993. void __RPC_STUB ICorConfiguration_SetGCThreadControl_Stub(
  994.     IRpcStubBuffer *This,
  995.     IRpcChannelBuffer *_pRpcChannelBuffer,
  996.     PRPC_MESSAGE _pRpcMessage,
  997.     DWORD *_pdwStubPhase);
  998.  
  999.  
  1000. HRESULT STDMETHODCALLTYPE ICorConfiguration_SetDebuggerThreadControl_Proxy( 
  1001.     ICorConfiguration __RPC_FAR * This,
  1002.     /* [in] */ IDebuggerThreadControl __RPC_FAR *pDebuggerThreadControl);
  1003.  
  1004.  
  1005. void __RPC_STUB ICorConfiguration_SetDebuggerThreadControl_Stub(
  1006.     IRpcStubBuffer *This,
  1007.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1008.     PRPC_MESSAGE _pRpcMessage,
  1009.     DWORD *_pdwStubPhase);
  1010.  
  1011.  
  1012. HRESULT STDMETHODCALLTYPE ICorConfiguration_AddDebuggerSpecialThread_Proxy( 
  1013.     ICorConfiguration __RPC_FAR * This,
  1014.     /* [in] */ DWORD dwSpecialThreadId);
  1015.  
  1016.  
  1017. void __RPC_STUB ICorConfiguration_AddDebuggerSpecialThread_Stub(
  1018.     IRpcStubBuffer *This,
  1019.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1020.     PRPC_MESSAGE _pRpcMessage,
  1021.     DWORD *_pdwStubPhase);
  1022.  
  1023.  
  1024.  
  1025. #endif     /* __ICorConfiguration_INTERFACE_DEFINED__ */
  1026.  
  1027.  
  1028. /* interface __MIDL_itf_mscoree_0109 */
  1029. /* [local] */ 
  1030.  
  1031. typedef void __RPC_FAR *HDOMAINENUM;
  1032.  
  1033.  
  1034.  
  1035. extern RPC_IF_HANDLE __MIDL_itf_mscoree_0109_v0_0_c_ifspec;
  1036. extern RPC_IF_HANDLE __MIDL_itf_mscoree_0109_v0_0_s_ifspec;
  1037.  
  1038. #ifndef __ICorRuntimeHost_INTERFACE_DEFINED__
  1039. #define __ICorRuntimeHost_INTERFACE_DEFINED__
  1040.  
  1041. /* interface ICorRuntimeHost */
  1042. /* [object][local][unique][helpstring][version][uuid] */ 
  1043.  
  1044.  
  1045. EXTERN_C const IID IID_ICorRuntimeHost;
  1046.  
  1047. #if defined(__cplusplus) && !defined(CINTERFACE)
  1048.     
  1049.     MIDL_INTERFACE("CB2F6722-AB3A-11d2-9C40-00C04FA30A3E")
  1050.     ICorRuntimeHost : public IUnknown
  1051.     {
  1052.     public:
  1053.         virtual HRESULT STDMETHODCALLTYPE VerifyClassesInModule( 
  1054.             /* [in] */ DWORD BaseAddress) = 0;
  1055.         
  1056.         virtual HRESULT STDMETHODCALLTYPE CreateFiberInfo( void) = 0;
  1057.         
  1058.         virtual HRESULT STDMETHODCALLTYPE DeleteFiber( void) = 0;
  1059.         
  1060.         virtual HRESULT STDMETHODCALLTYPE SwitchFiberIn( 
  1061.             /* [in] */ DWORD __RPC_FAR *pFiberCookie) = 0;
  1062.         
  1063.         virtual HRESULT STDMETHODCALLTYPE SwitchFiberOut( 
  1064.             /* [out] */ DWORD __RPC_FAR *__RPC_FAR *pFiberCookie) = 0;
  1065.         
  1066.         virtual HRESULT STDMETHODCALLTYPE MapFile( 
  1067.             /* [in] */ ULONG hFile,
  1068.             /* [out] */ HMODULE __RPC_FAR *hMapAddress) = 0;
  1069.         
  1070.         virtual HRESULT STDMETHODCALLTYPE GetConfiguration( 
  1071.             /* [out] */ ICorConfiguration __RPC_FAR *__RPC_FAR *pConfiguration) = 0;
  1072.         
  1073.         virtual HRESULT STDMETHODCALLTYPE Start( void) = 0;
  1074.         
  1075.         virtual HRESULT STDMETHODCALLTYPE Stop( void) = 0;
  1076.         
  1077.         virtual HRESULT STDMETHODCALLTYPE CreateDomain( 
  1078.             /* [in] */ LPWSTR pwzFriendlyName,
  1079.             /* [in] */ IUnknown __RPC_FAR *pIdentityArray,
  1080.             /* [in] */ IUnknown __RPC_FAR *pPolicyArray,
  1081.             /* [out] */ IUnknown __RPC_FAR *__RPC_FAR *pAppDomain) = 0;
  1082.         
  1083.         virtual HRESULT STDMETHODCALLTYPE CreateDomainProxy( 
  1084.             /* [in] */ LPWSTR pwzFriendlyName,
  1085.             /* [in] */ IUnknown __RPC_FAR *pIdentityArray,
  1086.             /* [in] */ IUnknown __RPC_FAR *pPolicyArray,
  1087.             /* [out] */ IUnknown __RPC_FAR *__RPC_FAR *pDomainProxy) = 0;
  1088.         
  1089.         virtual HRESULT STDMETHODCALLTYPE GetDefaultDomain( 
  1090.             /* [out] */ IUnknown __RPC_FAR *__RPC_FAR *pAppDomain) = 0;
  1091.         
  1092.         virtual HRESULT STDMETHODCALLTYPE EnumDomains( 
  1093.             /* [out] */ HDOMAINENUM __RPC_FAR *hEnum) = 0;
  1094.         
  1095.         virtual HRESULT STDMETHODCALLTYPE NextDomain( 
  1096.             /* [in] */ HDOMAINENUM hEnum,
  1097.             /* [out] */ IUnknown __RPC_FAR *__RPC_FAR *pAppDomain) = 0;
  1098.         
  1099.         virtual HRESULT STDMETHODCALLTYPE ResetDomainEnum( 
  1100.             /* [in] */ HDOMAINENUM hEnum) = 0;
  1101.         
  1102.         virtual HRESULT STDMETHODCALLTYPE CloseEnum( 
  1103.             /* [in] */ HDOMAINENUM hEnum) = 0;
  1104.         
  1105.         virtual HRESULT STDMETHODCALLTYPE VerifyAssembly( 
  1106.             /* [size_is][in] */ BYTE __RPC_FAR *pbModule,
  1107.             /* [in] */ DWORD cbModule,
  1108.             /* [size_is][in] */ LONG __RPC_FAR *errors,
  1109.             /* [in] */ DWORD errorSize,
  1110.             /* [out] */ DWORD __RPC_FAR *errorCount) = 0;
  1111.         
  1112.         virtual HRESULT STDMETHODCALLTYPE VerifyAssemblyFile( 
  1113.             /* [in] */ LPWSTR __MIDL_0019,
  1114.             /* [size_is][in] */ LONG __RPC_FAR *errors,
  1115.             /* [in] */ DWORD errorSize,
  1116.             /* [out] */ DWORD __RPC_FAR *errorCount) = 0;
  1117.         
  1118.     };
  1119.     
  1120. #else     /* C style interface */
  1121.  
  1122.     typedef struct ICorRuntimeHostVtbl
  1123.     {
  1124.         BEGIN_INTERFACE
  1125.         
  1126.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  1127.             ICorRuntimeHost __RPC_FAR * This,
  1128.             /* [in] */ REFIID riid,
  1129.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  1130.         
  1131.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  1132.             ICorRuntimeHost __RPC_FAR * This);
  1133.         
  1134.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  1135.             ICorRuntimeHost __RPC_FAR * This);
  1136.         
  1137.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *VerifyClassesInModule )( 
  1138.             ICorRuntimeHost __RPC_FAR * This,
  1139.             /* [in] */ DWORD BaseAddress);
  1140.         
  1141.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateFiberInfo )( 
  1142.             ICorRuntimeHost __RPC_FAR * This);
  1143.         
  1144.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteFiber )( 
  1145.             ICorRuntimeHost __RPC_FAR * This);
  1146.         
  1147.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SwitchFiberIn )( 
  1148.             ICorRuntimeHost __RPC_FAR * This,
  1149.             /* [in] */ DWORD __RPC_FAR *pFiberCookie);
  1150.         
  1151.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SwitchFiberOut )( 
  1152.             ICorRuntimeHost __RPC_FAR * This,
  1153.             /* [out] */ DWORD __RPC_FAR *__RPC_FAR *pFiberCookie);
  1154.         
  1155.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *MapFile )( 
  1156.             ICorRuntimeHost __RPC_FAR * This,
  1157.             /* [in] */ ULONG hFile,
  1158.             /* [out] */ HMODULE __RPC_FAR *hMapAddress);
  1159.         
  1160.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetConfiguration )( 
  1161.             ICorRuntimeHost __RPC_FAR * This,
  1162.             /* [out] */ ICorConfiguration __RPC_FAR *__RPC_FAR *pConfiguration);
  1163.         
  1164.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Start )( 
  1165.             ICorRuntimeHost __RPC_FAR * This);
  1166.         
  1167.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Stop )( 
  1168.             ICorRuntimeHost __RPC_FAR * This);
  1169.         
  1170.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateDomain )( 
  1171.             ICorRuntimeHost __RPC_FAR * This,
  1172.             /* [in] */ LPWSTR pwzFriendlyName,
  1173.             /* [in] */ IUnknown __RPC_FAR *pIdentityArray,
  1174.             /* [in] */ IUnknown __RPC_FAR *pPolicyArray,
  1175.             /* [out] */ IUnknown __RPC_FAR *__RPC_FAR *pAppDomain);
  1176.         
  1177.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateDomainProxy )( 
  1178.             ICorRuntimeHost __RPC_FAR * This,
  1179.             /* [in] */ LPWSTR pwzFriendlyName,
  1180.             /* [in] */ IUnknown __RPC_FAR *pIdentityArray,
  1181.             /* [in] */ IUnknown __RPC_FAR *pPolicyArray,
  1182.             /* [out] */ IUnknown __RPC_FAR *__RPC_FAR *pDomainProxy);
  1183.         
  1184.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetDefaultDomain )( 
  1185.             ICorRuntimeHost __RPC_FAR * This,
  1186.             /* [out] */ IUnknown __RPC_FAR *__RPC_FAR *pAppDomain);
  1187.         
  1188.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *EnumDomains )( 
  1189.             ICorRuntimeHost __RPC_FAR * This,
  1190.             /* [out] */ HDOMAINENUM __RPC_FAR *hEnum);
  1191.         
  1192.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *NextDomain )( 
  1193.             ICorRuntimeHost __RPC_FAR * This,
  1194.             /* [in] */ HDOMAINENUM hEnum,
  1195.             /* [out] */ IUnknown __RPC_FAR *__RPC_FAR *pAppDomain);
  1196.         
  1197.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ResetDomainEnum )( 
  1198.             ICorRuntimeHost __RPC_FAR * This,
  1199.             /* [in] */ HDOMAINENUM hEnum);
  1200.         
  1201.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CloseEnum )( 
  1202.             ICorRuntimeHost __RPC_FAR * This,
  1203.             /* [in] */ HDOMAINENUM hEnum);
  1204.         
  1205.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *VerifyAssembly )( 
  1206.             ICorRuntimeHost __RPC_FAR * This,
  1207.             /* [size_is][in] */ BYTE __RPC_FAR *pbModule,
  1208.             /* [in] */ DWORD cbModule,
  1209.             /* [size_is][in] */ LONG __RPC_FAR *errors,
  1210.             /* [in] */ DWORD errorSize,
  1211.             /* [out] */ DWORD __RPC_FAR *errorCount);
  1212.         
  1213.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *VerifyAssemblyFile )( 
  1214.             ICorRuntimeHost __RPC_FAR * This,
  1215.             /* [in] */ LPWSTR __MIDL_0019,
  1216.             /* [size_is][in] */ LONG __RPC_FAR *errors,
  1217.             /* [in] */ DWORD errorSize,
  1218.             /* [out] */ DWORD __RPC_FAR *errorCount);
  1219.         
  1220.         END_INTERFACE
  1221.     } ICorRuntimeHostVtbl;
  1222.  
  1223.     interface ICorRuntimeHost
  1224.     {
  1225.         CONST_VTBL struct ICorRuntimeHostVtbl __RPC_FAR *lpVtbl;
  1226.     };
  1227.  
  1228.     
  1229.  
  1230. #ifdef COBJMACROS
  1231.  
  1232.  
  1233. #define ICorRuntimeHost_QueryInterface(This,riid,ppvObject)    \
  1234.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1235.  
  1236. #define ICorRuntimeHost_AddRef(This)    \
  1237.     (This)->lpVtbl -> AddRef(This)
  1238.  
  1239. #define ICorRuntimeHost_Release(This)    \
  1240.     (This)->lpVtbl -> Release(This)
  1241.  
  1242.  
  1243. #define ICorRuntimeHost_VerifyClassesInModule(This,BaseAddress)    \
  1244.     (This)->lpVtbl -> VerifyClassesInModule(This,BaseAddress)
  1245.  
  1246. #define ICorRuntimeHost_CreateFiberInfo(This)    \
  1247.     (This)->lpVtbl -> CreateFiberInfo(This)
  1248.  
  1249. #define ICorRuntimeHost_DeleteFiber(This)    \
  1250.     (This)->lpVtbl -> DeleteFiber(This)
  1251.  
  1252. #define ICorRuntimeHost_SwitchFiberIn(This,pFiberCookie)    \
  1253.     (This)->lpVtbl -> SwitchFiberIn(This,pFiberCookie)
  1254.  
  1255. #define ICorRuntimeHost_SwitchFiberOut(This,pFiberCookie)    \
  1256.     (This)->lpVtbl -> SwitchFiberOut(This,pFiberCookie)
  1257.  
  1258. #define ICorRuntimeHost_MapFile(This,hFile,hMapAddress)    \
  1259.     (This)->lpVtbl -> MapFile(This,hFile,hMapAddress)
  1260.  
  1261. #define ICorRuntimeHost_GetConfiguration(This,pConfiguration)    \
  1262.     (This)->lpVtbl -> GetConfiguration(This,pConfiguration)
  1263.  
  1264. #define ICorRuntimeHost_Start(This)    \
  1265.     (This)->lpVtbl -> Start(This)
  1266.  
  1267. #define ICorRuntimeHost_Stop(This)    \
  1268.     (This)->lpVtbl -> Stop(This)
  1269.  
  1270. #define ICorRuntimeHost_CreateDomain(This,pwzFriendlyName,pIdentityArray,pPolicyArray,pAppDomain)    \
  1271.     (This)->lpVtbl -> CreateDomain(This,pwzFriendlyName,pIdentityArray,pPolicyArray,pAppDomain)
  1272.  
  1273. #define ICorRuntimeHost_CreateDomainProxy(This,pwzFriendlyName,pIdentityArray,pPolicyArray,pDomainProxy)    \
  1274.     (This)->lpVtbl -> CreateDomainProxy(This,pwzFriendlyName,pIdentityArray,pPolicyArray,pDomainProxy)
  1275.  
  1276. #define ICorRuntimeHost_GetDefaultDomain(This,pAppDomain)    \
  1277.     (This)->lpVtbl -> GetDefaultDomain(This,pAppDomain)
  1278.  
  1279. #define ICorRuntimeHost_EnumDomains(This,hEnum)    \
  1280.     (This)->lpVtbl -> EnumDomains(This,hEnum)
  1281.  
  1282. #define ICorRuntimeHost_NextDomain(This,hEnum,pAppDomain)    \
  1283.     (This)->lpVtbl -> NextDomain(This,hEnum,pAppDomain)
  1284.  
  1285. #define ICorRuntimeHost_ResetDomainEnum(This,hEnum)    \
  1286.     (This)->lpVtbl -> ResetDomainEnum(This,hEnum)
  1287.  
  1288. #define ICorRuntimeHost_CloseEnum(This,hEnum)    \
  1289.     (This)->lpVtbl -> CloseEnum(This,hEnum)
  1290.  
  1291. #define ICorRuntimeHost_VerifyAssembly(This,pbModule,cbModule,errors,errorSize,errorCount)    \
  1292.     (This)->lpVtbl -> VerifyAssembly(This,pbModule,cbModule,errors,errorSize,errorCount)
  1293.  
  1294. #define ICorRuntimeHost_VerifyAssemblyFile(This,__MIDL_0019,errors,errorSize,errorCount)    \
  1295.     (This)->lpVtbl -> VerifyAssemblyFile(This,__MIDL_0019,errors,errorSize,errorCount)
  1296.  
  1297. #endif /* COBJMACROS */
  1298.  
  1299.  
  1300. #endif     /* C style interface */
  1301.  
  1302.  
  1303.  
  1304. HRESULT STDMETHODCALLTYPE ICorRuntimeHost_VerifyClassesInModule_Proxy( 
  1305.     ICorRuntimeHost __RPC_FAR * This,
  1306.     /* [in] */ DWORD BaseAddress);
  1307.  
  1308.  
  1309. void __RPC_STUB ICorRuntimeHost_VerifyClassesInModule_Stub(
  1310.     IRpcStubBuffer *This,
  1311.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1312.     PRPC_MESSAGE _pRpcMessage,
  1313.     DWORD *_pdwStubPhase);
  1314.  
  1315.  
  1316. HRESULT STDMETHODCALLTYPE ICorRuntimeHost_CreateFiberInfo_Proxy( 
  1317.     ICorRuntimeHost __RPC_FAR * This);
  1318.  
  1319.  
  1320. void __RPC_STUB ICorRuntimeHost_CreateFiberInfo_Stub(
  1321.     IRpcStubBuffer *This,
  1322.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1323.     PRPC_MESSAGE _pRpcMessage,
  1324.     DWORD *_pdwStubPhase);
  1325.  
  1326.  
  1327. HRESULT STDMETHODCALLTYPE ICorRuntimeHost_DeleteFiber_Proxy( 
  1328.     ICorRuntimeHost __RPC_FAR * This);
  1329.  
  1330.  
  1331. void __RPC_STUB ICorRuntimeHost_DeleteFiber_Stub(
  1332.     IRpcStubBuffer *This,
  1333.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1334.     PRPC_MESSAGE _pRpcMessage,
  1335.     DWORD *_pdwStubPhase);
  1336.  
  1337.  
  1338. HRESULT STDMETHODCALLTYPE ICorRuntimeHost_SwitchFiberIn_Proxy( 
  1339.     ICorRuntimeHost __RPC_FAR * This,
  1340.     /* [in] */ DWORD __RPC_FAR *pFiberCookie);
  1341.  
  1342.  
  1343. void __RPC_STUB ICorRuntimeHost_SwitchFiberIn_Stub(
  1344.     IRpcStubBuffer *This,
  1345.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1346.     PRPC_MESSAGE _pRpcMessage,
  1347.     DWORD *_pdwStubPhase);
  1348.  
  1349.  
  1350. HRESULT STDMETHODCALLTYPE ICorRuntimeHost_SwitchFiberOut_Proxy( 
  1351.     ICorRuntimeHost __RPC_FAR * This,
  1352.     /* [out] */ DWORD __RPC_FAR *__RPC_FAR *pFiberCookie);
  1353.  
  1354.  
  1355. void __RPC_STUB ICorRuntimeHost_SwitchFiberOut_Stub(
  1356.     IRpcStubBuffer *This,
  1357.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1358.     PRPC_MESSAGE _pRpcMessage,
  1359.     DWORD *_pdwStubPhase);
  1360.  
  1361.  
  1362. HRESULT STDMETHODCALLTYPE ICorRuntimeHost_MapFile_Proxy( 
  1363.     ICorRuntimeHost __RPC_FAR * This,
  1364.     /* [in] */ ULONG hFile,
  1365.     /* [out] */ HMODULE __RPC_FAR *hMapAddress);
  1366.  
  1367.  
  1368. void __RPC_STUB ICorRuntimeHost_MapFile_Stub(
  1369.     IRpcStubBuffer *This,
  1370.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1371.     PRPC_MESSAGE _pRpcMessage,
  1372.     DWORD *_pdwStubPhase);
  1373.  
  1374.  
  1375. HRESULT STDMETHODCALLTYPE ICorRuntimeHost_GetConfiguration_Proxy( 
  1376.     ICorRuntimeHost __RPC_FAR * This,
  1377.     /* [out] */ ICorConfiguration __RPC_FAR *__RPC_FAR *pConfiguration);
  1378.  
  1379.  
  1380. void __RPC_STUB ICorRuntimeHost_GetConfiguration_Stub(
  1381.     IRpcStubBuffer *This,
  1382.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1383.     PRPC_MESSAGE _pRpcMessage,
  1384.     DWORD *_pdwStubPhase);
  1385.  
  1386.  
  1387. HRESULT STDMETHODCALLTYPE ICorRuntimeHost_Start_Proxy( 
  1388.     ICorRuntimeHost __RPC_FAR * This);
  1389.  
  1390.  
  1391. void __RPC_STUB ICorRuntimeHost_Start_Stub(
  1392.     IRpcStubBuffer *This,
  1393.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1394.     PRPC_MESSAGE _pRpcMessage,
  1395.     DWORD *_pdwStubPhase);
  1396.  
  1397.  
  1398. HRESULT STDMETHODCALLTYPE ICorRuntimeHost_Stop_Proxy( 
  1399.     ICorRuntimeHost __RPC_FAR * This);
  1400.  
  1401.  
  1402. void __RPC_STUB ICorRuntimeHost_Stop_Stub(
  1403.     IRpcStubBuffer *This,
  1404.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1405.     PRPC_MESSAGE _pRpcMessage,
  1406.     DWORD *_pdwStubPhase);
  1407.  
  1408.  
  1409. HRESULT STDMETHODCALLTYPE ICorRuntimeHost_CreateDomain_Proxy( 
  1410.     ICorRuntimeHost __RPC_FAR * This,
  1411.     /* [in] */ LPWSTR pwzFriendlyName,
  1412.     /* [in] */ IUnknown __RPC_FAR *pIdentityArray,
  1413.     /* [in] */ IUnknown __RPC_FAR *pPolicyArray,
  1414.     /* [out] */ IUnknown __RPC_FAR *__RPC_FAR *pAppDomain);
  1415.  
  1416.  
  1417. void __RPC_STUB ICorRuntimeHost_CreateDomain_Stub(
  1418.     IRpcStubBuffer *This,
  1419.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1420.     PRPC_MESSAGE _pRpcMessage,
  1421.     DWORD *_pdwStubPhase);
  1422.  
  1423.  
  1424. HRESULT STDMETHODCALLTYPE ICorRuntimeHost_CreateDomainProxy_Proxy( 
  1425.     ICorRuntimeHost __RPC_FAR * This,
  1426.     /* [in] */ LPWSTR pwzFriendlyName,
  1427.     /* [in] */ IUnknown __RPC_FAR *pIdentityArray,
  1428.     /* [in] */ IUnknown __RPC_FAR *pPolicyArray,
  1429.     /* [out] */ IUnknown __RPC_FAR *__RPC_FAR *pDomainProxy);
  1430.  
  1431.  
  1432. void __RPC_STUB ICorRuntimeHost_CreateDomainProxy_Stub(
  1433.     IRpcStubBuffer *This,
  1434.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1435.     PRPC_MESSAGE _pRpcMessage,
  1436.     DWORD *_pdwStubPhase);
  1437.  
  1438.  
  1439. HRESULT STDMETHODCALLTYPE ICorRuntimeHost_GetDefaultDomain_Proxy( 
  1440.     ICorRuntimeHost __RPC_FAR * This,
  1441.     /* [out] */ IUnknown __RPC_FAR *__RPC_FAR *pAppDomain);
  1442.  
  1443.  
  1444. void __RPC_STUB ICorRuntimeHost_GetDefaultDomain_Stub(
  1445.     IRpcStubBuffer *This,
  1446.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1447.     PRPC_MESSAGE _pRpcMessage,
  1448.     DWORD *_pdwStubPhase);
  1449.  
  1450.  
  1451. HRESULT STDMETHODCALLTYPE ICorRuntimeHost_EnumDomains_Proxy( 
  1452.     ICorRuntimeHost __RPC_FAR * This,
  1453.     /* [out] */ HDOMAINENUM __RPC_FAR *hEnum);
  1454.  
  1455.  
  1456. void __RPC_STUB ICorRuntimeHost_EnumDomains_Stub(
  1457.     IRpcStubBuffer *This,
  1458.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1459.     PRPC_MESSAGE _pRpcMessage,
  1460.     DWORD *_pdwStubPhase);
  1461.  
  1462.  
  1463. HRESULT STDMETHODCALLTYPE ICorRuntimeHost_NextDomain_Proxy( 
  1464.     ICorRuntimeHost __RPC_FAR * This,
  1465.     /* [in] */ HDOMAINENUM hEnum,
  1466.     /* [out] */ IUnknown __RPC_FAR *__RPC_FAR *pAppDomain);
  1467.  
  1468.  
  1469. void __RPC_STUB ICorRuntimeHost_NextDomain_Stub(
  1470.     IRpcStubBuffer *This,
  1471.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1472.     PRPC_MESSAGE _pRpcMessage,
  1473.     DWORD *_pdwStubPhase);
  1474.  
  1475.  
  1476. HRESULT STDMETHODCALLTYPE ICorRuntimeHost_ResetDomainEnum_Proxy( 
  1477.     ICorRuntimeHost __RPC_FAR * This,
  1478.     /* [in] */ HDOMAINENUM hEnum);
  1479.  
  1480.  
  1481. void __RPC_STUB ICorRuntimeHost_ResetDomainEnum_Stub(
  1482.     IRpcStubBuffer *This,
  1483.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1484.     PRPC_MESSAGE _pRpcMessage,
  1485.     DWORD *_pdwStubPhase);
  1486.  
  1487.  
  1488. HRESULT STDMETHODCALLTYPE ICorRuntimeHost_CloseEnum_Proxy( 
  1489.     ICorRuntimeHost __RPC_FAR * This,
  1490.     /* [in] */ HDOMAINENUM hEnum);
  1491.  
  1492.  
  1493. void __RPC_STUB ICorRuntimeHost_CloseEnum_Stub(
  1494.     IRpcStubBuffer *This,
  1495.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1496.     PRPC_MESSAGE _pRpcMessage,
  1497.     DWORD *_pdwStubPhase);
  1498.  
  1499.  
  1500. HRESULT STDMETHODCALLTYPE ICorRuntimeHost_VerifyAssembly_Proxy( 
  1501.     ICorRuntimeHost __RPC_FAR * This,
  1502.     /* [size_is][in] */ BYTE __RPC_FAR *pbModule,
  1503.     /* [in] */ DWORD cbModule,
  1504.     /* [size_is][in] */ LONG __RPC_FAR *errors,
  1505.     /* [in] */ DWORD errorSize,
  1506.     /* [out] */ DWORD __RPC_FAR *errorCount);
  1507.  
  1508.  
  1509. void __RPC_STUB ICorRuntimeHost_VerifyAssembly_Stub(
  1510.     IRpcStubBuffer *This,
  1511.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1512.     PRPC_MESSAGE _pRpcMessage,
  1513.     DWORD *_pdwStubPhase);
  1514.  
  1515.  
  1516. HRESULT STDMETHODCALLTYPE ICorRuntimeHost_VerifyAssemblyFile_Proxy( 
  1517.     ICorRuntimeHost __RPC_FAR * This,
  1518.     /* [in] */ LPWSTR __MIDL_0019,
  1519.     /* [size_is][in] */ LONG __RPC_FAR *errors,
  1520.     /* [in] */ DWORD errorSize,
  1521.     /* [out] */ DWORD __RPC_FAR *errorCount);
  1522.  
  1523.  
  1524. void __RPC_STUB ICorRuntimeHost_VerifyAssemblyFile_Stub(
  1525.     IRpcStubBuffer *This,
  1526.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1527.     PRPC_MESSAGE _pRpcMessage,
  1528.     DWORD *_pdwStubPhase);
  1529.  
  1530.  
  1531.  
  1532. #endif     /* __ICorRuntimeHost_INTERFACE_DEFINED__ */
  1533.  
  1534.  
  1535.  
  1536. #ifndef __mscoree_LIBRARY_DEFINED__
  1537. #define __mscoree_LIBRARY_DEFINED__
  1538.  
  1539. /* library mscoree */
  1540. /* [helpstring][version][uuid] */ 
  1541.  
  1542.  
  1543. EXTERN_C const IID LIBID_mscoree;
  1544.  
  1545. #ifndef __IManagedObject_INTERFACE_DEFINED__
  1546. #define __IManagedObject_INTERFACE_DEFINED__
  1547.  
  1548. /* interface IManagedObject */
  1549. /* [unique][helpstring][uuid][oleautomation][object] */ 
  1550.  
  1551.  
  1552. EXTERN_C const IID IID_IManagedObject;
  1553.  
  1554. #if defined(__cplusplus) && !defined(CINTERFACE)
  1555.     
  1556.     MIDL_INTERFACE("C3FCC19E-A970-11d2-8B5A-00A0C9B7C9C4")
  1557.     IManagedObject : public IUnknown
  1558.     {
  1559.     public:
  1560.         virtual HRESULT STDMETHODCALLTYPE GetSerializedBuffer( 
  1561.             /* [out] */ BSTR __RPC_FAR *pBSTR) = 0;
  1562.         
  1563.     };
  1564.     
  1565. #else     /* C style interface */
  1566.  
  1567.     typedef struct IManagedObjectVtbl
  1568.     {
  1569.         BEGIN_INTERFACE
  1570.         
  1571.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  1572.             IManagedObject __RPC_FAR * This,
  1573.             /* [in] */ REFIID riid,
  1574.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  1575.         
  1576.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  1577.             IManagedObject __RPC_FAR * This);
  1578.         
  1579.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  1580.             IManagedObject __RPC_FAR * This);
  1581.         
  1582.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSerializedBuffer )( 
  1583.             IManagedObject __RPC_FAR * This,
  1584.             /* [out] */ BSTR __RPC_FAR *pBSTR);
  1585.         
  1586.         END_INTERFACE
  1587.     } IManagedObjectVtbl;
  1588.  
  1589.     interface IManagedObject
  1590.     {
  1591.         CONST_VTBL struct IManagedObjectVtbl __RPC_FAR *lpVtbl;
  1592.     };
  1593.  
  1594.     
  1595.  
  1596. #ifdef COBJMACROS
  1597.  
  1598.  
  1599. #define IManagedObject_QueryInterface(This,riid,ppvObject)    \
  1600.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1601.  
  1602. #define IManagedObject_AddRef(This)    \
  1603.     (This)->lpVtbl -> AddRef(This)
  1604.  
  1605. #define IManagedObject_Release(This)    \
  1606.     (This)->lpVtbl -> Release(This)
  1607.  
  1608.  
  1609. #define IManagedObject_GetSerializedBuffer(This,pBSTR)    \
  1610.     (This)->lpVtbl -> GetSerializedBuffer(This,pBSTR)
  1611.  
  1612. #endif /* COBJMACROS */
  1613.  
  1614.  
  1615. #endif     /* C style interface */
  1616.  
  1617.  
  1618.  
  1619. HRESULT STDMETHODCALLTYPE IManagedObject_GetSerializedBuffer_Proxy( 
  1620.     IManagedObject __RPC_FAR * This,
  1621.     /* [out] */ BSTR __RPC_FAR *pBSTR);
  1622.  
  1623.  
  1624. void __RPC_STUB IManagedObject_GetSerializedBuffer_Stub(
  1625.     IRpcStubBuffer *This,
  1626.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1627.     PRPC_MESSAGE _pRpcMessage,
  1628.     DWORD *_pdwStubPhase);
  1629.  
  1630.  
  1631.  
  1632. #endif     /* __IManagedObject_INTERFACE_DEFINED__ */
  1633.  
  1634.  
  1635. EXTERN_C const CLSID CLSID_ComCallUnmarshal;
  1636.  
  1637. #ifdef __cplusplus
  1638.  
  1639. class DECLSPEC_UUID("3F281000-E95A-11d2-886B-00C04F869F04")
  1640. ComCallUnmarshal;
  1641. #endif
  1642.  
  1643. EXTERN_C const CLSID CLSID_CorRuntimeHost;
  1644.  
  1645. #ifdef __cplusplus
  1646.  
  1647. class DECLSPEC_UUID("CB2F6723-AB3A-11d2-9C40-00C04FA30A3E")
  1648. CorRuntimeHost;
  1649. #endif
  1650. #endif /* __mscoree_LIBRARY_DEFINED__ */
  1651.  
  1652. /* Additional Prototypes for ALL interfaces */
  1653.  
  1654. unsigned long             __RPC_USER  VARIANT_UserSize(     unsigned long __RPC_FAR *, unsigned long            , VARIANT __RPC_FAR * ); 
  1655. unsigned char __RPC_FAR * __RPC_USER  VARIANT_UserMarshal(  unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, VARIANT __RPC_FAR * ); 
  1656. unsigned char __RPC_FAR * __RPC_USER  VARIANT_UserUnmarshal(unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, VARIANT __RPC_FAR * ); 
  1657. void                      __RPC_USER  VARIANT_UserFree(     unsigned long __RPC_FAR *, VARIANT __RPC_FAR * ); 
  1658.  
  1659. /* end of Additional Prototypes */
  1660.  
  1661. #ifdef __cplusplus
  1662. }
  1663. #endif
  1664.  
  1665. #endif
  1666.