Sync the IDL and prebuilt files with coreclr
authorMike McLaughlin <mikem@microsoft.com>
Wed, 21 Aug 2019 21:47:28 +0000 (14:47 -0700)
committerMike McLaughlin <mikem@microsoft.com>
Wed, 21 Aug 2019 21:47:28 +0000 (14:47 -0700)
28 files changed:
src/inc/CMakeLists.txt
src/inc/cor.h
src/inc/cordebug.idl
src/inc/corhdr.h
src/inc/corprof.idl
src/inc/crosscomp.h
src/inc/gchost.idl [deleted file]
src/inc/metahost.idl
src/inc/palclr.h
src/inc/palclr_win.h
src/inc/predeftlsslot.h
src/inc/stacktrace.h
src/inc/stresslog.h
src/inc/switches.h
src/inc/tls.h
src/inc/xcordebug.idl
src/pal/prebuilt/idl/cordebug_i.cpp
src/pal/prebuilt/idl/corprof_i.cpp
src/pal/prebuilt/idl/gchost_i.cpp [deleted file]
src/pal/prebuilt/idl/xcordebug_i.cpp
src/pal/prebuilt/inc/clrprivbinding.h
src/pal/prebuilt/inc/cordebug.h
src/pal/prebuilt/inc/corerror.h
src/pal/prebuilt/inc/corprof.h
src/pal/prebuilt/inc/gchost.h [deleted file]
src/pal/prebuilt/inc/metahost.h
src/pal/prebuilt/inc/mscoree.h
src/pal/prebuilt/inc/xcordebug.h

index a9bee4289d4b980233ba7e915e505ecc542d274b..0671d865dc2121b52ab98bb8c97f112071f71a9d 100644 (file)
@@ -11,7 +11,6 @@ set( CORGUIDS_IDL_SOURCES
   xclrdata.idl
   corprof.idl
   corpub.idl
-  gchost.idl
   mscorsvc.idl
   clrprivappxhosting.idl
   clrprivbinding.idl
@@ -47,7 +46,7 @@ set_source_files_properties(${CORGUIDS_SOURCES}
                             PROPERTIES GENERATED TRUE)
 
 # Compile *_i.c as C files
-add_compile_options(/TC)
+#add_compile_options(/TC)
 
 else()
 
index 85ef14d8cbb4de262e789a64c4d22e185b6afd0f..034801b05f5be829b469b2c2aea64f9ffb107e7a 100644 (file)
 
 //*****************************************************************************
 
-#if defined(_MSC_VER) && !defined(USE_DEPRECATED_CLR_API_WITHOUT_WARNING)
-#define DEPRECATED_CLR_API_MESG "This API has been deprecated. Refer to http://go.microsoft.com/fwlink/?LinkId=143720 for more details."
-#define DECLARE_DEPRECATED __declspec(deprecated(DEPRECATED_CLR_API_MESG))
-#define DEPRECATED_CLR_STDAPI EXTERN_C DECLARE_DEPRECATED HRESULT STDAPICALLTYPE
-#define DEPRECATED_CLR_STDAPI_(type) EXTERN_C DECLARE_DEPRECATED type STDAPICALLTYPE
-#else // _MSC_VER && !USE_DEPRECATED_CLR_API_WITHOUT_WARNING
-#define DECLARE_DEPRECATED
-#define DEPRECATED_CLR_STDAPI STDAPI
-#define DEPRECATED_CLR_STDAPI_(type) STDAPI_(type)
-#endif // _MSC_VER && !USE_DEPRECATED_CLR_API_WITHOUT_WARNING
-
 #ifdef __cplusplus
 extern "C" {
 #endif
@@ -145,32 +134,6 @@ typedef UNALIGNED void const *UVCP_CONSTANT;
 #define INVALID_TASK_ID         0x0 
 #define MAX_CONNECTION_NAME     MAX_PATH
 
-//*****************************************************************************
-//*****************************************************************************
-//
-// D L L   P U B L I C   E N T R Y    P O I N T   D E C L A R A T I O N S
-//
-//*****************************************************************************
-//*****************************************************************************
-
-BOOL STDMETHODCALLTYPE _CorDllMain(HINSTANCE hInst, DWORD dwReason, LPVOID lpReserved);
-__int32 STDMETHODCALLTYPE _CorExeMain();
-__int32 STDMETHODCALLTYPE _CorExeMainInternal();
-__int32 STDMETHODCALLTYPE _CorExeMain2( // Executable exit code.
-    PBYTE   pUnmappedPE,                // -> memory mapped code
-    DWORD   cUnmappedPE,                // Size of memory mapped code
-    _In_ LPWSTR  pImageNameIn,          // -> Executable Name
-    _In_ LPWSTR  pLoadersFileName,      // -> Loaders Name
-    _In_ LPWSTR  pCmdLine);             // -> Command Line
-
-STDAPI _CorValidateImage(PVOID *ImageBase, LPCWSTR FileName);
-STDAPI_(VOID) _CorImageUnloading(PVOID ImageBase);
-
-DEPRECATED_CLR_STDAPI          CoInitializeEE(DWORD fFlags);
-DEPRECATED_CLR_STDAPI_(void)   CoUninitializeEE(BOOL fFlags);
-DEPRECATED_CLR_STDAPI_(void)   CoEEShutDownCOM(void);
-
-
 
 #define MAIN_CLR_MODULE_NAME_W        W("coreclr")
 #define MAIN_CLR_MODULE_NAME_A         "coreclr"
@@ -179,21 +142,11 @@ DEPRECATED_CLR_STDAPI_(void)   CoEEShutDownCOM(void);
 #define MAIN_CLR_DLL_NAME_A           MAKEDLLNAME_A(MAIN_CLR_MODULE_NAME_A)
 
 
-
 #define MSCOREE_SHIM_W               MAIN_CLR_DLL_NAME_W
 #define MSCOREE_SHIM_A               MAIN_CLR_DLL_NAME_A
 
 #define SWITCHOUT_HANDLE_VALUE ((HANDLE)(LONG_PTR)-2)
 
-
-//
-// CoInitializeCor flags.
-//
-typedef enum tagCOINITCOR
-{
-    COINITCOR_DEFAULT       = 0x0           // Default initialization mode. 
-} COINITICOR;
-
 //
 // CoInitializeEE flags.
 //
@@ -204,15 +157,6 @@ typedef enum tagCOINITEE
     COINITEE_MAIN           = 0x2           // Initialize prior to entering the main routine 
 } COINITIEE;
 
-//
-// CoInitializeEE flags.
-//
-typedef enum tagCOUNINITEE
-{
-    COUNINITEE_DEFAULT      = 0x0,          // Default uninitialization mode.
-    COUNINITEE_DLL          = 0x1           // Uninitialization mode for unloading DLL. 
-} COUNINITIEE;
-
 //*****************************************************************************
 //*****************************************************************************
 //
@@ -227,18 +171,6 @@ typedef enum tagCOUNINITEE
 #include <corhdr.h>
 #endif // <windows.h> updates
 
-//*****************************************************************************
-//*****************************************************************************
-//
-// D L L   P U B L I C   E N T R Y    P O I N T   D E C L A R A T I O N S
-//
-//*****************************************************************************
-//*****************************************************************************
-
-DEPRECATED_CLR_STDAPI          CoInitializeCor(DWORD fFlags);
-DEPRECATED_CLR_STDAPI_(void)   CoUninitializeCor(void);
-
-//
 //*****************************************************************************
 //*****************************************************************************
 
@@ -2494,10 +2426,5 @@ inline ULONG CorSigUncompressPointer(   // return number of bytes of that compre
 
 #endif  // __cplusplus
 
-#undef DEPRECATED_CLR_STDAPI_
-#undef DEPRECATED_CLR_STDAPI
-#undef DECLARE_DEPRECATED
-#undef DEPRECATED_CLR_API_MESG
-
 #endif // _COR_H_
 // EOF =======================================================================
index ce1bf4a49e2b5acd325440e004b9f9aae76e2b83..c0dcb7670b10a424d930fee1c49a53cee8c07346 100644 (file)
@@ -6491,6 +6491,40 @@ interface ICorDebugObjectValue2 : IUnknown
                                     [out] ICorDebugType **ppType);
 };
 
+[
+    object,
+    local,
+    uuid(3AF70CC7-6047-47F6-A5C5-090A1A622638),
+    pointer_default(unique)
+]
+interface ICorDebugDelegateObjectValue : IUnknown
+{
+    /*
+     * GetTarget retrieves the object on which the delegate calls the function.
+     * Returns:
+     *  - S_OK:
+     *      - The ICorDebugReferenceValue object targeted by the function.
+     *      - NULL if the delegate function is a static function or an open delegate
+     *  - HRESULT CORDBG_E_UNSUPPORTED_DELEGATE for curently unsupported delegates.
+     *      In this case, the value of ppObject should not be used. Some of these
+     *      include: Secure wrappers, Open Virual delegates.
+     */
+    HRESULT GetTarget([out] ICorDebugReferenceValue **ppObject);
+
+    /*
+     * GetFunction returns the function that gets run by the delegate.
+    *  - S_OK:
+     *      - The ICorDebugFunction function for the function the delegate would invoke.
+     *      - There are a few cases where the ICorDebugFunction can be different from what's expected,
+     *        such as generic methods, which won't contain the instantiation. 
+     *  - HRESULT CORDBG_E_UNSUPPORTED_DELEGATE for curently unsupported delegates.
+     *      In this case, the value of ppObject should not be used. Some of these
+     *      include: Secure wrappers, Open Virual delegates.
+     */
+    HRESULT GetFunction([out] ICorDebugFunction **ppFunction);
+}
+
+
 /*
  * ICorDebugBoxValue is a subclass of ICorDebugValue which
  * represents a boxed value class object.
index 6675582528424e906588cd129621b29ec6201257..4b14d7fa061efb493a65ab90e2f269c0dee3c1c9 100644 (file)
@@ -21,7 +21,7 @@
 #define FRAMEWORK_REGISTRY_KEY_W        W("Software\\Microsoft\\.NETFramework")
 
 // keys for HKCU
-#ifdef _WIN64    
+#ifdef BIT64    
 #define USER_FRAMEWORK_REGISTRY_KEY             "Software\\Microsoft\\.NETFramework64"
 #define USER_FRAMEWORK_REGISTRY_KEY_W        W("Software\\Microsoft\\.NETFramework64")
 #else
@@ -239,7 +239,8 @@ typedef struct IMAGE_COR20_HEADER
     IMAGE_DATA_DIRECTORY    VTableFixups;
     IMAGE_DATA_DIRECTORY    ExportAddressTableJumps;
 
-       // null for ordinary IL images.  NGEN images it points at a code:CORCOMPILE_HEADER structure
+       // null for ordinary IL images. In NGEN images it points at a code:CORCOMPILE_HEADER structure.
+       // In Ready2Run images it points to a READYTORUN_HEADER.
     IMAGE_DATA_DIRECTORY    ManagedNativeHeader;
     
 } IMAGE_COR20_HEADER, *PIMAGE_COR20_HEADER;
@@ -1175,9 +1176,9 @@ typedef struct IMAGE_COR_ILMETHOD_SECT_EH_FAT
 /***********************************/
 typedef struct IMAGE_COR_ILMETHOD_SECT_EH_CLAUSE_SMALL
 {
-#ifdef _WIN64
+#ifdef BIT64
     unsigned            Flags         : 16;
-#else // !_WIN64
+#else // !BIT64
     CorExceptionFlag    Flags         : 16;
 #endif
     unsigned            TryOffset     : 16;
index f8295886ba020c6b4cc1d5d7177993ff2389be5a..1d66137b10bc1532936f63219e1ed5cd1c132213 100644 (file)
@@ -418,6 +418,9 @@ typedef HRESULT __stdcall StackSnapshotCallback(
                 BYTE context[],
                 void *clientData);
 
+/* Callback for each object reference */
+typedef BOOL STDMETHODCALLTYPE ObjectReferenceCallback(ObjectID root, ObjectID* reference, void *clientData);
+
 typedef enum
 {
     // These flags represent classes of callback events
@@ -3946,8 +3949,8 @@ interface ICorProfilerInfo9 : ICorProfilerInfo8
 ]
 interface ICorProfilerInfo10 : ICorProfilerInfo9
 {
-    // Given an ObjectID, fetches all its object references and offsets (if any).
-    HRESULT GetObjectReferences(ObjectID objectId, ULONG32 cNumReferences, ULONG32 *pcNumReferences, ObjectID references[], SIZE_T offsets[]);
+    // Given an ObjectID, callback and clientData, enumerates each object reference (if any).
+    HRESULT EnumerateObjectReferences(ObjectID objectId, ObjectReferenceCallback callback, void* clientData);
 
     // Given an ObjectID, determines whether it is in a read only segment.
     HRESULT IsFrozenObject(ObjectID objectId, BOOL *pbFrozen);
@@ -3971,6 +3974,12 @@ interface ICorProfilerInfo10 : ICorProfilerInfo9
                 [in]                       ULONG       cFunctions,
                 [in, size_is(cFunctions)]  ModuleID    moduleIds[],
                 [in, size_is(cFunctions)]  mdMethodDef methodIds[]);
+
+    // Suspend the runtime without performing a GC.
+    HRESULT SuspendRuntime();
+
+    // Restart the runtime from a previous suspension.
+    HRESULT ResumeRuntime();
 }
 
 /*
@@ -4047,25 +4056,3 @@ interface ICorProfilerAssemblyReferenceProvider : IUnknown
     // assembly specified in the wszAssemblyPath argument of the GetAssemblyReferences callback.
     HRESULT AddAssemblyReference(const COR_PRF_ASSEMBLY_REFERENCE_INFO * pAssemblyRefInfo);
 };
-
-
-/***************************************************************************************
-** ICLRProfiling                                                                     **
-** Activated using mscoree!CLRCreateInstance. Export AttachProfiler API to profilers **
-***************************************************************************************/
-[
-    uuid(B349ABE3-B56F-4689-BFCD-76BF39D888EA),
-    version(1.0),
-    helpstring("CoreCLR profiling interface for profiler attach"),
-    local
-]
-interface ICLRProfiling : IUnknown
-{
-    HRESULT AttachProfiler(
-        [in] DWORD dwProfileeProcessID,
-        [in] DWORD dwMillisecondsMax,                        // optional
-        [in] const CLSID * pClsidProfiler,
-        [in] LPCWSTR wszProfilerPath,                        // optional
-        [in, size_is(cbClientData)] void * pvClientData,     // optional
-        [in] UINT cbClientData);                             // optional
-}
index 62d1175d32945e8f8ec2a0feff00e79655d3b78f..66e5da9cd366b4961048865a8574a33fb171d355 100644 (file)
@@ -8,7 +8,7 @@
 
 #pragma once
 
-#if (!defined(_WIN64) && defined(_TARGET_64BIT_)) || (defined(_WIN64) && !defined(_TARGET_64BIT_))
+#if (!defined(BIT64) && defined(_TARGET_64BIT_)) || (defined(BIT64) && !defined(_TARGET_64BIT_))
 #define CROSSBITNESS_COMPILE
 #endif
 
diff --git a/src/inc/gchost.idl b/src/inc/gchost.idl
deleted file mode 100644 (file)
index 6d85f91..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-// Licensed to the .NET Foundation under one or more agreements.
-// The .NET Foundation licenses this file to you under the MIT license.
-// See the LICENSE file in the project root for more information.
-/* -------------------------------------------------------------------------- *
- * Common Language Runtime Profiling interfaces
- *
- * The IGCHost allows a host environment to get statistics about the
- * garbage collector as well as to gain some limited control over collections.
- * This interface can be QueryInterface'd for on from the CorHost object.
- * -------------------------------------------------------------------------- */
-import "unknwn.idl";
-
-
-#if defined(FEATURE_WINDOWSPHONE)
-/*
- * This structure is used to return statics for the GC system.  Set the Flags
- * value to a bitmask of values that should be returned.  Only those values which
- * are requested are calculated and returned to the caller.
- */
-typedef struct _COR_GC_STATS
-{
-    ULONG       Flags;                                  // What values to get.
-
-    // Value when COR_GC_COUNTS is specified.
-    SIZE_T       ExplicitGCCount;                        // How many times was GC forced to run by external request.
-    SIZE_T       GenCollectionsTaken[3];                    // Number of collections done for each generation
-
-    // Memory sizes, valid for COR_GC_MEMORYUSAGE.
-    SIZE_T       CommittedKBytes;                        // Total committed bytes from all heaps.    
-    SIZE_T       ReservedKBytes;                         // Total reserved bytes from all heaps.    
-    SIZE_T       Gen0HeapSizeKBytes;                     // Size of gen 0 heap.
-    SIZE_T       Gen1HeapSizeKBytes;                     // Size of gen 1 heap.
-    SIZE_T       Gen2HeapSizeKBytes;                     // Size of gen 2 heap.
-    SIZE_T       LargeObjectHeapSizeKBytes;              // Size of large object heap.
-    SIZE_T       KBytesPromotedFromGen0;                 // How many bytes promoted to next generation.
-    SIZE_T       KBytesPromotedFromGen1;
-
-} COR_GC_STATS;
-#endif // FEATURE_WINDOWSPHONE
-
-cpp_quote("/*")
-cpp_quote(" * WARNING - This is a dummy interface that should never be used.")
-cpp_quote(" * The code is written this way because Midl requires a CoClass, Interface, etc... that generates")
-cpp_quote(" * a guid.  Removing the IGCHost interface removes the only guid")
-cpp_quote(" * This option was selected because ifdefs are not simple to implement for excluding files in SOURCES")
-cpp_quote("*/")
-[
-       object,
-       uuid(F9423916-2A35-4f03-9EE9-DDAFA3C8AEE0),
-       pointer_default(unique),
-       local
-]
-interface IDummyDoNotUse : IUnknown
-{
-}
index b7c2e0ba67750f81c6059330321a7c001b3ba3bf..1ed19b5ba9bdbf42027bd8107f3d5e0434a7ea03 100644 (file)
@@ -488,7 +488,6 @@ interface ICLRRuntimeInfo : IUnknown
      ** CLSID_TypeNameFactory        IID_ITypeNameFactory                            **
      ** CLSID_CLRStrongName          IID_ICLRStrongName                              **
      ** CLSID_CLRDebuggingLegacy     IID_ICorDebug                                   **
-     ** CLSID_CLRProfiling           IID_ICLRProfiling                               **
      **                                                                              **
      ** Supersedes: CorBindTo* and others                                            **
      **********************************************************************************/
index 925a5a25288f88ae2a058ab808a7eee822ba703f..bba278b776fe580bf0eaa4ad81b3c0babe892dca 100644 (file)
     __try                                                                       \
     {                                                                           \
         ___oldOkayToThrowValue = ___pState->IsOkToThrow();                      \
-        ___pState->SetOkToThrow();                                        \
-        PAL_ENTER_THROWS_REGION;
+        ___pState->SetOkToThrow();
 
 // Special version that avoids touching the debug state after doing work in a DllMain for process or thread detach.
 #define PAL_TRY_HANDLER_DBG_BEGIN_DLLMAIN(_reason)                              \
         if ((_reason == DLL_PROCESS_DETACH) || (_reason == DLL_THREAD_DETACH))  \
         {                                                                       \
             ___pState = NULL;                                                   \
-        }                                                                       \
-        PAL_ENTER_THROWS_REGION;
+        }
 
 #define PAL_TRY_HANDLER_DBG_END                                                 \
-        PAL_LEAVE_THROWS_REGION                                                 \
     }                                                                           \
     __finally                                                                   \
     {                                                                           \
 #define SET_UNALIGNED_VAL64(_pObject, _Value) SET_UNALIGNED_64(_pObject, VAL64((UINT64)_Value))
 #endif
 
-#ifdef _WIN64
+#ifdef BIT64
 #define VALPTR(x) VAL64(x)
 #define GET_UNALIGNED_PTR(x) GET_UNALIGNED_64(x)
 #define GET_UNALIGNED_VALPTR(x) GET_UNALIGNED_VAL64(x)
 #endif
 
 #if !defined(MAX_LONGPATH)
-#define MAX_LONGPATH    1024        /* max. length of full pathname */
+#define MAX_LONGPATH   260 /* max. length of full pathname */
 #endif
 #if !defined(MAX_PATH_FNAME)
-#define MAX_PATH_FNAME  MAX_PATH    /* max. length of full pathname */
+#define MAX_PATH_FNAME   MAX_PATH /* max. length of full pathname */
 #endif
 
 #define __clr_reserved __reserved
index 701fad3b4e8fed16ad3faaffdb7f1137dc7db0e8..50505869559bac5a468c638b1a49ea72e5dbe754 100644 (file)
 #define WIN_PAL_ENDTRY_NAKED_DBG                                                          
 #endif // defined(ENABLE_CONTRACTS_IMPL) && !defined(JIT64_BUILD)
 
+#if !defined (FEATURE_PAL)
+// Native system libray handle.
+// In Windows, NATIVE_LIBRARY_HANDLE is the same as HMODULE.
+typedef HMODULE NATIVE_LIBRARY_HANDLE;
+#endif // !FEATURE_PAL
+
 #endif // __PALCLR_WIN_H__
index 2e51009e26209c3630c3dac2dff1ccae7d4046e5..b2a3f6b49bd37f37724973174c3c1e8bf27e4ef2 100644 (file)
@@ -22,9 +22,9 @@ enum PredefinedTlsSlots
     TlsIdx_JitPerf,
     TlsIdx_JitX86Perf,
     TlsIdx_JitLogEnv,
-    TlsIdx_IceCap,
+    TlsIdx_AssertDlgStatus, // Whether the thread is displaying an assert dialog
     TlsIdx_StressLog,
-    TlsIdx_Unused,
+    TlsIdx_CantStopCount, // Can't-stop counter for any thread
     TlsIdx_Check,
     TlsIdx_ForbidGCLoaderUseCount,
     TlsIdx_ClrDebugState,         // Pointer to ClrDebugState* structure
@@ -32,11 +32,8 @@ enum PredefinedTlsSlots
 
     // Add more indices here.
     TlsIdx_ThreadType, // bit flags to indicate special thread's type 
-    TlsIdx_CantStopCount, // Can't-stop counter for any thread
     TlsIdx_OwnedCrstsChain, // slot to store the Crsts owned by this thread
-    TlsIdx_AppDomainAgilePendingTable,
     TlsIdx_CantAllocCount, //Can't allocate memory on heap in this thread
-    TlsIdx_AssertDlgStatus, // Whether the thread is displaying an assert dialog
 
     // A transient thread value that indicates this thread is currently walking its stack
     // or the stack of another thread. This value is useful to help short-circuit
index 9152116d39d2dbcad90d6274154a1f0e9e7d457c..b46fb0e8f0f9e27b70daaec633017c720dc5f7df 100644 (file)
@@ -22,7 +22,7 @@ HINSTANCE LoadDbgHelp();
 #define cfrMaxAssertStackLevels 20
 #define cchMaxAssertExprLen 257
 
-#ifdef _WIN64
+#ifdef BIT64
 
 #define cchMaxAssertStackLevelStringLen \
     ((3 * 8) + cchMaxAssertModuleLen + cchMaxAssertSymbolLen + 13)
index bbf2e00d515870ca7b3540e56e88ea4ac5bab0e8..9ebb354ee2c0f21eb1a41d359c7ad69646c7c66a 100644 (file)
@@ -445,11 +445,11 @@ struct StressMsg {
     friend class ThreadStressLog;
     friend class StressLog;
 };
-#ifdef _WIN64
+#ifdef BIT64
 #define STRESSLOG_CHUNK_SIZE (32 * 1024)
-#else //_WIN64
+#else //BIT64
 #define STRESSLOG_CHUNK_SIZE (16 * 1024)
-#endif //_WIN64
+#endif //BIT64
 #define GC_STRESSLOG_MULTIPLY 5
 
 // a chunk of memory for stress log
index 60034602c3e1ed8add56e0845c044084db767f7f..dfd1c60dc6b42a1f9dc4ecd27a99f388feac2942 100644 (file)
@@ -76,7 +76,7 @@
     #error Please add a new #elif clause and define all portability macros for the new platform
 #endif
 
-#if defined(_WIN64)
+#if defined(BIT64)
 #define JIT_IS_ALIGNED
 #endif
 
 
 // Prefer double alignment for structs and arrays with doubles. Put arrays of doubles more agressively 
 // into large object heap for performance because large object heap is 8 byte aligned 
-#if !defined(FEATURE_64BIT_ALIGNMENT) && !defined(_WIN64)
+#if !defined(FEATURE_64BIT_ALIGNMENT) && !defined(BIT64)
 #define FEATURE_DOUBLE_ALIGNMENT_HINT
 #endif
 
index 98e18cff498d00cbfbac7c04bfc6828e469d2f62..c5858845a25419dc64ffc5edbbdea3be358eaf4a 100644 (file)
@@ -19,7 +19,7 @@
 #define OFFSETOF__TLS__tls_CurrentThread         (0x0)
 #define OFFSETOF__TLS__tls_EETlsData             (2*sizeof(void*))
 
-#ifdef DBG_TARGET_WIN64
+#ifdef DBG_TARGET_64BIT
 #define WINNT_OFFSETOF__TEB__ThreadLocalStoragePointer  0x58
 #else
 #define WINNT_OFFSETOF__TEB__ThreadLocalStoragePointer  0x2c
index 646c2069eab207c13f7fe9d426f53bfc829491b9..ef9128bea7dc780c69a9b3a20889d5bd4ab04a9b 100644 (file)
@@ -54,32 +54,3 @@ interface ICorDebugProcess4 : IUnknown
     HRESULT ProcessStateChanged([in] CorDebugStateChange eChange);
 
 };
-
-#ifdef FEATURE_LEGACYNETCF_DBG_HOST_CONTROL
-
-/* A private API for use on Windows phone to invoke CLR hosting
- * callbacks on IHostNetCFDebugControlManager. This allows the
- * host's UI thread to be suspended and resumed on demand.
- *
- * This API should not be used for anything other than the 
- * Windows Phone scenario, it should never be made public,
- * and as soon as we support mixed-mode debugging it should
- * be retired by removing the interface and failing any
- * QueryInterface call for it.
-*/
-[
-    object,
-    local,
-    uuid(34B27FB0-A318-450D-A0DD-11B70B21F41D),
-    pointer_default(unique)
-]
-interface ICorDebugLegacyNetCFHostCallbackInvoker_PrivateWindowsPhoneOnly : IUnknown
-{
-    // Invokes IHostNetCFDebugControlManager::NotifyPause() on the debuggee's host
-    HRESULT InvokePauseCallback();
-
-    // Invokes IHostNetCFDebugControlManager::NotifyResume() on the debuggee's host
-    HRESULT InvokeResumeCallback();
-};
-
-#endif
\ No newline at end of file
index 923f78b4d4d8d281f9874acc08cf9c3e73639255..65ed624a75f01d47fc6e303f2f913db32587ab09 100644 (file)
@@ -5,11 +5,11 @@
 /* link this file in with the server and any clients */
 
 
- /* File created by MIDL compiler version 8.00.0603 */
-/* at Fri Sep 23 15:43:16 2016
+ /* File created by MIDL compiler version 8.01.0622 */
+/* at Mon Jan 18 19:14:07 2038
  */
-/* Compiler settings for cordebug.idl:
-    Oicf, W1, Zp8, env=Win32 (32b run), target_arch=X86 8.00.0603 
+/* Compiler settings for E:/repos/coreclr2/src/inc/cordebug.idl:
+    Oicf, W1, Zp8, env=Win32 (32b run), target_arch=X86 8.01.0622 
     protocol : dce , ms_ext, c_ext, robust
     error checks: allocation ref bounds_check enum stub_data 
     VC __declspec() decoration level: 
@@ -63,9 +63,9 @@ typedef IID CLSID;
 #endif // CLSID_DEFINED
 
 #define MIDL_DEFINE_GUID(type,name,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8) \
-        const type name = {l,w1,w2,{b1,b2,b3,b4,b5,b6,b7,b8}}
+        EXTERN_C __declspec(selectany) const type name = {l,w1,w2,{b1,b2,b3,b4,b5,b6,b7,b8}}
 
-#endif !_MIDL_USE_GUIDDEF_
+#endif // !_MIDL_USE_GUIDDEF_
 
 MIDL_DEFINE_GUID(IID, IID_ICorDebugDataTarget,0xFE06DC28,0x49FB,0x4636,0xA4,0xA3,0xE8,0x0D,0xB4,0xAE,0x11,0x6C);
 
@@ -118,6 +118,9 @@ MIDL_DEFINE_GUID(IID, IID_ICorDebugManagedCallback,0x3d6f5f60,0x7538,0x11d3,0x8d
 MIDL_DEFINE_GUID(IID, IID_ICorDebugManagedCallback3,0x264EA0FC,0x2591,0x49AA,0x86,0x8E,0x83,0x5E,0x65,0x15,0x32,0x3F);
 
 
+MIDL_DEFINE_GUID(IID, IID_ICorDebugManagedCallback4,0x322911AE,0x16A5,0x49BA,0x84,0xA3,0xED,0x69,0x67,0x81,0x38,0xA3);
+
+
 MIDL_DEFINE_GUID(IID, IID_ICorDebugManagedCallback2,0x250E5EEA,0xDB5C,0x4C76,0xB6,0xF3,0x8C,0x46,0xF1,0x2E,0x32,0x03);
 
 
@@ -199,6 +202,9 @@ MIDL_DEFINE_GUID(IID, IID_ICorDebugProcess7,0x9B2C54E4,0x119F,0x4D6F,0xB4,0x02,0
 MIDL_DEFINE_GUID(IID, IID_ICorDebugProcess8,0x2E6F28C1,0x85EB,0x4141,0x80,0xAD,0x0A,0x90,0x94,0x4B,0x96,0x39);
 
 
+MIDL_DEFINE_GUID(IID, IID_ICorDebugProcess10,0x8F378F6F,0x1017,0x4461,0x98,0x90,0xEC,0xF6,0x4C,0x54,0x07,0x9F);
+
+
 MIDL_DEFINE_GUID(IID, IID_ICorDebugModuleDebugEvent,0x51A15E8D,0x9FFF,0x4864,0x9B,0x87,0xF4,0xFB,0xDE,0xA7,0x47,0xA2);
 
 
@@ -358,6 +364,9 @@ MIDL_DEFINE_GUID(IID, IID_ICorDebugObjectValue,0x18AD3D6E,0xB7D2,0x11d2,0xBD,0x0
 MIDL_DEFINE_GUID(IID, IID_ICorDebugObjectValue2,0x49E4A320,0x4A9B,0x4eca,0xB1,0x05,0x22,0x9F,0xB7,0xD5,0x00,0x9F);
 
 
+MIDL_DEFINE_GUID(IID, IID_ICorDebugDelegateObjectValue,0x3AF70CC7,0x6047,0x47F6,0xA5,0xC5,0x09,0x0A,0x1A,0x62,0x26,0x38);
+
+
 MIDL_DEFINE_GUID(IID, IID_ICorDebugBoxValue,0xCC7BCAFC,0x8A68,0x11d2,0x98,0x3C,0x00,0x00,0xF8,0x08,0x34,0x2D);
 
 
index 065be3dd4a53aea6b9f55929839b1e8a9270a7ee..1f8d02ca01d226dc9ee9e452c87cda58802c84f4 100644 (file)
@@ -101,7 +101,7 @@ MIDL_DEFINE_GUID(IID, IID_ICorProfilerObjectEnum,0x2C6269BD,0x2D13,0x4321,0xAE,0
 MIDL_DEFINE_GUID(IID, IID_ICorProfilerFunctionEnum,0xFF71301A,0xB994,0x429D,0xA1,0x0B,0xB3,0x45,0xA6,0x52,0x80,0xEF);
 
 
-MIDL_DEFINE_GUID(IID, IID_ICorProfilerModuleEnum,0xb0266d75,0x2081,0x4493,0xaf,0x7f,0x02,0x8b,0xa3,0x4d,0xb8,0x91);
+MIDL_DEFINE_GUID(IID, IID_ICorProfilerModuleEnum,0xB0266D75,0x2081,0x4493,0xAF,0x7F,0x02,0x8B,0xA3,0x4D,0xB8,0x91);
 
 
 MIDL_DEFINE_GUID(IID, IID_IMethodMalloc,0xA0EFB28B,0x6EE2,0x4d7b,0xB9,0x83,0xA7,0x5E,0xF7,0xBE,0xED,0xB8);
@@ -110,7 +110,7 @@ MIDL_DEFINE_GUID(IID, IID_IMethodMalloc,0xA0EFB28B,0x6EE2,0x4d7b,0xB9,0x83,0xA7,
 MIDL_DEFINE_GUID(IID, IID_ICorProfilerFunctionControl,0xF0963021,0xE1EA,0x4732,0x85,0x81,0xE0,0x1B,0x0B,0xD3,0xC0,0xC6);
 
 
-MIDL_DEFINE_GUID(IID, IID_ICorProfilerInfo4,0x0d8fdcaa,0x6257,0x47bf,0xb1,0xbf,0x94,0xda,0xc8,0x84,0x66,0xee);
+MIDL_DEFINE_GUID(IID, IID_ICorProfilerInfo4,0x0D8FDCAA,0x6257,0x47BF,0xB1,0xBF,0x94,0xDA,0xC8,0x84,0x66,0xEE);
 
 
 MIDL_DEFINE_GUID(IID, IID_ICorProfilerInfo5,0x07602928,0xCE38,0x4B83,0x81,0xE7,0x74,0xAD,0xAF,0x78,0x12,0x14);
@@ -125,13 +125,16 @@ MIDL_DEFINE_GUID(IID, IID_ICorProfilerInfo7,0x9AEECC0D,0x63E0,0x4187,0x8C,0x00,0
 MIDL_DEFINE_GUID(IID, IID_ICorProfilerInfo8,0xC5AC80A6,0x782E,0x4716,0x80,0x44,0x39,0x59,0x8C,0x60,0xCF,0xBF);
 
 
-MIDL_DEFINE_GUID(IID, IID_ICorProfilerInfo9,0X008170DB,0XF8CC,0X4796,0X9A,0X51,0XDC,0X8A,0XA0,0XB4,0X70,0x12);
+MIDL_DEFINE_GUID(IID, IID_ICorProfilerInfo9,0x008170DB,0xF8CC,0x4796,0x9A,0x51,0xDC,0x8A,0xA0,0xB4,0x70,0x12);
+
+
+MIDL_DEFINE_GUID(IID, IID_ICorProfilerInfo10,0x2F1B5152,0xC869,0x40C9,0xAA,0x5F,0x3A,0xBE,0x02,0x6B,0xD7,0x20);
 
 
 MIDL_DEFINE_GUID(IID, IID_ICorProfilerMethodEnum,0xFCCEE788,0x0088,0x454B,0xA8,0x11,0xC9,0x9F,0x29,0x8D,0x19,0x42);
 
 
-MIDL_DEFINE_GUID(IID, IID_ICorProfilerThreadEnum,0x571194f7,0x25ed,0x419f,0xaa,0x8b,0x70,0x16,0xb3,0x15,0x97,0x01);
+MIDL_DEFINE_GUID(IID, IID_ICorProfilerThreadEnum,0x571194F7,0x25ED,0x419F,0xAA,0x8B,0x70,0x16,0xB3,0x15,0x97,0x01);
 
 
 MIDL_DEFINE_GUID(IID, IID_ICorProfilerAssemblyReferenceProvider,0x66A78C24,0x2EEF,0x4F65,0xB4,0x5F,0xDD,0x1D,0x80,0x38,0xBF,0x3C);
diff --git a/src/pal/prebuilt/idl/gchost_i.cpp b/src/pal/prebuilt/idl/gchost_i.cpp
deleted file mode 100644 (file)
index 32ecfbe..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-// Licensed to the .NET Foundation under one or more agreements.
-// The .NET Foundation licenses this file to you under the MIT license.
-// See the LICENSE file in the project root for more information.
-
-
-
-/* this ALWAYS GENERATED file contains the IIDs and CLSIDs */
-
-/* link this file in with the server and any clients */
-
-
- /* File created by MIDL compiler version 8.00.0603 */
-/* @@MIDL_FILE_HEADING(  ) */
-
-#pragma warning( disable: 4049 )  /* more than 64k source lines */
-
-
-#ifdef __cplusplus
-extern "C"{
-#endif 
-
-
-#include <rpc.h>
-#include <rpcndr.h>
-
-#ifdef _MIDL_USE_GUIDDEF_
-
-#ifndef INITGUID
-#define INITGUID
-#include <guiddef.h>
-#undef INITGUID
-#else
-#include <guiddef.h>
-#endif
-
-#define MIDL_DEFINE_GUID(type,name,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8) \
-        DEFINE_GUID(name,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8)
-
-#else // !_MIDL_USE_GUIDDEF_
-
-#ifndef __IID_DEFINED__
-#define __IID_DEFINED__
-
-typedef struct _IID
-{
-    unsigned long x;
-    unsigned short s1;
-    unsigned short s2;
-    unsigned char  c[8];
-} IID;
-
-#endif // __IID_DEFINED__
-
-#ifndef CLSID_DEFINED
-#define CLSID_DEFINED
-typedef IID CLSID;
-#endif // CLSID_DEFINED
-
-#define MIDL_DEFINE_GUID(type,name,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8) \
-        const type name = {l,w1,w2,{b1,b2,b3,b4,b5,b6,b7,b8}}
-
-#endif !_MIDL_USE_GUIDDEF_
-
-MIDL_DEFINE_GUID(IID, IID_IDummyDoNotUse,0xF9423916,0x2A35,0x4f03,0x9E,0xE9,0xDD,0xAF,0xA3,0xC8,0xAE,0xE0);
-
-#undef MIDL_DEFINE_GUID
-
-#ifdef __cplusplus
-}
-#endif
-
-
-
index ffafd17c34b71ccd4affe8236a3bb584f2728a2b..d87c3dc4554381d7e31dbc575b7c285ac54aa3d8 100644 (file)
@@ -1,7 +1,3 @@
-// Licensed to the .NET Foundation under one or more agreements.
-// The .NET Foundation licenses this file to you under the MIT license.
-// See the LICENSE file in the project root for more information.
-
 
 
 /* this ALWAYS GENERATED file contains the IIDs and CLSIDs */
@@ -9,7 +5,17 @@
 /* link this file in with the server and any clients */
 
 
- /* File created by MIDL compiler version 8.00.0603 */
+ /* File created by MIDL compiler version 8.01.0622 */
+/* at Mon Jan 18 19:14:07 2038
+ */
+/* Compiler settings for F:/Dev/coreclr/src/inc/xcordebug.idl:
+    Oicf, W1, Zp8, env=Win32 (32b run), target_arch=X86 8.01.0622 
+    protocol : dce , ms_ext, c_ext, robust
+    error checks: allocation ref bounds_check enum stub_data 
+    VC __declspec() decoration level: 
+         __declspec(uuid()), __declspec(selectany), __declspec(novtable)
+         DECLSPEC_UUID(), MIDL_INTERFACE()
+*/
 /* @@MIDL_FILE_HEADING(  ) */
 
 #pragma warning( disable: 4049 )  /* more than 64k source lines */
@@ -57,12 +63,13 @@ typedef IID CLSID;
 #endif // CLSID_DEFINED
 
 #define MIDL_DEFINE_GUID(type,name,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8) \
-        const type name = {l,w1,w2,{b1,b2,b3,b4,b5,b6,b7,b8}}
+        EXTERN_C __declspec(selectany) const type name = {l,w1,w2,{b1,b2,b3,b4,b5,b6,b7,b8}}
 
-#endif !_MIDL_USE_GUIDDEF_
+#endif // !_MIDL_USE_GUIDDEF_
 
 MIDL_DEFINE_GUID(IID, IID_ICorDebugProcess4,0xE930C679,0x78AF,0x4953,0x8A,0xB7,0xB0,0xAA,0xBF,0x0F,0x9F,0x80);
 
+
 MIDL_DEFINE_GUID(IID, IID_ICorDebugLegacyNetCFHostCallbackInvoker_PrivateWindowsPhoneOnly,0x34B27FB0,0xA318,0x450D,0xA0,0xDD,0x11,0xB7,0x0B,0x21,0xF4,0x1D);
 
 #undef MIDL_DEFINE_GUID
index 04ef10c3f6c499aba7f1a1adaa5c5f46256766a4..ceb11feaffd33b97d264789e88b6c9f4b5717edc 100644 (file)
@@ -155,23 +155,9 @@ EXTERN_C const IID IID_ICLRPrivBinder;
             /* [in] */ IAssemblyName *pAssemblyName,
             /* [retval][out] */ ICLRPrivAssembly **ppAssembly) = 0;
         
-        virtual HRESULT STDMETHODCALLTYPE VerifyBind( 
-            /* [in] */ IAssemblyName *AssemblyName,
-            /* [in] */ ICLRPrivAssembly *pAssembly,
-            /* [in] */ ICLRPrivAssemblyInfo *pAssemblyInfo) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE GetBinderFlags( 
-            /* [retval][out] */ DWORD *pBinderFlags) = 0;
-        
         virtual HRESULT STDMETHODCALLTYPE GetBinderID( 
             /* [retval][out] */ UINT_PTR *pBinderId) = 0;
         
-        virtual HRESULT STDMETHODCALLTYPE FindAssemblyBySpec( 
-            /* [in] */ LPVOID pvAppDomain,
-            /* [in] */ LPVOID pvAssemblySpec,
-            /* [out] */ HRESULT *pResult,
-            /* [out] */ ICLRPrivAssembly **ppAssembly) = 0;
-
         virtual HRESULT STDMETHODCALLTYPE GetLoaderAllocator(
             /* [retval][out] */ LPVOID* pLoaderAllocator) = 0;
     };
@@ -200,27 +186,10 @@ EXTERN_C const IID IID_ICLRPrivBinder;
             /* [in] */ IAssemblyName *pAssemblyName,
             /* [retval][out] */ ICLRPrivAssembly **ppAssembly);
         
-        HRESULT ( STDMETHODCALLTYPE *VerifyBind )( 
-            ICLRPrivBinder * This,
-            /* [in] */ IAssemblyName *AssemblyName,
-            /* [in] */ ICLRPrivAssembly *pAssembly,
-            /* [in] */ ICLRPrivAssemblyInfo *pAssemblyInfo);
-        
-        HRESULT ( STDMETHODCALLTYPE *GetBinderFlags )( 
-            ICLRPrivBinder * This,
-            /* [retval][out] */ DWORD *pBinderFlags);
-        
         HRESULT ( STDMETHODCALLTYPE *GetBinderID )( 
             ICLRPrivBinder * This,
             /* [retval][out] */ UINT_PTR *pBinderId);
         
-        HRESULT ( STDMETHODCALLTYPE *FindAssemblyBySpec )( 
-            ICLRPrivBinder * This,
-            /* [in] */ LPVOID pvAppDomain,
-            /* [in] */ LPVOID pvAssemblySpec,
-            /* [out] */ HRESULT *pResult,
-            /* [out] */ ICLRPrivAssembly **ppAssembly);
-        
         HRESULT(STDMETHODCALLTYPE *GetLoaderAllocator)(
             ICLRPrivBinder * This,
             /* [retval][out] */ LPVOID *pLoaderAllocator) = 0;
@@ -251,18 +220,9 @@ EXTERN_C const IID IID_ICLRPrivBinder;
 #define ICLRPrivBinder_BindAssemblyByName(This,pAssemblyName,ppAssembly)       \
     ( (This)->lpVtbl -> BindAssemblyByName(This,pAssemblyName,ppAssembly) ) 
 
-#define ICLRPrivBinder_VerifyBind(This,AssemblyName,pAssembly,pAssemblyInfo)   \
-    ( (This)->lpVtbl -> VerifyBind(This,AssemblyName,pAssembly,pAssemblyInfo) ) 
-
-#define ICLRPrivBinder_GetBinderFlags(This,pBinderFlags)       \
-    ( (This)->lpVtbl -> GetBinderFlags(This,pBinderFlags) ) 
-
 #define ICLRPrivBinder_GetBinderID(This,pBinderId)     \
     ( (This)->lpVtbl -> GetBinderID(This,pBinderId) ) 
 
-#define ICLRPrivBinder_FindAssemblyBySpec(This,pvAppDomain,pvAssemblySpec,pResult,ppAssembly)  \
-    ( (This)->lpVtbl -> FindAssemblyBySpec(This,pvAppDomain,pvAssemblySpec,pResult,ppAssembly) ) 
-
 #endif /* COBJMACROS */
 
 
@@ -278,13 +238,6 @@ EXTERN_C const IID IID_ICLRPrivBinder;
 /* [local] */ 
 
 
-enum CLR_PRIV_BINDER_FLAGS
-    {
-        BINDER_NONE    = 0,
-        BINDER_DESIGNER_BINDING_CONTEXT        = 0x1,
-        BINDER_FINDASSEMBLYBYSPEC_REQUIRES_EXACT_MATCH = 0x2
-    } ;
-
 enum ASSEMBLY_IMAGE_TYPES
     {
         ASSEMBLY_IMAGE_TYPE_IL = 0x1,
@@ -349,27 +302,10 @@ EXTERN_C const IID IID_ICLRPrivAssembly;
             /* [in] */ IAssemblyName *pAssemblyName,
             /* [retval][out] */ ICLRPrivAssembly **ppAssembly);
         
-        HRESULT ( STDMETHODCALLTYPE *VerifyBind )( 
-            ICLRPrivAssembly * This,
-            /* [in] */ IAssemblyName *AssemblyName,
-            /* [in] */ ICLRPrivAssembly *pAssembly,
-            /* [in] */ ICLRPrivAssemblyInfo *pAssemblyInfo);
-        
-        HRESULT ( STDMETHODCALLTYPE *GetBinderFlags )( 
-            ICLRPrivAssembly * This,
-            /* [retval][out] */ DWORD *pBinderFlags);
-        
         HRESULT ( STDMETHODCALLTYPE *GetBinderID )( 
             ICLRPrivAssembly * This,
             /* [retval][out] */ UINT_PTR *pBinderId);
         
-        HRESULT ( STDMETHODCALLTYPE *FindAssemblyBySpec )( 
-            ICLRPrivAssembly * This,
-            /* [in] */ LPVOID pvAppDomain,
-            /* [in] */ LPVOID pvAssemblySpec,
-            /* [out] */ HRESULT *pResult,
-            /* [out] */ ICLRPrivAssembly **ppAssembly);
-        
         HRESULT ( STDMETHODCALLTYPE *IsShareable )( 
             ICLRPrivAssembly * This,
             /* [retval][out] */ BOOL *pbIsShareable);
@@ -410,18 +346,9 @@ EXTERN_C const IID IID_ICLRPrivAssembly;
 #define ICLRPrivAssembly_BindAssemblyByName(This,pAssemblyName,ppAssembly)     \
     ( (This)->lpVtbl -> BindAssemblyByName(This,pAssemblyName,ppAssembly) ) 
 
-#define ICLRPrivAssembly_VerifyBind(This,AssemblyName,pAssembly,pAssemblyInfo) \
-    ( (This)->lpVtbl -> VerifyBind(This,AssemblyName,pAssembly,pAssemblyInfo) ) 
-
-#define ICLRPrivAssembly_GetBinderFlags(This,pBinderFlags)     \
-    ( (This)->lpVtbl -> GetBinderFlags(This,pBinderFlags) ) 
-
 #define ICLRPrivAssembly_GetBinderID(This,pBinderId)   \
     ( (This)->lpVtbl -> GetBinderID(This,pBinderId) ) 
 
-#define ICLRPrivAssembly_FindAssemblyBySpec(This,pvAppDomain,pvAssemblySpec,pResult,ppAssembly)        \
-    ( (This)->lpVtbl -> FindAssemblyBySpec(This,pvAppDomain,pvAssemblySpec,pResult,ppAssembly) ) 
-
 
 #define ICLRPrivAssembly_IsShareable(This,pbIsShareable)       \
     ( (This)->lpVtbl -> IsShareable(This,pbIsShareable) ) 
index b3ebe7e05fc6d6ee827e154ac42d5139a6f1915d..96dc9c0eb192606d564dd2aa9468ec88bc7dac9e 100644 (file)
@@ -3,11 +3,11 @@
 /* this ALWAYS GENERATED file contains the definitions for the interfaces */
 
 
- /* File created by MIDL compiler version 8.00.0603 */
-/* at Fri Sep 23 15:43:16 2016
+ /* File created by MIDL compiler version 8.01.0622 */
+/* at Mon Jan 18 19:14:07 2038
  */
-/* Compiler settings for cordebug.idl:
-    Oicf, W1, Zp8, env=Win32 (32b run), target_arch=X86 8.00.0603 
+/* Compiler settings for E:/repos/coreclr2/src/inc/cordebug.idl:
+    Oicf, W1, Zp8, env=Win32 (32b run), target_arch=X86 8.01.0622 
     protocol : dce , ms_ext, c_ext, robust
     error checks: allocation ref bounds_check enum stub_data 
     VC __declspec() decoration level: 
@@ -29,7 +29,7 @@
 
 #ifndef __RPCNDR_H_VERSION__
 #error this stub requires an updated version of <rpcndr.h>
-#endif // __RPCNDR_H_VERSION__
+#endif /* __RPCNDR_H_VERSION__ */
 
 #ifndef COM_NO_WINDOWS_H
 #include "windows.h"
@@ -164,6 +164,13 @@ typedef interface ICorDebugManagedCallback3 ICorDebugManagedCallback3;
 #endif         /* __ICorDebugManagedCallback3_FWD_DEFINED__ */
 
 
+#ifndef __ICorDebugManagedCallback4_FWD_DEFINED__
+#define __ICorDebugManagedCallback4_FWD_DEFINED__
+typedef interface ICorDebugManagedCallback4 ICorDebugManagedCallback4;
+
+#endif         /* __ICorDebugManagedCallback4_FWD_DEFINED__ */
+
+
 #ifndef __ICorDebugManagedCallback2_FWD_DEFINED__
 #define __ICorDebugManagedCallback2_FWD_DEFINED__
 typedef interface ICorDebugManagedCallback2 ICorDebugManagedCallback2;
@@ -353,6 +360,13 @@ typedef interface ICorDebugProcess8 ICorDebugProcess8;
 #endif         /* __ICorDebugProcess8_FWD_DEFINED__ */
 
 
+#ifndef __ICorDebugProcess10_FWD_DEFINED__
+#define __ICorDebugProcess10_FWD_DEFINED__
+typedef interface ICorDebugProcess10 ICorDebugProcess10;
+
+#endif         /* __ICorDebugProcess10_FWD_DEFINED__ */
+
+
 #ifndef __ICorDebugModuleDebugEvent_FWD_DEFINED__
 #define __ICorDebugModuleDebugEvent_FWD_DEFINED__
 typedef interface ICorDebugModuleDebugEvent ICorDebugModuleDebugEvent;
@@ -581,7 +595,7 @@ typedef interface ICorDebugFunction3 ICorDebugFunction3;
 #define __ICorDebugFunction4_FWD_DEFINED__
 typedef interface ICorDebugFunction4 ICorDebugFunction4;
 
-#endif  /* __ICorDebugFunction4_FWD_DEFINED__ */
+#endif         /* __ICorDebugFunction4_FWD_DEFINED__ */
 
 
 #ifndef __ICorDebugCode_FWD_DEFINED__
@@ -724,6 +738,13 @@ typedef interface ICorDebugObjectValue2 ICorDebugObjectValue2;
 #endif         /* __ICorDebugObjectValue2_FWD_DEFINED__ */
 
 
+#ifndef __ICorDebugDelegateObjectValue_FWD_DEFINED__
+#define __ICorDebugDelegateObjectValue_FWD_DEFINED__
+typedef interface ICorDebugDelegateObjectValue ICorDebugDelegateObjectValue;
+
+#endif         /* __ICorDebugDelegateObjectValue_FWD_DEFINED__ */
+
+
 #ifndef __ICorDebugBoxValue_FWD_DEFINED__
 #define __ICorDebugBoxValue_FWD_DEFINED__
 typedef interface ICorDebugBoxValue ICorDebugBoxValue;
@@ -3751,14 +3772,120 @@ EXTERN_C const IID IID_ICorDebugManagedCallback3;
 #endif         /* __ICorDebugManagedCallback3_INTERFACE_DEFINED__ */
 
 
-/* interface __MIDL_itf_cordebug_0000_0017 */
+#ifndef __ICorDebugManagedCallback4_INTERFACE_DEFINED__
+#define __ICorDebugManagedCallback4_INTERFACE_DEFINED__
+
+/* interface ICorDebugManagedCallback4 */
+/* [unique][uuid][local][object] */ 
+
+
+EXTERN_C const IID IID_ICorDebugManagedCallback4;
+
+#if defined(__cplusplus) && !defined(CINTERFACE)
+    
+    MIDL_INTERFACE("322911AE-16A5-49BA-84A3-ED69678138A3")
+    ICorDebugManagedCallback4 : public IUnknown
+    {
+    public:
+        virtual HRESULT STDMETHODCALLTYPE BeforeGarbageCollection( 
+            /* [in] */ ICorDebugProcess *pProcess) = 0;
+        
+        virtual HRESULT STDMETHODCALLTYPE AfterGarbageCollection( 
+            /* [in] */ ICorDebugProcess *pProcess) = 0;
+        
+        virtual HRESULT STDMETHODCALLTYPE DataBreakpoint( 
+            /* [in] */ ICorDebugProcess *pProcess,
+            /* [in] */ ICorDebugThread *pThread,
+            /* [in] */ BYTE *pContext,
+            /* [in] */ ULONG32 contextSize) = 0;
+        
+    };
+    
+    
+#else  /* C style interface */
+
+    typedef struct ICorDebugManagedCallback4Vtbl
+    {
+        BEGIN_INTERFACE
+        
+        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
+            ICorDebugManagedCallback4 * This,
+            /* [in] */ REFIID riid,
+            /* [annotation][iid_is][out] */ 
+            _COM_Outptr_  void **ppvObject);
+        
+        ULONG ( STDMETHODCALLTYPE *AddRef )( 
+            ICorDebugManagedCallback4 * This);
+        
+        ULONG ( STDMETHODCALLTYPE *Release )( 
+            ICorDebugManagedCallback4 * This);
+        
+        HRESULT ( STDMETHODCALLTYPE *BeforeGarbageCollection )( 
+            ICorDebugManagedCallback4 * This,
+            /* [in] */ ICorDebugProcess *pProcess);
+        
+        HRESULT ( STDMETHODCALLTYPE *AfterGarbageCollection )( 
+            ICorDebugManagedCallback4 * This,
+            /* [in] */ ICorDebugProcess *pProcess);
+        
+        HRESULT ( STDMETHODCALLTYPE *DataBreakpoint )( 
+            ICorDebugManagedCallback4 * This,
+            /* [in] */ ICorDebugProcess *pProcess,
+            /* [in] */ ICorDebugThread *pThread,
+            /* [in] */ BYTE *pContext,
+            /* [in] */ ULONG32 contextSize);
+        
+        END_INTERFACE
+    } ICorDebugManagedCallback4Vtbl;
+
+    interface ICorDebugManagedCallback4
+    {
+        CONST_VTBL struct ICorDebugManagedCallback4Vtbl *lpVtbl;
+    };
+
+    
+
+#ifdef COBJMACROS
+
+
+#define ICorDebugManagedCallback4_QueryInterface(This,riid,ppvObject)  \
+    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
+
+#define ICorDebugManagedCallback4_AddRef(This) \
+    ( (This)->lpVtbl -> AddRef(This) ) 
+
+#define ICorDebugManagedCallback4_Release(This)        \
+    ( (This)->lpVtbl -> Release(This) ) 
+
+
+#define ICorDebugManagedCallback4_BeforeGarbageCollection(This,pProcess)       \
+    ( (This)->lpVtbl -> BeforeGarbageCollection(This,pProcess) ) 
+
+#define ICorDebugManagedCallback4_AfterGarbageCollection(This,pProcess)        \
+    ( (This)->lpVtbl -> AfterGarbageCollection(This,pProcess) ) 
+
+#define ICorDebugManagedCallback4_DataBreakpoint(This,pProcess,pThread,pContext,contextSize)   \
+    ( (This)->lpVtbl -> DataBreakpoint(This,pProcess,pThread,pContext,contextSize) ) 
+
+#endif /* COBJMACROS */
+
+
+#endif         /* C style interface */
+
+
+
+
+#endif         /* __ICorDebugManagedCallback4_INTERFACE_DEFINED__ */
+
+
+/* interface __MIDL_itf_cordebug_0000_0018 */
 /* [local] */ 
 
 #pragma warning(disable:28718) 
 
 
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0017_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0017_v0_0_s_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0018_v0_0_c_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0018_v0_0_s_ifspec;
 
 #ifndef __ICorDebugManagedCallback2_INTERFACE_DEFINED__
 #define __ICorDebugManagedCallback2_INTERFACE_DEFINED__
@@ -3973,14 +4100,14 @@ EXTERN_C const IID IID_ICorDebugManagedCallback2;
 #endif         /* __ICorDebugManagedCallback2_INTERFACE_DEFINED__ */
 
 
-/* interface __MIDL_itf_cordebug_0000_0018 */
+/* interface __MIDL_itf_cordebug_0000_0019 */
 /* [local] */ 
 
 #pragma warning(pop)
 
 
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0018_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0018_v0_0_s_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0019_v0_0_c_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0019_v0_0_s_ifspec;
 
 #ifndef __ICorDebugUnmanagedCallback_INTERFACE_DEFINED__
 #define __ICorDebugUnmanagedCallback_INTERFACE_DEFINED__
@@ -4064,7 +4191,7 @@ EXTERN_C const IID IID_ICorDebugUnmanagedCallback;
 #endif         /* __ICorDebugUnmanagedCallback_INTERFACE_DEFINED__ */
 
 
-/* interface __MIDL_itf_cordebug_0000_0019 */
+/* interface __MIDL_itf_cordebug_0000_0020 */
 /* [local] */ 
 
 typedef 
@@ -4084,8 +4211,8 @@ enum CorDebugHandleType
 #pragma warning(disable:28718) 
 
 
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0019_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0019_v0_0_s_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0020_v0_0_c_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0020_v0_0_s_ifspec;
 
 #ifndef __ICorDebug_INTERFACE_DEFINED__
 #define __ICorDebug_INTERFACE_DEFINED__
@@ -4273,14 +4400,14 @@ EXTERN_C const IID IID_ICorDebug;
 #endif         /* __ICorDebug_INTERFACE_DEFINED__ */
 
 
-/* interface __MIDL_itf_cordebug_0000_0020 */
+/* interface __MIDL_itf_cordebug_0000_0021 */
 /* [local] */ 
 
 #pragma warning(pop)
 
 
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0020_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0020_v0_0_s_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0021_v0_0_c_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0021_v0_0_s_ifspec;
 
 #ifndef __ICorDebugRemoteTarget_INTERFACE_DEFINED__
 #define __ICorDebugRemoteTarget_INTERFACE_DEFINED__
@@ -4492,7 +4619,7 @@ EXTERN_C const IID IID_ICorDebugRemote;
 #endif         /* __ICorDebugRemote_INTERFACE_DEFINED__ */
 
 
-/* interface __MIDL_itf_cordebug_0000_0022 */
+/* interface __MIDL_itf_cordebug_0000_0023 */
 /* [local] */ 
 
 typedef struct _COR_VERSION
@@ -4505,8 +4632,8 @@ typedef struct _COR_VERSION
 
 
 
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0022_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0022_v0_0_s_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0023_v0_0_c_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0023_v0_0_s_ifspec;
 
 #ifndef __ICorDebug2_INTERFACE_DEFINED__
 #define __ICorDebug2_INTERFACE_DEFINED__
@@ -4668,7 +4795,7 @@ EXTERN_C const IID IID_ICorDebug2;
 #endif         /* __ICorDebug2_INTERFACE_DEFINED__ */
 
 
-/* interface __MIDL_itf_cordebug_0000_0023 */
+/* interface __MIDL_itf_cordebug_0000_0024 */
 /* [local] */ 
 
 typedef 
@@ -4680,8 +4807,8 @@ enum CorDebugThreadState
 
 
 
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0023_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0023_v0_0_s_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0024_v0_0_c_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0024_v0_0_s_ifspec;
 
 #ifndef __ICorDebugController_INTERFACE_DEFINED__
 #define __ICorDebugController_INTERFACE_DEFINED__
@@ -4863,15 +4990,15 @@ EXTERN_C const IID IID_ICorDebugController;
 #endif         /* __ICorDebugController_INTERFACE_DEFINED__ */
 
 
-/* interface __MIDL_itf_cordebug_0000_0024 */
+/* interface __MIDL_itf_cordebug_0000_0025 */
 /* [local] */ 
 
 #pragma warning(push)
 #pragma warning(disable:28718) 
 
 
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0024_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0024_v0_0_s_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0025_v0_0_c_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0025_v0_0_s_ifspec;
 
 #ifndef __ICorDebugAppDomain_INTERFACE_DEFINED__
 #define __ICorDebugAppDomain_INTERFACE_DEFINED__
@@ -5123,14 +5250,14 @@ EXTERN_C const IID IID_ICorDebugAppDomain;
 #endif         /* __ICorDebugAppDomain_INTERFACE_DEFINED__ */
 
 
-/* interface __MIDL_itf_cordebug_0000_0025 */
+/* interface __MIDL_itf_cordebug_0000_0026 */
 /* [local] */ 
 
 #pragma warning(pop)
 
 
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0025_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0025_v0_0_s_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0026_v0_0_c_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0026_v0_0_s_ifspec;
 
 #ifndef __ICorDebugAppDomain2_INTERFACE_DEFINED__
 #define __ICorDebugAppDomain2_INTERFACE_DEFINED__
@@ -5628,15 +5755,15 @@ EXTERN_C const IID IID_ICorDebugAppDomain4;
 #endif         /* __ICorDebugAppDomain4_INTERFACE_DEFINED__ */
 
 
-/* interface __MIDL_itf_cordebug_0000_0029 */
+/* interface __MIDL_itf_cordebug_0000_0030 */
 /* [local] */ 
 
 #pragma warning(push)
 #pragma warning(disable:28718) 
 
 
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0029_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0029_v0_0_s_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0030_v0_0_c_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0030_v0_0_s_ifspec;
 
 #ifndef __ICorDebugAssembly_INTERFACE_DEFINED__
 #define __ICorDebugAssembly_INTERFACE_DEFINED__
@@ -5766,14 +5893,14 @@ EXTERN_C const IID IID_ICorDebugAssembly;
 #endif         /* __ICorDebugAssembly_INTERFACE_DEFINED__ */
 
 
-/* interface __MIDL_itf_cordebug_0000_0030 */
+/* interface __MIDL_itf_cordebug_0000_0031 */
 /* [local] */ 
 
 #pragma warning(pop)
 
 
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0030_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0030_v0_0_s_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0031_v0_0_c_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0031_v0_0_s_ifspec;
 
 #ifndef __ICorDebugAssembly2_INTERFACE_DEFINED__
 #define __ICorDebugAssembly2_INTERFACE_DEFINED__
@@ -5945,7 +6072,7 @@ EXTERN_C const IID IID_ICorDebugAssembly3;
 #endif         /* __ICorDebugAssembly3_INTERFACE_DEFINED__ */
 
 
-/* interface __MIDL_itf_cordebug_0000_0032 */
+/* interface __MIDL_itf_cordebug_0000_0033 */
 /* [local] */ 
 
 #ifndef _DEF_COR_TYPEID_
@@ -5966,8 +6093,8 @@ typedef struct _COR_HEAPOBJECT
 
 
 
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0032_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0032_v0_0_s_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0033_v0_0_c_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0033_v0_0_s_ifspec;
 
 #ifndef __ICorDebugHeapEnum_INTERFACE_DEFINED__
 #define __ICorDebugHeapEnum_INTERFACE_DEFINED__
@@ -6081,7 +6208,7 @@ EXTERN_C const IID IID_ICorDebugHeapEnum;
 #endif         /* __ICorDebugHeapEnum_INTERFACE_DEFINED__ */
 
 
-/* interface __MIDL_itf_cordebug_0000_0033 */
+/* interface __MIDL_itf_cordebug_0000_0034 */
 /* [local] */ 
 
 typedef 
@@ -6119,8 +6246,8 @@ typedef struct _COR_HEAPINFO
 
 
 
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0033_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0033_v0_0_s_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0034_v0_0_c_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0034_v0_0_s_ifspec;
 
 #ifndef __ICorDebugHeapSegmentEnum_INTERFACE_DEFINED__
 #define __ICorDebugHeapSegmentEnum_INTERFACE_DEFINED__
@@ -6234,7 +6361,7 @@ EXTERN_C const IID IID_ICorDebugHeapSegmentEnum;
 #endif         /* __ICorDebugHeapSegmentEnum_INTERFACE_DEFINED__ */
 
 
-/* interface __MIDL_itf_cordebug_0000_0034 */
+/* interface __MIDL_itf_cordebug_0000_0035 */
 /* [local] */ 
 
 typedef 
@@ -6270,8 +6397,8 @@ typedef struct COR_GC_REFERENCE
 #endif // _DEF_COR_GC_REFERENCE_
 
 
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0034_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0034_v0_0_s_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0035_v0_0_c_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0035_v0_0_s_ifspec;
 
 #ifndef __ICorDebugGCReferenceEnum_INTERFACE_DEFINED__
 #define __ICorDebugGCReferenceEnum_INTERFACE_DEFINED__
@@ -6385,7 +6512,7 @@ EXTERN_C const IID IID_ICorDebugGCReferenceEnum;
 #endif         /* __ICorDebugGCReferenceEnum_INTERFACE_DEFINED__ */
 
 
-/* interface __MIDL_itf_cordebug_0000_0035 */
+/* interface __MIDL_itf_cordebug_0000_0036 */
 /* [local] */ 
 
 #ifndef _DEF_COR_ARRAY_LAYOUT_
@@ -6430,8 +6557,8 @@ typedef struct COR_FIELD
 #pragma warning(disable:28718) 
 
 
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0035_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0035_v0_0_s_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0036_v0_0_c_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0036_v0_0_s_ifspec;
 
 #ifndef __ICorDebugProcess_INTERFACE_DEFINED__
 #define __ICorDebugProcess_INTERFACE_DEFINED__
@@ -6781,14 +6908,14 @@ EXTERN_C const IID IID_ICorDebugProcess;
 #endif         /* __ICorDebugProcess_INTERFACE_DEFINED__ */
 
 
-/* interface __MIDL_itf_cordebug_0000_0036 */
+/* interface __MIDL_itf_cordebug_0000_0037 */
 /* [local] */ 
 
 #pragma warning(pop)
 
 
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0036_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0036_v0_0_s_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0037_v0_0_c_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0037_v0_0_s_ifspec;
 
 #ifndef __ICorDebugProcess2_INTERFACE_DEFINED__
 #define __ICorDebugProcess2_INTERFACE_DEFINED__
@@ -7232,7 +7359,7 @@ EXTERN_C const IID IID_ICorDebugProcess5;
 #endif         /* __ICorDebugProcess5_INTERFACE_DEFINED__ */
 
 
-/* interface __MIDL_itf_cordebug_0000_0039 */
+/* interface __MIDL_itf_cordebug_0000_0040 */
 /* [local] */ 
 
 typedef 
@@ -7268,8 +7395,8 @@ enum CorDebugStateChange
 
 
 
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0039_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0039_v0_0_s_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0040_v0_0_c_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0040_v0_0_s_ifspec;
 
 #ifndef __ICorDebugDebugEvent_INTERFACE_DEFINED__
 #define __ICorDebugDebugEvent_INTERFACE_DEFINED__
@@ -7361,7 +7488,7 @@ EXTERN_C const IID IID_ICorDebugDebugEvent;
 #endif         /* __ICorDebugDebugEvent_INTERFACE_DEFINED__ */
 
 
-/* interface __MIDL_itf_cordebug_0000_0040 */
+/* interface __MIDL_itf_cordebug_0000_0041 */
 /* [local] */ 
 
 typedef 
@@ -7383,8 +7510,8 @@ enum CorDebugCodeInvokePurpose
 
 
 
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0040_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0040_v0_0_s_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0041_v0_0_c_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0041_v0_0_s_ifspec;
 
 #ifndef __ICorDebugProcess6_INTERFACE_DEFINED__
 #define __ICorDebugProcess6_INTERFACE_DEFINED__
@@ -7532,7 +7659,7 @@ EXTERN_C const IID IID_ICorDebugProcess6;
 #endif         /* __ICorDebugProcess6_INTERFACE_DEFINED__ */
 
 
-/* interface __MIDL_itf_cordebug_0000_0041 */
+/* interface __MIDL_itf_cordebug_0000_0042 */
 /* [local] */ 
 
 typedef 
@@ -7544,8 +7671,8 @@ enum WriteableMetadataUpdateMode
 
 
 
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0041_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0041_v0_0_s_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0042_v0_0_c_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0042_v0_0_s_ifspec;
 
 #ifndef __ICorDebugProcess7_INTERFACE_DEFINED__
 #define __ICorDebugProcess7_INTERFACE_DEFINED__
@@ -7707,6 +7834,86 @@ EXTERN_C const IID IID_ICorDebugProcess8;
 #endif         /* __ICorDebugProcess8_INTERFACE_DEFINED__ */
 
 
+#ifndef __ICorDebugProcess10_INTERFACE_DEFINED__
+#define __ICorDebugProcess10_INTERFACE_DEFINED__
+
+/* interface ICorDebugProcess10 */
+/* [unique][uuid][local][object] */ 
+
+
+EXTERN_C const IID IID_ICorDebugProcess10;
+
+#if defined(__cplusplus) && !defined(CINTERFACE)
+    
+    MIDL_INTERFACE("8F378F6F-1017-4461-9890-ECF64C54079F")
+    ICorDebugProcess10 : public IUnknown
+    {
+    public:
+        virtual HRESULT STDMETHODCALLTYPE EnableGCNotificationEvents( 
+            BOOL fEnable) = 0;
+        
+    };
+    
+    
+#else  /* C style interface */
+
+    typedef struct ICorDebugProcess10Vtbl
+    {
+        BEGIN_INTERFACE
+        
+        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
+            ICorDebugProcess10 * This,
+            /* [in] */ REFIID riid,
+            /* [annotation][iid_is][out] */ 
+            _COM_Outptr_  void **ppvObject);
+        
+        ULONG ( STDMETHODCALLTYPE *AddRef )( 
+            ICorDebugProcess10 * This);
+        
+        ULONG ( STDMETHODCALLTYPE *Release )( 
+            ICorDebugProcess10 * This);
+        
+        HRESULT ( STDMETHODCALLTYPE *EnableGCNotificationEvents )( 
+            ICorDebugProcess10 * This,
+            BOOL fEnable);
+        
+        END_INTERFACE
+    } ICorDebugProcess10Vtbl;
+
+    interface ICorDebugProcess10
+    {
+        CONST_VTBL struct ICorDebugProcess10Vtbl *lpVtbl;
+    };
+
+    
+
+#ifdef COBJMACROS
+
+
+#define ICorDebugProcess10_QueryInterface(This,riid,ppvObject) \
+    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
+
+#define ICorDebugProcess10_AddRef(This)        \
+    ( (This)->lpVtbl -> AddRef(This) ) 
+
+#define ICorDebugProcess10_Release(This)       \
+    ( (This)->lpVtbl -> Release(This) ) 
+
+
+#define ICorDebugProcess10_EnableGCNotificationEvents(This,fEnable)    \
+    ( (This)->lpVtbl -> EnableGCNotificationEvents(This,fEnable) ) 
+
+#endif /* COBJMACROS */
+
+
+#endif         /* C style interface */
+
+
+
+
+#endif         /* __ICorDebugProcess10_INTERFACE_DEFINED__ */
+
+
 #ifndef __ICorDebugModuleDebugEvent_INTERFACE_DEFINED__
 #define __ICorDebugModuleDebugEvent_INTERFACE_DEFINED__
 
@@ -10691,7 +10898,7 @@ EXTERN_C const IID IID_ICorDebugILFrame3;
 #endif         /* __ICorDebugILFrame3_INTERFACE_DEFINED__ */
 
 
-/* interface __MIDL_itf_cordebug_0000_0065 */
+/* interface __MIDL_itf_cordebug_0000_0067 */
 /* [local] */ 
 
 typedef 
@@ -10703,8 +10910,8 @@ enum ILCodeKind
 
 
 
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0065_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0065_v0_0_s_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0067_v0_0_c_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0067_v0_0_s_ifspec;
 
 #ifndef __ICorDebugILFrame4_INTERFACE_DEFINED__
 #define __ICorDebugILFrame4_INTERFACE_DEFINED__
@@ -11068,15 +11275,15 @@ EXTERN_C const IID IID_ICorDebugNativeFrame;
 #endif         /* __ICorDebugNativeFrame_INTERFACE_DEFINED__ */
 
 
-/* interface __MIDL_itf_cordebug_0000_0067 */
+/* interface __MIDL_itf_cordebug_0000_0069 */
 /* [local] */ 
 
 #pragma warning(push)
 #pragma warning(disable:28718) 
 
 
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0067_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0067_v0_0_s_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0069_v0_0_c_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0069_v0_0_s_ifspec;
 
 #ifndef __ICorDebugNativeFrame2_INTERFACE_DEFINED__
 #define __ICorDebugNativeFrame2_INTERFACE_DEFINED__
@@ -11646,14 +11853,14 @@ EXTERN_C const IID IID_ICorDebugModule;
 #endif         /* __ICorDebugModule_INTERFACE_DEFINED__ */
 
 
-/* interface __MIDL_itf_cordebug_0000_0071 */
+/* interface __MIDL_itf_cordebug_0000_0073 */
 /* [local] */ 
 
 #pragma warning(pop)
 
 
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0071_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0071_v0_0_s_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0073_v0_0_c_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0073_v0_0_s_ifspec;
 
 #ifndef __ICorDebugModule2_INTERFACE_DEFINED__
 #define __ICorDebugModule2_INTERFACE_DEFINED__
@@ -12124,7 +12331,7 @@ EXTERN_C const IID IID_ICorDebugFunction3;
 
 
 
-#endif  /* __ICorDebugFunction3_INTERFACE_DEFINED__ */
+#endif         /* __ICorDebugFunction3_INTERFACE_DEFINED__ */
 
 
 #ifndef __ICorDebugFunction4_INTERFACE_DEFINED__
@@ -12148,7 +12355,7 @@ EXTERN_C const IID IID_ICorDebugFunction4;
     };
     
     
-#else   /* C style interface */
+#else  /* C style interface */
 
     typedef struct ICorDebugFunction4Vtbl
     {
@@ -12183,29 +12390,28 @@ EXTERN_C const IID IID_ICorDebugFunction4;
 #ifdef COBJMACROS
 
 
-#define ICorDebugFunction4_QueryInterface(This,riid,ppvObject)  \
+#define ICorDebugFunction4_QueryInterface(This,riid,ppvObject) \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define ICorDebugFunction4_AddRef(This) \
+#define ICorDebugFunction4_AddRef(This)        \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define ICorDebugFunction4_Release(This)    \
+#define ICorDebugFunction4_Release(This)       \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ICorDebugFunction4_CreateNativeBreakpoint(This,ppBreakpoint)    \
+#define ICorDebugFunction4_CreateNativeBreakpoint(This,ppBreakpoint)   \
     ( (This)->lpVtbl -> CreateNativeBreakpoint(This,ppBreakpoint) ) 
 
 #endif /* COBJMACROS */
 
 
-#endif  /* C style interface */
-
+#endif         /* C style interface */
 
 
 
-#endif  /* __ICorDebugFunction4_INTERFACE_DEFINED__ */
 
+#endif         /* __ICorDebugFunction4_INTERFACE_DEFINED__ */
 
 
 #ifndef __ICorDebugCode_INTERFACE_DEFINED__
@@ -14487,6 +14693,96 @@ EXTERN_C const IID IID_ICorDebugObjectValue2;
 #endif         /* __ICorDebugObjectValue2_INTERFACE_DEFINED__ */
 
 
+#ifndef __ICorDebugDelegateObjectValue_INTERFACE_DEFINED__
+#define __ICorDebugDelegateObjectValue_INTERFACE_DEFINED__
+
+/* interface ICorDebugDelegateObjectValue */
+/* [unique][uuid][local][object] */
+
+
+EXTERN_C const IID IID_ICorDebugDelegateObjectValue;
+
+#if defined(__cplusplus) && !defined(CINTERFACE)
+
+    MIDL_INTERFACE("3AF70CC7-6047-47F6-A5C5-090A1A622638")
+    ICorDebugDelegateObjectValue : public IUnknown
+    {
+    public:
+        virtual HRESULT STDMETHODCALLTYPE GetTarget(
+            /* [out] */ ICorDebugReferenceValue **ppObject) = 0;
+
+        virtual HRESULT STDMETHODCALLTYPE GetFunction(
+            /* [out] */ ICorDebugFunction **ppFunction) = 0;
+
+    };
+
+
+#else  /* C style interface */
+
+    typedef struct ICorDebugDelegateObjectValueVtbl
+    {
+        BEGIN_INTERFACE
+
+        HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
+            ICorDebugDelegateObjectValue * This,
+            /* [in] */ REFIID riid,
+            /* [annotation][iid_is][out] */
+            _COM_Outptr_  void **ppvObject);
+
+        ULONG ( STDMETHODCALLTYPE *AddRef )(
+            ICorDebugDelegateObjectValue * This);
+
+        ULONG ( STDMETHODCALLTYPE *Release )(
+            ICorDebugDelegateObjectValue * This);
+
+        HRESULT ( STDMETHODCALLTYPE *GetTarget )(
+            ICorDebugDelegateObjectValue * This,
+            /* [out] */ ICorDebugReferenceValue **ppObject);
+
+        HRESULT ( STDMETHODCALLTYPE *GetFunction )(
+            ICorDebugDelegateObjectValue * This,
+            /* [out] */ ICorDebugFunction **ppFunction);
+
+        END_INTERFACE
+    } ICorDebugDelegateObjectValueVtbl;
+
+    interface ICorDebugDelegateObjectValue
+    {
+        CONST_VTBL struct ICorDebugDelegateObjectValueVtbl *lpVtbl;
+    };
+
+
+
+#ifdef COBJMACROS
+
+
+#define ICorDebugDelegateObjectValue_QueryInterface(This,riid,ppvObject)       \
+    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
+
+#define ICorDebugDelegateObjectValue_AddRef(This)      \
+    ( (This)->lpVtbl -> AddRef(This) )
+
+#define ICorDebugDelegateObjectValue_Release(This)     \
+    ( (This)->lpVtbl -> Release(This) )
+
+
+#define ICorDebugDelegateObjectValue_GetTarget(This,ppObject)  \
+    ( (This)->lpVtbl -> GetTarget(This,ppObject) )
+
+#define ICorDebugDelegateObjectValue_GetFunction(This,ppFunction)      \
+    ( (This)->lpVtbl -> GetFunction(This,ppFunction) )
+
+#endif /* COBJMACROS */
+
+
+#endif         /* C style interface */
+
+
+
+
+#endif         /* __ICorDebugDelegateObjectValue_INTERFACE_DEFINED__ */
+
+
 #ifndef __ICorDebugBoxValue_INTERFACE_DEFINED__
 #define __ICorDebugBoxValue_INTERFACE_DEFINED__
 
@@ -14611,15 +14907,15 @@ EXTERN_C const IID IID_ICorDebugBoxValue;
 #endif         /* __ICorDebugBoxValue_INTERFACE_DEFINED__ */
 
 
-/* interface __MIDL_itf_cordebug_0000_0096 */
+/* interface __MIDL_itf_cordebug_0000_0100 */
 /* [local] */ 
 
 #pragma warning(push)
 #pragma warning(disable:28718) 
 
 
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0096_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0096_v0_0_s_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0100_v0_0_c_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0100_v0_0_s_ifspec;
 
 #ifndef __ICorDebugStringValue_INTERFACE_DEFINED__
 #define __ICorDebugStringValue_INTERFACE_DEFINED__
@@ -14759,14 +15055,14 @@ EXTERN_C const IID IID_ICorDebugStringValue;
 #endif         /* __ICorDebugStringValue_INTERFACE_DEFINED__ */
 
 
-/* interface __MIDL_itf_cordebug_0000_0097 */
+/* interface __MIDL_itf_cordebug_0000_0101 */
 /* [local] */ 
 
 #pragma warning(pop)
 
 
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0097_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0097_v0_0_s_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0101_v0_0_c_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0101_v0_0_s_ifspec;
 
 #ifndef __ICorDebugArrayValue_INTERFACE_DEFINED__
 #define __ICorDebugArrayValue_INTERFACE_DEFINED__
@@ -17541,15 +17837,15 @@ EXTERN_C const IID IID_ICorDebugBlockingObjectEnum;
 #endif         /* __ICorDebugBlockingObjectEnum_INTERFACE_DEFINED__ */
 
 
-/* interface __MIDL_itf_cordebug_0000_0121 */
+/* interface __MIDL_itf_cordebug_0000_0125 */
 /* [local] */ 
 
 #pragma warning(push)
 #pragma warning(disable:28718)
 
 
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0121_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0121_v0_0_s_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0125_v0_0_c_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0125_v0_0_s_ifspec;
 
 #ifndef __ICorDebugMDA_INTERFACE_DEFINED__
 #define __ICorDebugMDA_INTERFACE_DEFINED__
@@ -17689,7 +17985,7 @@ EXTERN_C const IID IID_ICorDebugMDA;
 #endif         /* __ICorDebugMDA_INTERFACE_DEFINED__ */
 
 
-/* interface __MIDL_itf_cordebug_0000_0122 */
+/* interface __MIDL_itf_cordebug_0000_0126 */
 /* [local] */ 
 
 #pragma warning(pop)
@@ -17697,8 +17993,8 @@ EXTERN_C const IID IID_ICorDebugMDA;
 #pragma warning(disable:28718) 
 
 
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0122_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0122_v0_0_s_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0126_v0_0_c_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0126_v0_0_s_ifspec;
 
 #ifndef __ICorDebugEditAndContinueErrorInfo_INTERFACE_DEFINED__
 #define __ICorDebugEditAndContinueErrorInfo_INTERFACE_DEFINED__
@@ -17814,14 +18110,14 @@ EXTERN_C const IID IID_ICorDebugEditAndContinueErrorInfo;
 #endif         /* __ICorDebugEditAndContinueErrorInfo_INTERFACE_DEFINED__ */
 
 
-/* interface __MIDL_itf_cordebug_0000_0123 */
+/* interface __MIDL_itf_cordebug_0000_0127 */
 /* [local] */ 
 
 #pragma warning(pop)
 
 
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0123_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0123_v0_0_s_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0127_v0_0_c_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_cordebug_0000_0127_v0_0_s_ifspec;
 
 #ifndef __ICorDebugEditAndContinueSnapshot_INTERFACE_DEFINED__
 #define __ICorDebugEditAndContinueSnapshot_INTERFACE_DEFINED__
index 237cd40aa6a42325bf827cb73da7fec566c90012..15dc301546497ff11d7ffb8fc0db1d2a8468838a 100644 (file)
@@ -65,6 +65,7 @@
 #define COR_E_LOADING_REFERENCE_ASSEMBLY EMAKEHR(0x1058)
 #define COR_E_NI_AND_RUNTIME_VERSION_MISMATCH EMAKEHR(0x1059)
 #define COR_E_LOADING_WINMD_REFERENCE_ASSEMBLY EMAKEHR(0x1069)
+#define COR_E_AMBIGUOUSIMPLEMENTATION EMAKEHR(0x106a)
 #define CLDB_E_FILE_BADREAD EMAKEHR(0x1100)
 #define CLDB_E_FILE_BADWRITE EMAKEHR(0x1101)
 #define CLDB_E_FILE_OLDVER EMAKEHR(0x1107)
@@ -78,6 +79,7 @@
 #define CLDB_E_RECORD_OUTOFORDER EMAKEHR(0x1135)
 #define CLDB_E_TOO_BIG EMAKEHR(0x1154)
 #define META_E_INVALID_TOKEN_TYPE EMAKEHR(0x115f)
+#define TLBX_E_LIBNOTREGISTERED EMAKEHR(0x1165)
 #define META_E_BADMETADATA EMAKEHR(0x118a)
 #define META_E_BAD_SIGNATURE EMAKEHR(0x1192)
 #define META_E_BAD_INPUT_PARAMETER EMAKEHR(0x1193)
 #define CORPROF_E_FUNCTION_IS_COLLECTIBLE EMAKEHR(0x137e)
 #define CORPROF_E_CALLBACK6_REQUIRED EMAKEHR(0x1380)
 #define CORPROF_E_CALLBACK7_REQUIRED EMAKEHR(0x1382)
+#define CORPROF_E_REJIT_INLINING_DISABLED EMAKEHR(0x1383)
+#define CORDIAGIPC_E_BAD_ENCODING EMAKEHR(0x1384)
+#define CORDIAGIPC_E_UNKNOWN_COMMAND EMAKEHR(0x1385)
+#define CORDIAGIPC_E_UNKNOWN_MAGIC EMAKEHR(0x1386)
+#define CORDIAGIPC_E_UNKNOWN_ERROR EMAKEHR(0x1387)
+#define CORPROF_E_SUSPENSION_IN_PROGRESS EMAKEHR(0x1388)
 #define SECURITY_E_INCOMPATIBLE_SHARE EMAKEHR(0x1401)
 #define SECURITY_E_UNVERIFIABLE EMAKEHR(0x1402)
 #define SECURITY_E_INCOMPATIBLE_EVIDENCE EMAKEHR(0x1403)
 #define CORDBG_E_MISSING_DEBUGGER_EXPORTS EMAKEHR(0x1c4f)
 #define CORDBG_E_DATA_TARGET_ERROR EMAKEHR(0x1c61)
 #define CORDBG_E_NO_IMAGE_AVAILABLE EMAKEHR(0x1c64)
+#define CORDBG_E_UNSUPPORTED_DELEGATE EMAKEHR(0x1c68)
 #define PEFMT_E_64BIT EMAKEHR(0x1d02)
 #define PEFMT_E_32BIT EMAKEHR(0x1d0b)
 #define NGEN_E_SYS_ASM_NI_MISSING EMAKEHR(0x1f06)
 #define CLR_E_BIND_NI_SECURITY_FAILURE EMAKEHR(0x2007)
 #define CLR_E_BIND_NI_DEP_IDENTITY_MISMATCH EMAKEHR(0x2008)
 #define CLR_E_GC_OOM EMAKEHR(0x2009)
+#define CLR_E_GC_BAD_AFFINITY_CONFIG EMAKEHR(0x200a)
+#define CLR_E_GC_BAD_AFFINITY_CONFIG_FORMAT EMAKEHR(0x200b)
+#define CLR_E_CROSSGEN_NO_IBC_DATA_FOUND EMAKEHR(0x200c)
 #define COR_E_UNAUTHORIZEDACCESS E_ACCESSDENIED
 #define COR_E_ARGUMENT E_INVALIDARG
 #define COR_E_INVALIDCAST E_NOINTERFACE
index 2e18c1228357e84d90282f38a2f5ae61564283f9..2717067ed30f0eb529cd5b8d3d654bd10dd28bfc 100644 (file)
@@ -6,7 +6,7 @@
  /* File created by MIDL compiler version 8.01.0622 */
 /* at Mon Jan 18 19:14:07 2038
  */
-/* Compiler settings for D:/git/coreclr-profattach/src/inc/corprof.idl:
+/* Compiler settings for C:/git/coreclr/src/inc/corprof.idl:
     Oicf, W1, Zp8, env=Win32 (32b run), target_arch=X86 8.01.0622 
     protocol : dce , ms_ext, c_ext, robust
     error checks: allocation ref bounds_check enum stub_data 
@@ -203,7 +203,14 @@ typedef interface ICorProfilerInfo8 ICorProfilerInfo8;
 #define __ICorProfilerInfo9_FWD_DEFINED__
 typedef interface ICorProfilerInfo9 ICorProfilerInfo9;
 
-#endif         /* __ICorProfilerInfo9_FWD_DEFINED__ */
+#endif  /* __ICorProfilerInfo9_FWD_DEFINED__ */
+
+
+#ifndef __ICorProfilerInfo10_FWD_DEFINED__
+#define __ICorProfilerInfo10_FWD_DEFINED__
+typedef interface ICorProfilerInfo10 ICorProfilerInfo10;
+
+#endif  /* __ICorProfilerInfo10_FWD_DEFINED__ */
 
 
 #ifndef __ICorProfilerMethodEnum_FWD_DEFINED__
@@ -227,20 +234,6 @@ typedef interface ICorProfilerAssemblyReferenceProvider ICorProfilerAssemblyRefe
 #endif  /* __ICorProfilerAssemblyReferenceProvider_FWD_DEFINED__ */
 
 
-#ifndef __ICLRProfiling_FWD_DEFINED__
-#define __ICLRProfiling_FWD_DEFINED__
-typedef interface ICLRProfiling ICLRProfiling;
-
-#endif  /* __ICLRProfiling_FWD_DEFINED__ */
-
-
-#ifndef __ICLRProfiling_FWD_DEFINED__
-#define __ICLRProfiling_FWD_DEFINED__
-typedef interface ICLRProfiling ICLRProfiling;
-
-#endif         /* __ICLRProfiling_FWD_DEFINED__ */
-
-
 /* header files for imported files */
 #include "unknwn.h"
 
@@ -438,50 +431,50 @@ typedef struct _COR_PRF_METHOD
     mdMethodDef methodId;
     }   COR_PRF_METHOD;
 
-typedef void STDMETHODCALLTYPE STDMETHODCALLTYPE FunctionEnter(
+typedef void FunctionEnter( 
     FunctionID funcID);
 
-typedef void STDMETHODCALLTYPE STDMETHODCALLTYPE FunctionLeave(
+typedef void FunctionLeave( 
     FunctionID funcID);
 
-typedef void STDMETHODCALLTYPE STDMETHODCALLTYPE FunctionTailcall(
+typedef void FunctionTailcall( 
     FunctionID funcID);
 
-typedef void STDMETHODCALLTYPE STDMETHODCALLTYPE FunctionEnter2(
+typedef void FunctionEnter2( 
     FunctionID funcId,
     UINT_PTR clientData,
     COR_PRF_FRAME_INFO func,
     COR_PRF_FUNCTION_ARGUMENT_INFO *argumentInfo);
 
-typedef void STDMETHODCALLTYPE STDMETHODCALLTYPE FunctionLeave2(
+typedef void FunctionLeave2( 
     FunctionID funcId,
     UINT_PTR clientData,
     COR_PRF_FRAME_INFO func,
     COR_PRF_FUNCTION_ARGUMENT_RANGE *retvalRange);
 
-typedef void STDMETHODCALLTYPE STDMETHODCALLTYPE FunctionTailcall2(
+typedef void FunctionTailcall2( 
     FunctionID funcId,
     UINT_PTR clientData,
     COR_PRF_FRAME_INFO func);
 
-typedef void STDMETHODCALLTYPE STDMETHODCALLTYPE FunctionEnter3(
+typedef void FunctionEnter3( 
     FunctionIDOrClientID functionIDOrClientID);
 
-typedef void STDMETHODCALLTYPE STDMETHODCALLTYPE FunctionLeave3(
+typedef void FunctionLeave3( 
     FunctionIDOrClientID functionIDOrClientID);
 
-typedef void STDMETHODCALLTYPE STDMETHODCALLTYPE FunctionTailcall3(
+typedef void FunctionTailcall3( 
     FunctionIDOrClientID functionIDOrClientID);
 
-typedef void STDMETHODCALLTYPE STDMETHODCALLTYPE FunctionEnter3WithInfo(
+typedef void FunctionEnter3WithInfo( 
     FunctionIDOrClientID functionIDOrClientID,
     COR_PRF_ELT_INFO eltInfo);
 
-typedef void STDMETHODCALLTYPE STDMETHODCALLTYPE FunctionLeave3WithInfo(
+typedef void FunctionLeave3WithInfo( 
     FunctionIDOrClientID functionIDOrClientID,
     COR_PRF_ELT_INFO eltInfo);
 
-typedef void STDMETHODCALLTYPE STDMETHODCALLTYPE FunctionTailcall3WithInfo(
+typedef void FunctionTailcall3WithInfo( 
     FunctionIDOrClientID functionIDOrClientID,
     COR_PRF_ELT_INFO eltInfo);
 
@@ -493,6 +486,11 @@ typedef HRESULT __stdcall __stdcall StackSnapshotCallback(
     BYTE context[  ],
     void *clientData);
 
+typedef BOOL ObjectReferenceCallback( 
+    ObjectID root,
+    ObjectID *reference,
+    void *clientData);
+
 typedef /* [public] */ 
 enum __MIDL___MIDL_itf_corprof_0000_0000_0005
     {
@@ -539,15 +537,18 @@ enum __MIDL___MIDL_itf_corprof_0000_0000_0005
 typedef /* [public] */ 
 enum __MIDL___MIDL_itf_corprof_0000_0000_0006
     {
-        COR_PRF_HIGH_MONITOR_NONE      = 0,
-        COR_PRF_HIGH_ADD_ASSEMBLY_REFERENCES   = 0x1,
-        COR_PRF_HIGH_IN_MEMORY_SYMBOLS_UPDATED = 0x2,
-        COR_PRF_HIGH_MONITOR_DYNAMIC_FUNCTION_UNLOADS  = 0x4,
-        COR_PRF_HIGH_DISABLE_TIERED_COMPILATION        = 0x8,
-        COR_PRF_HIGH_REQUIRE_PROFILE_IMAGE     = 0,
-        COR_PRF_HIGH_ALLOWABLE_AFTER_ATTACH    = ( COR_PRF_HIGH_IN_MEMORY_SYMBOLS_UPDATED | COR_PRF_HIGH_MONITOR_DYNAMIC_FUNCTION_UNLOADS ) ,
-        COR_PRF_HIGH_MONITOR_IMMUTABLE = COR_PRF_HIGH_DISABLE_TIERED_COMPILATION
-    }  COR_PRF_HIGH_MONITOR;
+        COR_PRF_HIGH_MONITOR_NONE   = 0,
+        COR_PRF_HIGH_ADD_ASSEMBLY_REFERENCES    = 0x1,
+        COR_PRF_HIGH_IN_MEMORY_SYMBOLS_UPDATED  = 0x2,
+        COR_PRF_HIGH_MONITOR_DYNAMIC_FUNCTION_UNLOADS   = 0x4,
+        COR_PRF_HIGH_DISABLE_TIERED_COMPILATION = 0x8,
+        COR_PRF_HIGH_BASIC_GC   = 0x10,
+        COR_PRF_HIGH_MONITOR_GC_MOVED_OBJECTS   = 0x20,
+        COR_PRF_HIGH_REQUIRE_PROFILE_IMAGE  = 0,
+        COR_PRF_HIGH_MONITOR_LARGEOBJECT_ALLOCATED  = 0x40,
+        COR_PRF_HIGH_ALLOWABLE_AFTER_ATTACH = ( ( ( ( COR_PRF_HIGH_IN_MEMORY_SYMBOLS_UPDATED | COR_PRF_HIGH_MONITOR_DYNAMIC_FUNCTION_UNLOADS )  | COR_PRF_HIGH_BASIC_GC )  | COR_PRF_HIGH_MONITOR_GC_MOVED_OBJECTS )  | COR_PRF_HIGH_MONITOR_LARGEOBJECT_ALLOCATED ) ,
+        COR_PRF_HIGH_MONITOR_IMMUTABLE  = COR_PRF_HIGH_DISABLE_TIERED_COMPILATION
+    }   COR_PRF_HIGH_MONITOR;
 
 typedef /* [public] */ 
 enum __MIDL___MIDL_itf_corprof_0000_0000_0007
@@ -591,6 +592,13 @@ enum __MIDL___MIDL_itf_corprof_0000_0000_0011
         COR_PRF_CORE_CLR    = 0x2
     }   COR_PRF_RUNTIME_TYPE;
 
+typedef /* [public] */ 
+enum __MIDL___MIDL_itf_corprof_0000_0000_0012
+    {
+        COR_PRF_REJIT_BLOCK_INLINING    = 0x1,
+        COR_PRF_REJIT_INLINING_CALLBACKS    = 0x2
+    }   COR_PRF_REJIT_FLAGS;
+
 
 
 
@@ -14273,7 +14281,7 @@ EXTERN_C const IID IID_ICorProfilerInfo9;
     };
     
     
-#else  /* C style interface */
+#else   /* C style interface */
 
     typedef struct ICorProfilerInfo9Vtbl
     {
@@ -14868,537 +14876,1274 @@ EXTERN_C const IID IID_ICorProfilerInfo9;
 #ifdef COBJMACROS
 
 
-#define ICorProfilerInfo9_QueryInterface(This,riid,ppvObject)  \
+#define ICorProfilerInfo9_QueryInterface(This,riid,ppvObject)   \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define ICorProfilerInfo9_AddRef(This) \
+#define ICorProfilerInfo9_AddRef(This)  \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define ICorProfilerInfo9_Release(This)        \
+#define ICorProfilerInfo9_Release(This) \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ICorProfilerInfo9_GetClassFromObject(This,objectId,pClassId)   \
+#define ICorProfilerInfo9_GetClassFromObject(This,objectId,pClassId)    \
     ( (This)->lpVtbl -> GetClassFromObject(This,objectId,pClassId) ) 
 
-#define ICorProfilerInfo9_GetClassFromToken(This,moduleId,typeDef,pClassId)    \
+#define ICorProfilerInfo9_GetClassFromToken(This,moduleId,typeDef,pClassId) \
     ( (This)->lpVtbl -> GetClassFromToken(This,moduleId,typeDef,pClassId) ) 
 
-#define ICorProfilerInfo9_GetCodeInfo(This,functionId,pStart,pcSize)   \
+#define ICorProfilerInfo9_GetCodeInfo(This,functionId,pStart,pcSize)    \
     ( (This)->lpVtbl -> GetCodeInfo(This,functionId,pStart,pcSize) ) 
 
-#define ICorProfilerInfo9_GetEventMask(This,pdwEvents) \
+#define ICorProfilerInfo9_GetEventMask(This,pdwEvents)  \
     ( (This)->lpVtbl -> GetEventMask(This,pdwEvents) ) 
 
-#define ICorProfilerInfo9_GetFunctionFromIP(This,ip,pFunctionId)       \
+#define ICorProfilerInfo9_GetFunctionFromIP(This,ip,pFunctionId)    \
     ( (This)->lpVtbl -> GetFunctionFromIP(This,ip,pFunctionId) ) 
 
-#define ICorProfilerInfo9_GetFunctionFromToken(This,moduleId,token,pFunctionId)        \
+#define ICorProfilerInfo9_GetFunctionFromToken(This,moduleId,token,pFunctionId) \
     ( (This)->lpVtbl -> GetFunctionFromToken(This,moduleId,token,pFunctionId) ) 
 
-#define ICorProfilerInfo9_GetHandleFromThread(This,threadId,phThread)  \
+#define ICorProfilerInfo9_GetHandleFromThread(This,threadId,phThread)   \
     ( (This)->lpVtbl -> GetHandleFromThread(This,threadId,phThread) ) 
 
-#define ICorProfilerInfo9_GetObjectSize(This,objectId,pcSize)  \
+#define ICorProfilerInfo9_GetObjectSize(This,objectId,pcSize)   \
     ( (This)->lpVtbl -> GetObjectSize(This,objectId,pcSize) ) 
 
-#define ICorProfilerInfo9_IsArrayClass(This,classId,pBaseElemType,pBaseClassId,pcRank) \
+#define ICorProfilerInfo9_IsArrayClass(This,classId,pBaseElemType,pBaseClassId,pcRank)  \
     ( (This)->lpVtbl -> IsArrayClass(This,classId,pBaseElemType,pBaseClassId,pcRank) ) 
 
-#define ICorProfilerInfo9_GetThreadInfo(This,threadId,pdwWin32ThreadId)        \
+#define ICorProfilerInfo9_GetThreadInfo(This,threadId,pdwWin32ThreadId) \
     ( (This)->lpVtbl -> GetThreadInfo(This,threadId,pdwWin32ThreadId) ) 
 
-#define ICorProfilerInfo9_GetCurrentThreadID(This,pThreadId)   \
+#define ICorProfilerInfo9_GetCurrentThreadID(This,pThreadId)    \
     ( (This)->lpVtbl -> GetCurrentThreadID(This,pThreadId) ) 
 
-#define ICorProfilerInfo9_GetClassIDInfo(This,classId,pModuleId,pTypeDefToken) \
+#define ICorProfilerInfo9_GetClassIDInfo(This,classId,pModuleId,pTypeDefToken)  \
     ( (This)->lpVtbl -> GetClassIDInfo(This,classId,pModuleId,pTypeDefToken) ) 
 
-#define ICorProfilerInfo9_GetFunctionInfo(This,functionId,pClassId,pModuleId,pToken)   \
+#define ICorProfilerInfo9_GetFunctionInfo(This,functionId,pClassId,pModuleId,pToken)    \
     ( (This)->lpVtbl -> GetFunctionInfo(This,functionId,pClassId,pModuleId,pToken) ) 
 
-#define ICorProfilerInfo9_SetEventMask(This,dwEvents)  \
+#define ICorProfilerInfo9_SetEventMask(This,dwEvents)   \
     ( (This)->lpVtbl -> SetEventMask(This,dwEvents) ) 
 
-#define ICorProfilerInfo9_SetEnterLeaveFunctionHooks(This,pFuncEnter,pFuncLeave,pFuncTailcall) \
+#define ICorProfilerInfo9_SetEnterLeaveFunctionHooks(This,pFuncEnter,pFuncLeave,pFuncTailcall)  \
     ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks(This,pFuncEnter,pFuncLeave,pFuncTailcall) ) 
 
-#define ICorProfilerInfo9_SetFunctionIDMapper(This,pFunc)      \
+#define ICorProfilerInfo9_SetFunctionIDMapper(This,pFunc)   \
     ( (This)->lpVtbl -> SetFunctionIDMapper(This,pFunc) ) 
 
-#define ICorProfilerInfo9_GetTokenAndMetaDataFromFunction(This,functionId,riid,ppImport,pToken)        \
+#define ICorProfilerInfo9_GetTokenAndMetaDataFromFunction(This,functionId,riid,ppImport,pToken) \
     ( (This)->lpVtbl -> GetTokenAndMetaDataFromFunction(This,functionId,riid,ppImport,pToken) ) 
 
-#define ICorProfilerInfo9_GetModuleInfo(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId)   \
+#define ICorProfilerInfo9_GetModuleInfo(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId)    \
     ( (This)->lpVtbl -> GetModuleInfo(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId) ) 
 
-#define ICorProfilerInfo9_GetModuleMetaData(This,moduleId,dwOpenFlags,riid,ppOut)      \
+#define ICorProfilerInfo9_GetModuleMetaData(This,moduleId,dwOpenFlags,riid,ppOut)   \
     ( (This)->lpVtbl -> GetModuleMetaData(This,moduleId,dwOpenFlags,riid,ppOut) ) 
 
-#define ICorProfilerInfo9_GetILFunctionBody(This,moduleId,methodId,ppMethodHeader,pcbMethodSize)       \
+#define ICorProfilerInfo9_GetILFunctionBody(This,moduleId,methodId,ppMethodHeader,pcbMethodSize)    \
     ( (This)->lpVtbl -> GetILFunctionBody(This,moduleId,methodId,ppMethodHeader,pcbMethodSize) ) 
 
-#define ICorProfilerInfo9_GetILFunctionBodyAllocator(This,moduleId,ppMalloc)   \
+#define ICorProfilerInfo9_GetILFunctionBodyAllocator(This,moduleId,ppMalloc)    \
     ( (This)->lpVtbl -> GetILFunctionBodyAllocator(This,moduleId,ppMalloc) ) 
 
-#define ICorProfilerInfo9_SetILFunctionBody(This,moduleId,methodid,pbNewILMethodHeader)        \
+#define ICorProfilerInfo9_SetILFunctionBody(This,moduleId,methodid,pbNewILMethodHeader) \
     ( (This)->lpVtbl -> SetILFunctionBody(This,moduleId,methodid,pbNewILMethodHeader) ) 
 
-#define ICorProfilerInfo9_GetAppDomainInfo(This,appDomainId,cchName,pcchName,szName,pProcessId)        \
+#define ICorProfilerInfo9_GetAppDomainInfo(This,appDomainId,cchName,pcchName,szName,pProcessId) \
     ( (This)->lpVtbl -> GetAppDomainInfo(This,appDomainId,cchName,pcchName,szName,pProcessId) ) 
 
-#define ICorProfilerInfo9_GetAssemblyInfo(This,assemblyId,cchName,pcchName,szName,pAppDomainId,pModuleId)      \
+#define ICorProfilerInfo9_GetAssemblyInfo(This,assemblyId,cchName,pcchName,szName,pAppDomainId,pModuleId)   \
     ( (This)->lpVtbl -> GetAssemblyInfo(This,assemblyId,cchName,pcchName,szName,pAppDomainId,pModuleId) ) 
 
-#define ICorProfilerInfo9_SetFunctionReJIT(This,functionId)    \
+#define ICorProfilerInfo9_SetFunctionReJIT(This,functionId) \
     ( (This)->lpVtbl -> SetFunctionReJIT(This,functionId) ) 
 
-#define ICorProfilerInfo9_ForceGC(This)        \
+#define ICorProfilerInfo9_ForceGC(This) \
     ( (This)->lpVtbl -> ForceGC(This) ) 
 
-#define ICorProfilerInfo9_SetILInstrumentedCodeMap(This,functionId,fStartJit,cILMapEntries,rgILMapEntries)     \
+#define ICorProfilerInfo9_SetILInstrumentedCodeMap(This,functionId,fStartJit,cILMapEntries,rgILMapEntries)  \
     ( (This)->lpVtbl -> SetILInstrumentedCodeMap(This,functionId,fStartJit,cILMapEntries,rgILMapEntries) ) 
 
-#define ICorProfilerInfo9_GetInprocInspectionInterface(This,ppicd)     \
+#define ICorProfilerInfo9_GetInprocInspectionInterface(This,ppicd)  \
     ( (This)->lpVtbl -> GetInprocInspectionInterface(This,ppicd) ) 
 
-#define ICorProfilerInfo9_GetInprocInspectionIThisThread(This,ppicd)   \
+#define ICorProfilerInfo9_GetInprocInspectionIThisThread(This,ppicd)    \
     ( (This)->lpVtbl -> GetInprocInspectionIThisThread(This,ppicd) ) 
 
-#define ICorProfilerInfo9_GetThreadContext(This,threadId,pContextId)   \
+#define ICorProfilerInfo9_GetThreadContext(This,threadId,pContextId)    \
     ( (This)->lpVtbl -> GetThreadContext(This,threadId,pContextId) ) 
 
-#define ICorProfilerInfo9_BeginInprocDebugging(This,fThisThreadOnly,pdwProfilerContext)        \
+#define ICorProfilerInfo9_BeginInprocDebugging(This,fThisThreadOnly,pdwProfilerContext) \
     ( (This)->lpVtbl -> BeginInprocDebugging(This,fThisThreadOnly,pdwProfilerContext) ) 
 
-#define ICorProfilerInfo9_EndInprocDebugging(This,dwProfilerContext)   \
+#define ICorProfilerInfo9_EndInprocDebugging(This,dwProfilerContext)    \
     ( (This)->lpVtbl -> EndInprocDebugging(This,dwProfilerContext) ) 
 
-#define ICorProfilerInfo9_GetILToNativeMapping(This,functionId,cMap,pcMap,map) \
+#define ICorProfilerInfo9_GetILToNativeMapping(This,functionId,cMap,pcMap,map)  \
     ( (This)->lpVtbl -> GetILToNativeMapping(This,functionId,cMap,pcMap,map) ) 
 
 
-#define ICorProfilerInfo9_DoStackSnapshot(This,thread,callback,infoFlags,clientData,context,contextSize)       \
+#define ICorProfilerInfo9_DoStackSnapshot(This,thread,callback,infoFlags,clientData,context,contextSize)    \
     ( (This)->lpVtbl -> DoStackSnapshot(This,thread,callback,infoFlags,clientData,context,contextSize) ) 
 
-#define ICorProfilerInfo9_SetEnterLeaveFunctionHooks2(This,pFuncEnter,pFuncLeave,pFuncTailcall)        \
+#define ICorProfilerInfo9_SetEnterLeaveFunctionHooks2(This,pFuncEnter,pFuncLeave,pFuncTailcall) \
     ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks2(This,pFuncEnter,pFuncLeave,pFuncTailcall) ) 
 
-#define ICorProfilerInfo9_GetFunctionInfo2(This,funcId,frameInfo,pClassId,pModuleId,pToken,cTypeArgs,pcTypeArgs,typeArgs)      \
+#define ICorProfilerInfo9_GetFunctionInfo2(This,funcId,frameInfo,pClassId,pModuleId,pToken,cTypeArgs,pcTypeArgs,typeArgs)   \
     ( (This)->lpVtbl -> GetFunctionInfo2(This,funcId,frameInfo,pClassId,pModuleId,pToken,cTypeArgs,pcTypeArgs,typeArgs) ) 
 
-#define ICorProfilerInfo9_GetStringLayout(This,pBufferLengthOffset,pStringLengthOffset,pBufferOffset)  \
+#define ICorProfilerInfo9_GetStringLayout(This,pBufferLengthOffset,pStringLengthOffset,pBufferOffset)   \
     ( (This)->lpVtbl -> GetStringLayout(This,pBufferLengthOffset,pStringLengthOffset,pBufferOffset) ) 
 
-#define ICorProfilerInfo9_GetClassLayout(This,classID,rFieldOffset,cFieldOffset,pcFieldOffset,pulClassSize)    \
+#define ICorProfilerInfo9_GetClassLayout(This,classID,rFieldOffset,cFieldOffset,pcFieldOffset,pulClassSize) \
     ( (This)->lpVtbl -> GetClassLayout(This,classID,rFieldOffset,cFieldOffset,pcFieldOffset,pulClassSize) ) 
 
-#define ICorProfilerInfo9_GetClassIDInfo2(This,classId,pModuleId,pTypeDefToken,pParentClassId,cNumTypeArgs,pcNumTypeArgs,typeArgs)     \
+#define ICorProfilerInfo9_GetClassIDInfo2(This,classId,pModuleId,pTypeDefToken,pParentClassId,cNumTypeArgs,pcNumTypeArgs,typeArgs)  \
     ( (This)->lpVtbl -> GetClassIDInfo2(This,classId,pModuleId,pTypeDefToken,pParentClassId,cNumTypeArgs,pcNumTypeArgs,typeArgs) ) 
 
-#define ICorProfilerInfo9_GetCodeInfo2(This,functionID,cCodeInfos,pcCodeInfos,codeInfos)       \
+#define ICorProfilerInfo9_GetCodeInfo2(This,functionID,cCodeInfos,pcCodeInfos,codeInfos)    \
     ( (This)->lpVtbl -> GetCodeInfo2(This,functionID,cCodeInfos,pcCodeInfos,codeInfos) ) 
 
-#define ICorProfilerInfo9_GetClassFromTokenAndTypeArgs(This,moduleID,typeDef,cTypeArgs,typeArgs,pClassID)      \
+#define ICorProfilerInfo9_GetClassFromTokenAndTypeArgs(This,moduleID,typeDef,cTypeArgs,typeArgs,pClassID)   \
     ( (This)->lpVtbl -> GetClassFromTokenAndTypeArgs(This,moduleID,typeDef,cTypeArgs,typeArgs,pClassID) ) 
 
-#define ICorProfilerInfo9_GetFunctionFromTokenAndTypeArgs(This,moduleID,funcDef,classId,cTypeArgs,typeArgs,pFunctionID)        \
+#define ICorProfilerInfo9_GetFunctionFromTokenAndTypeArgs(This,moduleID,funcDef,classId,cTypeArgs,typeArgs,pFunctionID) \
     ( (This)->lpVtbl -> GetFunctionFromTokenAndTypeArgs(This,moduleID,funcDef,classId,cTypeArgs,typeArgs,pFunctionID) ) 
 
-#define ICorProfilerInfo9_EnumModuleFrozenObjects(This,moduleID,ppEnum)        \
+#define ICorProfilerInfo9_EnumModuleFrozenObjects(This,moduleID,ppEnum) \
     ( (This)->lpVtbl -> EnumModuleFrozenObjects(This,moduleID,ppEnum) ) 
 
-#define ICorProfilerInfo9_GetArrayObjectInfo(This,objectId,cDimensions,pDimensionSizes,pDimensionLowerBounds,ppData)   \
+#define ICorProfilerInfo9_GetArrayObjectInfo(This,objectId,cDimensions,pDimensionSizes,pDimensionLowerBounds,ppData)    \
     ( (This)->lpVtbl -> GetArrayObjectInfo(This,objectId,cDimensions,pDimensionSizes,pDimensionLowerBounds,ppData) ) 
 
-#define ICorProfilerInfo9_GetBoxClassLayout(This,classId,pBufferOffset)        \
+#define ICorProfilerInfo9_GetBoxClassLayout(This,classId,pBufferOffset) \
     ( (This)->lpVtbl -> GetBoxClassLayout(This,classId,pBufferOffset) ) 
 
-#define ICorProfilerInfo9_GetThreadAppDomain(This,threadId,pAppDomainId)       \
+#define ICorProfilerInfo9_GetThreadAppDomain(This,threadId,pAppDomainId)    \
     ( (This)->lpVtbl -> GetThreadAppDomain(This,threadId,pAppDomainId) ) 
 
-#define ICorProfilerInfo9_GetRVAStaticAddress(This,classId,fieldToken,ppAddress)       \
+#define ICorProfilerInfo9_GetRVAStaticAddress(This,classId,fieldToken,ppAddress)    \
     ( (This)->lpVtbl -> GetRVAStaticAddress(This,classId,fieldToken,ppAddress) ) 
 
-#define ICorProfilerInfo9_GetAppDomainStaticAddress(This,classId,fieldToken,appDomainId,ppAddress)     \
+#define ICorProfilerInfo9_GetAppDomainStaticAddress(This,classId,fieldToken,appDomainId,ppAddress)  \
     ( (This)->lpVtbl -> GetAppDomainStaticAddress(This,classId,fieldToken,appDomainId,ppAddress) ) 
 
-#define ICorProfilerInfo9_GetThreadStaticAddress(This,classId,fieldToken,threadId,ppAddress)   \
+#define ICorProfilerInfo9_GetThreadStaticAddress(This,classId,fieldToken,threadId,ppAddress)    \
     ( (This)->lpVtbl -> GetThreadStaticAddress(This,classId,fieldToken,threadId,ppAddress) ) 
 
-#define ICorProfilerInfo9_GetContextStaticAddress(This,classId,fieldToken,contextId,ppAddress) \
+#define ICorProfilerInfo9_GetContextStaticAddress(This,classId,fieldToken,contextId,ppAddress)  \
     ( (This)->lpVtbl -> GetContextStaticAddress(This,classId,fieldToken,contextId,ppAddress) ) 
 
-#define ICorProfilerInfo9_GetStaticFieldInfo(This,classId,fieldToken,pFieldInfo)       \
+#define ICorProfilerInfo9_GetStaticFieldInfo(This,classId,fieldToken,pFieldInfo)    \
     ( (This)->lpVtbl -> GetStaticFieldInfo(This,classId,fieldToken,pFieldInfo) ) 
 
-#define ICorProfilerInfo9_GetGenerationBounds(This,cObjectRanges,pcObjectRanges,ranges)        \
+#define ICorProfilerInfo9_GetGenerationBounds(This,cObjectRanges,pcObjectRanges,ranges) \
     ( (This)->lpVtbl -> GetGenerationBounds(This,cObjectRanges,pcObjectRanges,ranges) ) 
 
-#define ICorProfilerInfo9_GetObjectGeneration(This,objectId,range)     \
+#define ICorProfilerInfo9_GetObjectGeneration(This,objectId,range)  \
     ( (This)->lpVtbl -> GetObjectGeneration(This,objectId,range) ) 
 
-#define ICorProfilerInfo9_GetNotifiedExceptionClauseInfo(This,pinfo)   \
+#define ICorProfilerInfo9_GetNotifiedExceptionClauseInfo(This,pinfo)    \
     ( (This)->lpVtbl -> GetNotifiedExceptionClauseInfo(This,pinfo) ) 
 
 
-#define ICorProfilerInfo9_EnumJITedFunctions(This,ppEnum)      \
+#define ICorProfilerInfo9_EnumJITedFunctions(This,ppEnum)   \
     ( (This)->lpVtbl -> EnumJITedFunctions(This,ppEnum) ) 
 
-#define ICorProfilerInfo9_RequestProfilerDetach(This,dwExpectedCompletionMilliseconds) \
+#define ICorProfilerInfo9_RequestProfilerDetach(This,dwExpectedCompletionMilliseconds)  \
     ( (This)->lpVtbl -> RequestProfilerDetach(This,dwExpectedCompletionMilliseconds) ) 
 
-#define ICorProfilerInfo9_SetFunctionIDMapper2(This,pFunc,clientData)  \
+#define ICorProfilerInfo9_SetFunctionIDMapper2(This,pFunc,clientData)   \
     ( (This)->lpVtbl -> SetFunctionIDMapper2(This,pFunc,clientData) ) 
 
-#define ICorProfilerInfo9_GetStringLayout2(This,pStringLengthOffset,pBufferOffset)     \
+#define ICorProfilerInfo9_GetStringLayout2(This,pStringLengthOffset,pBufferOffset)  \
     ( (This)->lpVtbl -> GetStringLayout2(This,pStringLengthOffset,pBufferOffset) ) 
 
-#define ICorProfilerInfo9_SetEnterLeaveFunctionHooks3(This,pFuncEnter3,pFuncLeave3,pFuncTailcall3)     \
+#define ICorProfilerInfo9_SetEnterLeaveFunctionHooks3(This,pFuncEnter3,pFuncLeave3,pFuncTailcall3)  \
     ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks3(This,pFuncEnter3,pFuncLeave3,pFuncTailcall3) ) 
 
-#define ICorProfilerInfo9_SetEnterLeaveFunctionHooks3WithInfo(This,pFuncEnter3WithInfo,pFuncLeave3WithInfo,pFuncTailcall3WithInfo)     \
+#define ICorProfilerInfo9_SetEnterLeaveFunctionHooks3WithInfo(This,pFuncEnter3WithInfo,pFuncLeave3WithInfo,pFuncTailcall3WithInfo)  \
     ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks3WithInfo(This,pFuncEnter3WithInfo,pFuncLeave3WithInfo,pFuncTailcall3WithInfo) ) 
 
-#define ICorProfilerInfo9_GetFunctionEnter3Info(This,functionId,eltInfo,pFrameInfo,pcbArgumentInfo,pArgumentInfo)      \
+#define ICorProfilerInfo9_GetFunctionEnter3Info(This,functionId,eltInfo,pFrameInfo,pcbArgumentInfo,pArgumentInfo)   \
     ( (This)->lpVtbl -> GetFunctionEnter3Info(This,functionId,eltInfo,pFrameInfo,pcbArgumentInfo,pArgumentInfo) ) 
 
-#define ICorProfilerInfo9_GetFunctionLeave3Info(This,functionId,eltInfo,pFrameInfo,pRetvalRange)       \
+#define ICorProfilerInfo9_GetFunctionLeave3Info(This,functionId,eltInfo,pFrameInfo,pRetvalRange)    \
     ( (This)->lpVtbl -> GetFunctionLeave3Info(This,functionId,eltInfo,pFrameInfo,pRetvalRange) ) 
 
-#define ICorProfilerInfo9_GetFunctionTailcall3Info(This,functionId,eltInfo,pFrameInfo) \
+#define ICorProfilerInfo9_GetFunctionTailcall3Info(This,functionId,eltInfo,pFrameInfo)  \
     ( (This)->lpVtbl -> GetFunctionTailcall3Info(This,functionId,eltInfo,pFrameInfo) ) 
 
-#define ICorProfilerInfo9_EnumModules(This,ppEnum)     \
+#define ICorProfilerInfo9_EnumModules(This,ppEnum)  \
     ( (This)->lpVtbl -> EnumModules(This,ppEnum) ) 
 
-#define ICorProfilerInfo9_GetRuntimeInformation(This,pClrInstanceId,pRuntimeType,pMajorVersion,pMinorVersion,pBuildNumber,pQFEVersion,cchVersionString,pcchVersionString,szVersionString)      \
+#define ICorProfilerInfo9_GetRuntimeInformation(This,pClrInstanceId,pRuntimeType,pMajorVersion,pMinorVersion,pBuildNumber,pQFEVersion,cchVersionString,pcchVersionString,szVersionString)   \
     ( (This)->lpVtbl -> GetRuntimeInformation(This,pClrInstanceId,pRuntimeType,pMajorVersion,pMinorVersion,pBuildNumber,pQFEVersion,cchVersionString,pcchVersionString,szVersionString) ) 
 
-#define ICorProfilerInfo9_GetThreadStaticAddress2(This,classId,fieldToken,appDomainId,threadId,ppAddress)      \
+#define ICorProfilerInfo9_GetThreadStaticAddress2(This,classId,fieldToken,appDomainId,threadId,ppAddress)   \
     ( (This)->lpVtbl -> GetThreadStaticAddress2(This,classId,fieldToken,appDomainId,threadId,ppAddress) ) 
 
-#define ICorProfilerInfo9_GetAppDomainsContainingModule(This,moduleId,cAppDomainIds,pcAppDomainIds,appDomainIds)       \
+#define ICorProfilerInfo9_GetAppDomainsContainingModule(This,moduleId,cAppDomainIds,pcAppDomainIds,appDomainIds)    \
     ( (This)->lpVtbl -> GetAppDomainsContainingModule(This,moduleId,cAppDomainIds,pcAppDomainIds,appDomainIds) ) 
 
-#define ICorProfilerInfo9_GetModuleInfo2(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId,pdwModuleFlags)   \
+#define ICorProfilerInfo9_GetModuleInfo2(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId,pdwModuleFlags)    \
     ( (This)->lpVtbl -> GetModuleInfo2(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId,pdwModuleFlags) ) 
 
 
-#define ICorProfilerInfo9_EnumThreads(This,ppEnum)     \
+#define ICorProfilerInfo9_EnumThreads(This,ppEnum)  \
     ( (This)->lpVtbl -> EnumThreads(This,ppEnum) ) 
 
-#define ICorProfilerInfo9_InitializeCurrentThread(This)        \
+#define ICorProfilerInfo9_InitializeCurrentThread(This) \
     ( (This)->lpVtbl -> InitializeCurrentThread(This) ) 
 
-#define ICorProfilerInfo9_RequestReJIT(This,cFunctions,moduleIds,methodIds)    \
+#define ICorProfilerInfo9_RequestReJIT(This,cFunctions,moduleIds,methodIds) \
     ( (This)->lpVtbl -> RequestReJIT(This,cFunctions,moduleIds,methodIds) ) 
 
-#define ICorProfilerInfo9_RequestRevert(This,cFunctions,moduleIds,methodIds,status)    \
+#define ICorProfilerInfo9_RequestRevert(This,cFunctions,moduleIds,methodIds,status) \
     ( (This)->lpVtbl -> RequestRevert(This,cFunctions,moduleIds,methodIds,status) ) 
 
-#define ICorProfilerInfo9_GetCodeInfo3(This,functionID,reJitId,cCodeInfos,pcCodeInfos,codeInfos)       \
+#define ICorProfilerInfo9_GetCodeInfo3(This,functionID,reJitId,cCodeInfos,pcCodeInfos,codeInfos)    \
     ( (This)->lpVtbl -> GetCodeInfo3(This,functionID,reJitId,cCodeInfos,pcCodeInfos,codeInfos) ) 
 
-#define ICorProfilerInfo9_GetFunctionFromIP2(This,ip,pFunctionId,pReJitId)     \
+#define ICorProfilerInfo9_GetFunctionFromIP2(This,ip,pFunctionId,pReJitId)  \
     ( (This)->lpVtbl -> GetFunctionFromIP2(This,ip,pFunctionId,pReJitId) ) 
 
-#define ICorProfilerInfo9_GetReJITIDs(This,functionId,cReJitIds,pcReJitIds,reJitIds)   \
+#define ICorProfilerInfo9_GetReJITIDs(This,functionId,cReJitIds,pcReJitIds,reJitIds)    \
     ( (This)->lpVtbl -> GetReJITIDs(This,functionId,cReJitIds,pcReJitIds,reJitIds) ) 
 
-#define ICorProfilerInfo9_GetILToNativeMapping2(This,functionId,reJitId,cMap,pcMap,map)        \
+#define ICorProfilerInfo9_GetILToNativeMapping2(This,functionId,reJitId,cMap,pcMap,map) \
     ( (This)->lpVtbl -> GetILToNativeMapping2(This,functionId,reJitId,cMap,pcMap,map) ) 
 
-#define ICorProfilerInfo9_EnumJITedFunctions2(This,ppEnum)     \
+#define ICorProfilerInfo9_EnumJITedFunctions2(This,ppEnum)  \
     ( (This)->lpVtbl -> EnumJITedFunctions2(This,ppEnum) ) 
 
-#define ICorProfilerInfo9_GetObjectSize2(This,objectId,pcSize) \
+#define ICorProfilerInfo9_GetObjectSize2(This,objectId,pcSize)  \
     ( (This)->lpVtbl -> GetObjectSize2(This,objectId,pcSize) ) 
 
 
-#define ICorProfilerInfo9_GetEventMask2(This,pdwEventsLow,pdwEventsHigh)       \
+#define ICorProfilerInfo9_GetEventMask2(This,pdwEventsLow,pdwEventsHigh)    \
     ( (This)->lpVtbl -> GetEventMask2(This,pdwEventsLow,pdwEventsHigh) ) 
 
-#define ICorProfilerInfo9_SetEventMask2(This,dwEventsLow,dwEventsHigh) \
+#define ICorProfilerInfo9_SetEventMask2(This,dwEventsLow,dwEventsHigh)  \
     ( (This)->lpVtbl -> SetEventMask2(This,dwEventsLow,dwEventsHigh) ) 
 
 
-#define ICorProfilerInfo9_EnumNgenModuleMethodsInliningThisMethod(This,inlinersModuleId,inlineeModuleId,inlineeMethodId,incompleteData,ppEnum) \
+#define ICorProfilerInfo9_EnumNgenModuleMethodsInliningThisMethod(This,inlinersModuleId,inlineeModuleId,inlineeMethodId,incompleteData,ppEnum)  \
     ( (This)->lpVtbl -> EnumNgenModuleMethodsInliningThisMethod(This,inlinersModuleId,inlineeModuleId,inlineeMethodId,incompleteData,ppEnum) ) 
 
 
-#define ICorProfilerInfo9_ApplyMetaData(This,moduleId) \
+#define ICorProfilerInfo9_ApplyMetaData(This,moduleId)  \
     ( (This)->lpVtbl -> ApplyMetaData(This,moduleId) ) 
 
-#define ICorProfilerInfo9_GetInMemorySymbolsLength(This,moduleId,pCountSymbolBytes)    \
+#define ICorProfilerInfo9_GetInMemorySymbolsLength(This,moduleId,pCountSymbolBytes) \
     ( (This)->lpVtbl -> GetInMemorySymbolsLength(This,moduleId,pCountSymbolBytes) ) 
 
-#define ICorProfilerInfo9_ReadInMemorySymbols(This,moduleId,symbolsReadOffset,pSymbolBytes,countSymbolBytes,pCountSymbolBytesRead)     \
+#define ICorProfilerInfo9_ReadInMemorySymbols(This,moduleId,symbolsReadOffset,pSymbolBytes,countSymbolBytes,pCountSymbolBytesRead)  \
     ( (This)->lpVtbl -> ReadInMemorySymbols(This,moduleId,symbolsReadOffset,pSymbolBytes,countSymbolBytes,pCountSymbolBytesRead) ) 
 
 
-#define ICorProfilerInfo9_IsFunctionDynamic(This,functionId,isDynamic) \
+#define ICorProfilerInfo9_IsFunctionDynamic(This,functionId,isDynamic)  \
     ( (This)->lpVtbl -> IsFunctionDynamic(This,functionId,isDynamic) ) 
 
-#define ICorProfilerInfo9_GetFunctionFromIP3(This,ip,functionId,pReJitId)      \
+#define ICorProfilerInfo9_GetFunctionFromIP3(This,ip,functionId,pReJitId)   \
     ( (This)->lpVtbl -> GetFunctionFromIP3(This,ip,functionId,pReJitId) ) 
 
-#define ICorProfilerInfo9_GetDynamicFunctionInfo(This,functionId,moduleId,ppvSig,pbSig,cchName,pcchName,wszName)       \
+#define ICorProfilerInfo9_GetDynamicFunctionInfo(This,functionId,moduleId,ppvSig,pbSig,cchName,pcchName,wszName)    \
     ( (This)->lpVtbl -> GetDynamicFunctionInfo(This,functionId,moduleId,ppvSig,pbSig,cchName,pcchName,wszName) ) 
 
 
-#define ICorProfilerInfo9_GetNativeCodeStartAddresses(This,functionID,reJitId,cCodeStartAddresses,pcCodeStartAddresses,codeStartAddresses)     \
+#define ICorProfilerInfo9_GetNativeCodeStartAddresses(This,functionID,reJitId,cCodeStartAddresses,pcCodeStartAddresses,codeStartAddresses)  \
     ( (This)->lpVtbl -> GetNativeCodeStartAddresses(This,functionID,reJitId,cCodeStartAddresses,pcCodeStartAddresses,codeStartAddresses) ) 
 
-#define ICorProfilerInfo9_GetILToNativeMapping3(This,pNativeCodeStartAddress,cMap,pcMap,map)   \
+#define ICorProfilerInfo9_GetILToNativeMapping3(This,pNativeCodeStartAddress,cMap,pcMap,map)    \
     ( (This)->lpVtbl -> GetILToNativeMapping3(This,pNativeCodeStartAddress,cMap,pcMap,map) ) 
 
-#define ICorProfilerInfo9_GetCodeInfo4(This,pNativeCodeStartAddress,cCodeInfos,pcCodeInfos,codeInfos)  \
+#define ICorProfilerInfo9_GetCodeInfo4(This,pNativeCodeStartAddress,cCodeInfos,pcCodeInfos,codeInfos)   \
     ( (This)->lpVtbl -> GetCodeInfo4(This,pNativeCodeStartAddress,cCodeInfos,pcCodeInfos,codeInfos) ) 
 
 #endif /* COBJMACROS */
 
 
-#endif         /* C style interface */
+#endif  /* C style interface */
 
 
 
 
-#endif         /* __ICorProfilerInfo9_INTERFACE_DEFINED__ */
+#endif  /* __ICorProfilerInfo9_INTERFACE_DEFINED__ */
 
 
-#ifndef __ICorProfilerMethodEnum_INTERFACE_DEFINED__
-#define __ICorProfilerMethodEnum_INTERFACE_DEFINED__
+#ifndef __ICorProfilerInfo10_INTERFACE_DEFINED__
+#define __ICorProfilerInfo10_INTERFACE_DEFINED__
 
-/* interface ICorProfilerMethodEnum */
+/* interface ICorProfilerInfo10 */
 /* [local][unique][uuid][object] */ 
 
 
-EXTERN_C const IID IID_ICorProfilerMethodEnum;
+EXTERN_C const IID IID_ICorProfilerInfo10;
 
 #if defined(__cplusplus) && !defined(CINTERFACE)
     
-    MIDL_INTERFACE("FCCEE788-0088-454B-A811-C99F298D1942")
-    ICorProfilerMethodEnum : public IUnknown
+    MIDL_INTERFACE("2F1B5152-C869-40C9-AA5F-3ABE026BD720")
+    ICorProfilerInfo10 : public ICorProfilerInfo9
     {
     public:
-        virtual HRESULT STDMETHODCALLTYPE Skip( 
-            /* [in] */ ULONG celt) = 0;
+        virtual HRESULT STDMETHODCALLTYPE EnumerateObjectReferences( 
+            ObjectID objectId,
+            ObjectReferenceCallback callback,
+            void *clientData) = 0;
         
-        virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
+        virtual HRESULT STDMETHODCALLTYPE IsFrozenObject( 
+            ObjectID objectId,
+            BOOL *pbFrozen) = 0;
         
-        virtual HRESULT STDMETHODCALLTYPE Clone
-            /* [out] */ ICorProfilerMethodEnum **ppEnum) = 0;
+        virtual HRESULT STDMETHODCALLTYPE GetLOHObjectSizeThreshold
+            DWORD *pThreshold) = 0;
         
-        virtual HRESULT STDMETHODCALLTYPE GetCount( 
-            /* [out] */ ULONG *pcelt) = 0;
+        virtual HRESULT STDMETHODCALLTYPE RequestReJITWithInliners( 
+            /* [in] */ DWORD dwRejitFlags,
+            /* [in] */ ULONG cFunctions,
+            /* [size_is][in] */ ModuleID moduleIds[  ],
+            /* [size_is][in] */ mdMethodDef methodIds[  ]) = 0;
         
-        virtual HRESULT STDMETHODCALLTYPE Next( 
-            /* [in] */ ULONG celt,
-            /* [length_is][size_is][out] */ COR_PRF_METHOD elements[  ],
-            /* [out] */ ULONG *pceltFetched) = 0;
+        virtual HRESULT STDMETHODCALLTYPE SuspendRuntime( void) = 0;
+        
+        virtual HRESULT STDMETHODCALLTYPE ResumeRuntime( void) = 0;
         
     };
     
     
 #else   /* C style interface */
 
-    typedef struct ICorProfilerMethodEnumVtbl
+    typedef struct ICorProfilerInfo10Vtbl
     {
         BEGIN_INTERFACE
         
         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            ICorProfilerMethodEnum * This,
+            ICorProfilerInfo10 * This,
             /* [in] */ REFIID riid,
             /* [annotation][iid_is][out] */ 
             _COM_Outptr_  void **ppvObject);
         
         ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            ICorProfilerMethodEnum * This);
+            ICorProfilerInfo10 * This);
         
         ULONG ( STDMETHODCALLTYPE *Release )( 
-            ICorProfilerMethodEnum * This);
+            ICorProfilerInfo10 * This);
         
-        HRESULT ( STDMETHODCALLTYPE *Skip )( 
-            ICorProfilerMethodEnum * This,
-            /* [in] */ ULONG celt);
+        HRESULT ( STDMETHODCALLTYPE *GetClassFromObject )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ObjectID objectId,
+            /* [out] */ ClassID *pClassId);
         
-        HRESULT ( STDMETHODCALLTYPE *Reset )( 
-            ICorProfilerMethodEnum * This);
+        HRESULT ( STDMETHODCALLTYPE *GetClassFromToken )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID moduleId,
+            /* [in] */ mdTypeDef typeDef,
+            /* [out] */ ClassID *pClassId);
         
-        HRESULT ( STDMETHODCALLTYPE *Clone )( 
-            ICorProfilerMethodEnum * This,
-            /* [out] */ ICorProfilerMethodEnum **ppEnum);
+        HRESULT ( STDMETHODCALLTYPE *GetCodeInfo )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID functionId,
+            /* [out] */ LPCBYTE *pStart,
+            /* [out] */ ULONG *pcSize);
         
-        HRESULT ( STDMETHODCALLTYPE *GetCount )( 
-            ICorProfilerMethodEnum * This,
-            /* [out] */ ULONG *pcelt);
+        HRESULT ( STDMETHODCALLTYPE *GetEventMask )( 
+            ICorProfilerInfo10 * This,
+            /* [out] */ DWORD *pdwEvents);
         
-        HRESULT ( STDMETHODCALLTYPE *Next )( 
-            ICorProfilerMethodEnum * This,
-            /* [in] */ ULONG celt,
-            /* [length_is][size_is][out] */ COR_PRF_METHOD elements[  ],
-            /* [out] */ ULONG *pceltFetched);
+        HRESULT ( STDMETHODCALLTYPE *GetFunctionFromIP )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ LPCBYTE ip,
+            /* [out] */ FunctionID *pFunctionId);
         
-        END_INTERFACE
-    } ICorProfilerMethodEnumVtbl;
-
-    interface ICorProfilerMethodEnum
-    {
-        CONST_VTBL struct ICorProfilerMethodEnumVtbl *lpVtbl;
-    };
-
-    
-
-#ifdef COBJMACROS
-
-
-#define ICorProfilerMethodEnum_QueryInterface(This,riid,ppvObject)  \
-    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
-
-#define ICorProfilerMethodEnum_AddRef(This) \
-    ( (This)->lpVtbl -> AddRef(This) ) 
-
-#define ICorProfilerMethodEnum_Release(This)    \
-    ( (This)->lpVtbl -> Release(This) ) 
-
-
-#define ICorProfilerMethodEnum_Skip(This,celt)  \
-    ( (This)->lpVtbl -> Skip(This,celt) ) 
-
-#define ICorProfilerMethodEnum_Reset(This)  \
-    ( (This)->lpVtbl -> Reset(This) ) 
-
-#define ICorProfilerMethodEnum_Clone(This,ppEnum)   \
-    ( (This)->lpVtbl -> Clone(This,ppEnum) ) 
-
-#define ICorProfilerMethodEnum_GetCount(This,pcelt) \
-    ( (This)->lpVtbl -> GetCount(This,pcelt) ) 
-
-#define ICorProfilerMethodEnum_Next(This,celt,elements,pceltFetched)    \
-    ( (This)->lpVtbl -> Next(This,celt,elements,pceltFetched) ) 
-
-#endif /* COBJMACROS */
-
-
-#endif  /* C style interface */
-
-
-
-
-#endif  /* __ICorProfilerMethodEnum_INTERFACE_DEFINED__ */
-
-
-#ifndef __ICorProfilerThreadEnum_INTERFACE_DEFINED__
-#define __ICorProfilerThreadEnum_INTERFACE_DEFINED__
-
-/* interface ICorProfilerThreadEnum */
-/* [local][unique][uuid][object] */ 
-
-
-EXTERN_C const IID IID_ICorProfilerThreadEnum;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-    
-    MIDL_INTERFACE("571194f7-25ed-419f-aa8b-7016b3159701")
-    ICorProfilerThreadEnum : public IUnknown
-    {
-    public:
-        virtual HRESULT STDMETHODCALLTYPE Skip( 
-            /* [in] */ ULONG celt) = 0;
+        HRESULT ( STDMETHODCALLTYPE *GetFunctionFromToken )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID moduleId,
+            /* [in] */ mdToken token,
+            /* [out] */ FunctionID *pFunctionId);
         
-        virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
+        HRESULT ( STDMETHODCALLTYPE *GetHandleFromThread )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ThreadID threadId,
+            /* [out] */ HANDLE *phThread);
         
-        virtual HRESULT STDMETHODCALLTYPE Clone( 
-            /* [out] */ ICorProfilerThreadEnum **ppEnum) = 0;
+        HRESULT ( STDMETHODCALLTYPE *GetObjectSize )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ObjectID objectId,
+            /* [out] */ ULONG *pcSize);
         
-        virtual HRESULT STDMETHODCALLTYPE GetCount( 
-            /* [out] */ ULONG *pcelt) = 0;
+        HRESULT ( STDMETHODCALLTYPE *IsArrayClass )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ClassID classId,
+            /* [out] */ CorElementType *pBaseElemType,
+            /* [out] */ ClassID *pBaseClassId,
+            /* [out] */ ULONG *pcRank);
         
-        virtual HRESULT STDMETHODCALLTYPE Next
-            /* [in] */ ULONG celt,
-            /* [length_is][size_is][out] */ ThreadID ids[  ],
-            /* [out] */ ULONG *pceltFetched) = 0;
+        HRESULT ( STDMETHODCALLTYPE *GetThreadInfo )
+            ICorProfilerInfo10 * This,
+            /* [in] */ ThreadID threadId,
+            /* [out] */ DWORD *pdwWin32ThreadId);
         
-    };
-    
-    
-#else   /* C style interface */
-
-    typedef struct ICorProfilerThreadEnumVtbl
-    {
-        BEGIN_INTERFACE
+        HRESULT ( STDMETHODCALLTYPE *GetCurrentThreadID )( 
+            ICorProfilerInfo10 * This,
+            /* [out] */ ThreadID *pThreadId);
         
-        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            ICorProfilerThreadEnum * This,
-            /* [in] */ REFIID riid,
-            /* [annotation][iid_is][out] */ 
-            _COM_Outptr_  void **ppvObject);
+        HRESULT ( STDMETHODCALLTYPE *GetClassIDInfo )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ClassID classId,
+            /* [out] */ ModuleID *pModuleId,
+            /* [out] */ mdTypeDef *pTypeDefToken);
         
-        ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            ICorProfilerThreadEnum * This);
+        HRESULT ( STDMETHODCALLTYPE *GetFunctionInfo )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID functionId,
+            /* [out] */ ClassID *pClassId,
+            /* [out] */ ModuleID *pModuleId,
+            /* [out] */ mdToken *pToken);
         
-        ULONG ( STDMETHODCALLTYPE *Release )( 
-            ICorProfilerThreadEnum * This);
+        HRESULT ( STDMETHODCALLTYPE *SetEventMask )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ DWORD dwEvents);
         
-        HRESULT ( STDMETHODCALLTYPE *Skip )( 
-            ICorProfilerThreadEnum * This,
-            /* [in] */ ULONG celt);
+        HRESULT ( STDMETHODCALLTYPE *SetEnterLeaveFunctionHooks )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionEnter *pFuncEnter,
+            /* [in] */ FunctionLeave *pFuncLeave,
+            /* [in] */ FunctionTailcall *pFuncTailcall);
         
-        HRESULT ( STDMETHODCALLTYPE *Reset )( 
-            ICorProfilerThreadEnum * This);
+        HRESULT ( STDMETHODCALLTYPE *SetFunctionIDMapper )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionIDMapper *pFunc);
         
-        HRESULT ( STDMETHODCALLTYPE *Clone )( 
-            ICorProfilerThreadEnum * This,
-            /* [out] */ ICorProfilerThreadEnum **ppEnum);
+        HRESULT ( STDMETHODCALLTYPE *GetTokenAndMetaDataFromFunction )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID functionId,
+            /* [in] */ REFIID riid,
+            /* [out] */ IUnknown **ppImport,
+            /* [out] */ mdToken *pToken);
         
-        HRESULT ( STDMETHODCALLTYPE *GetCount )( 
-            ICorProfilerThreadEnum * This,
-            /* [out] */ ULONG *pcelt);
+        HRESULT ( STDMETHODCALLTYPE *GetModuleInfo )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID moduleId,
+            /* [out] */ LPCBYTE *ppBaseLoadAddress,
+            /* [in] */ ULONG cchName,
+            /* [out] */ ULONG *pcchName,
+            /* [annotation][out] */ 
+            _Out_writes_to_(cchName, *pcchName)  WCHAR szName[  ],
+            /* [out] */ AssemblyID *pAssemblyId);
         
-        HRESULT ( STDMETHODCALLTYPE *Next )( 
-            ICorProfilerThreadEnum * This,
-            /* [in] */ ULONG celt,
-            /* [length_is][size_is][out] */ ThreadID ids[  ],
-            /* [out] */ ULONG *pceltFetched);
+        HRESULT ( STDMETHODCALLTYPE *GetModuleMetaData )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID moduleId,
+            /* [in] */ DWORD dwOpenFlags,
+            /* [in] */ REFIID riid,
+            /* [out] */ IUnknown **ppOut);
         
-        END_INTERFACE
-    } ICorProfilerThreadEnumVtbl;
-
-    interface ICorProfilerThreadEnum
-    {
-        CONST_VTBL struct ICorProfilerThreadEnumVtbl *lpVtbl;
-    };
-
-    
-
-#ifdef COBJMACROS
-
-
-#define ICorProfilerThreadEnum_QueryInterface(This,riid,ppvObject)  \
-    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
-
-#define ICorProfilerThreadEnum_AddRef(This) \
-    ( (This)->lpVtbl -> AddRef(This) ) 
-
-#define ICorProfilerThreadEnum_Release(This)    \
+        HRESULT ( STDMETHODCALLTYPE *GetILFunctionBody )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID moduleId,
+            /* [in] */ mdMethodDef methodId,
+            /* [out] */ LPCBYTE *ppMethodHeader,
+            /* [out] */ ULONG *pcbMethodSize);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetILFunctionBodyAllocator )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID moduleId,
+            /* [out] */ IMethodMalloc **ppMalloc);
+        
+        HRESULT ( STDMETHODCALLTYPE *SetILFunctionBody )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID moduleId,
+            /* [in] */ mdMethodDef methodid,
+            /* [in] */ LPCBYTE pbNewILMethodHeader);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetAppDomainInfo )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ AppDomainID appDomainId,
+            /* [in] */ ULONG cchName,
+            /* [out] */ ULONG *pcchName,
+            /* [annotation][out] */ 
+            _Out_writes_to_(cchName, *pcchName)  WCHAR szName[  ],
+            /* [out] */ ProcessID *pProcessId);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetAssemblyInfo )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ AssemblyID assemblyId,
+            /* [in] */ ULONG cchName,
+            /* [out] */ ULONG *pcchName,
+            /* [annotation][out] */ 
+            _Out_writes_to_(cchName, *pcchName)  WCHAR szName[  ],
+            /* [out] */ AppDomainID *pAppDomainId,
+            /* [out] */ ModuleID *pModuleId);
+        
+        HRESULT ( STDMETHODCALLTYPE *SetFunctionReJIT )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID functionId);
+        
+        HRESULT ( STDMETHODCALLTYPE *ForceGC )( 
+            ICorProfilerInfo10 * This);
+        
+        HRESULT ( STDMETHODCALLTYPE *SetILInstrumentedCodeMap )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID functionId,
+            /* [in] */ BOOL fStartJit,
+            /* [in] */ ULONG cILMapEntries,
+            /* [size_is][in] */ COR_IL_MAP rgILMapEntries[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetInprocInspectionInterface )( 
+            ICorProfilerInfo10 * This,
+            /* [out] */ IUnknown **ppicd);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetInprocInspectionIThisThread )( 
+            ICorProfilerInfo10 * This,
+            /* [out] */ IUnknown **ppicd);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetThreadContext )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ThreadID threadId,
+            /* [out] */ ContextID *pContextId);
+        
+        HRESULT ( STDMETHODCALLTYPE *BeginInprocDebugging )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ BOOL fThisThreadOnly,
+            /* [out] */ DWORD *pdwProfilerContext);
+        
+        HRESULT ( STDMETHODCALLTYPE *EndInprocDebugging )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ DWORD dwProfilerContext);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetILToNativeMapping )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID functionId,
+            /* [in] */ ULONG32 cMap,
+            /* [out] */ ULONG32 *pcMap,
+            /* [length_is][size_is][out] */ COR_DEBUG_IL_TO_NATIVE_MAP map[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *DoStackSnapshot )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ThreadID thread,
+            /* [in] */ StackSnapshotCallback *callback,
+            /* [in] */ ULONG32 infoFlags,
+            /* [in] */ void *clientData,
+            /* [size_is][in] */ BYTE context[  ],
+            /* [in] */ ULONG32 contextSize);
+        
+        HRESULT ( STDMETHODCALLTYPE *SetEnterLeaveFunctionHooks2 )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionEnter2 *pFuncEnter,
+            /* [in] */ FunctionLeave2 *pFuncLeave,
+            /* [in] */ FunctionTailcall2 *pFuncTailcall);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetFunctionInfo2 )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID funcId,
+            /* [in] */ COR_PRF_FRAME_INFO frameInfo,
+            /* [out] */ ClassID *pClassId,
+            /* [out] */ ModuleID *pModuleId,
+            /* [out] */ mdToken *pToken,
+            /* [in] */ ULONG32 cTypeArgs,
+            /* [out] */ ULONG32 *pcTypeArgs,
+            /* [out] */ ClassID typeArgs[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetStringLayout )( 
+            ICorProfilerInfo10 * This,
+            /* [out] */ ULONG *pBufferLengthOffset,
+            /* [out] */ ULONG *pStringLengthOffset,
+            /* [out] */ ULONG *pBufferOffset);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetClassLayout )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ClassID classID,
+            /* [out][in] */ COR_FIELD_OFFSET rFieldOffset[  ],
+            /* [in] */ ULONG cFieldOffset,
+            /* [out] */ ULONG *pcFieldOffset,
+            /* [out] */ ULONG *pulClassSize);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetClassIDInfo2 )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ClassID classId,
+            /* [out] */ ModuleID *pModuleId,
+            /* [out] */ mdTypeDef *pTypeDefToken,
+            /* [out] */ ClassID *pParentClassId,
+            /* [in] */ ULONG32 cNumTypeArgs,
+            /* [out] */ ULONG32 *pcNumTypeArgs,
+            /* [out] */ ClassID typeArgs[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetCodeInfo2 )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID functionID,
+            /* [in] */ ULONG32 cCodeInfos,
+            /* [out] */ ULONG32 *pcCodeInfos,
+            /* [length_is][size_is][out] */ COR_PRF_CODE_INFO codeInfos[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetClassFromTokenAndTypeArgs )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID moduleID,
+            /* [in] */ mdTypeDef typeDef,
+            /* [in] */ ULONG32 cTypeArgs,
+            /* [size_is][in] */ ClassID typeArgs[  ],
+            /* [out] */ ClassID *pClassID);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetFunctionFromTokenAndTypeArgs )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID moduleID,
+            /* [in] */ mdMethodDef funcDef,
+            /* [in] */ ClassID classId,
+            /* [in] */ ULONG32 cTypeArgs,
+            /* [size_is][in] */ ClassID typeArgs[  ],
+            /* [out] */ FunctionID *pFunctionID);
+        
+        HRESULT ( STDMETHODCALLTYPE *EnumModuleFrozenObjects )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID moduleID,
+            /* [out] */ ICorProfilerObjectEnum **ppEnum);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetArrayObjectInfo )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ObjectID objectId,
+            /* [in] */ ULONG32 cDimensions,
+            /* [size_is][out] */ ULONG32 pDimensionSizes[  ],
+            /* [size_is][out] */ int pDimensionLowerBounds[  ],
+            /* [out] */ BYTE **ppData);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetBoxClassLayout )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ClassID classId,
+            /* [out] */ ULONG32 *pBufferOffset);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetThreadAppDomain )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ThreadID threadId,
+            /* [out] */ AppDomainID *pAppDomainId);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetRVAStaticAddress )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ClassID classId,
+            /* [in] */ mdFieldDef fieldToken,
+            /* [out] */ void **ppAddress);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetAppDomainStaticAddress )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ClassID classId,
+            /* [in] */ mdFieldDef fieldToken,
+            /* [in] */ AppDomainID appDomainId,
+            /* [out] */ void **ppAddress);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetThreadStaticAddress )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ClassID classId,
+            /* [in] */ mdFieldDef fieldToken,
+            /* [in] */ ThreadID threadId,
+            /* [out] */ void **ppAddress);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetContextStaticAddress )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ClassID classId,
+            /* [in] */ mdFieldDef fieldToken,
+            /* [in] */ ContextID contextId,
+            /* [out] */ void **ppAddress);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetStaticFieldInfo )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ClassID classId,
+            /* [in] */ mdFieldDef fieldToken,
+            /* [out] */ COR_PRF_STATIC_TYPE *pFieldInfo);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetGenerationBounds )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ULONG cObjectRanges,
+            /* [out] */ ULONG *pcObjectRanges,
+            /* [length_is][size_is][out] */ COR_PRF_GC_GENERATION_RANGE ranges[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetObjectGeneration )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ObjectID objectId,
+            /* [out] */ COR_PRF_GC_GENERATION_RANGE *range);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetNotifiedExceptionClauseInfo )( 
+            ICorProfilerInfo10 * This,
+            /* [out] */ COR_PRF_EX_CLAUSE_INFO *pinfo);
+        
+        HRESULT ( STDMETHODCALLTYPE *EnumJITedFunctions )( 
+            ICorProfilerInfo10 * This,
+            /* [out] */ ICorProfilerFunctionEnum **ppEnum);
+        
+        HRESULT ( STDMETHODCALLTYPE *RequestProfilerDetach )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ DWORD dwExpectedCompletionMilliseconds);
+        
+        HRESULT ( STDMETHODCALLTYPE *SetFunctionIDMapper2 )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionIDMapper2 *pFunc,
+            /* [in] */ void *clientData);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetStringLayout2 )( 
+            ICorProfilerInfo10 * This,
+            /* [out] */ ULONG *pStringLengthOffset,
+            /* [out] */ ULONG *pBufferOffset);
+        
+        HRESULT ( STDMETHODCALLTYPE *SetEnterLeaveFunctionHooks3 )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionEnter3 *pFuncEnter3,
+            /* [in] */ FunctionLeave3 *pFuncLeave3,
+            /* [in] */ FunctionTailcall3 *pFuncTailcall3);
+        
+        HRESULT ( STDMETHODCALLTYPE *SetEnterLeaveFunctionHooks3WithInfo )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionEnter3WithInfo *pFuncEnter3WithInfo,
+            /* [in] */ FunctionLeave3WithInfo *pFuncLeave3WithInfo,
+            /* [in] */ FunctionTailcall3WithInfo *pFuncTailcall3WithInfo);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetFunctionEnter3Info )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID functionId,
+            /* [in] */ COR_PRF_ELT_INFO eltInfo,
+            /* [out] */ COR_PRF_FRAME_INFO *pFrameInfo,
+            /* [out][in] */ ULONG *pcbArgumentInfo,
+            /* [size_is][out] */ COR_PRF_FUNCTION_ARGUMENT_INFO *pArgumentInfo);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetFunctionLeave3Info )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID functionId,
+            /* [in] */ COR_PRF_ELT_INFO eltInfo,
+            /* [out] */ COR_PRF_FRAME_INFO *pFrameInfo,
+            /* [out] */ COR_PRF_FUNCTION_ARGUMENT_RANGE *pRetvalRange);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetFunctionTailcall3Info )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID functionId,
+            /* [in] */ COR_PRF_ELT_INFO eltInfo,
+            /* [out] */ COR_PRF_FRAME_INFO *pFrameInfo);
+        
+        HRESULT ( STDMETHODCALLTYPE *EnumModules )( 
+            ICorProfilerInfo10 * This,
+            /* [out] */ ICorProfilerModuleEnum **ppEnum);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetRuntimeInformation )( 
+            ICorProfilerInfo10 * This,
+            /* [out] */ USHORT *pClrInstanceId,
+            /* [out] */ COR_PRF_RUNTIME_TYPE *pRuntimeType,
+            /* [out] */ USHORT *pMajorVersion,
+            /* [out] */ USHORT *pMinorVersion,
+            /* [out] */ USHORT *pBuildNumber,
+            /* [out] */ USHORT *pQFEVersion,
+            /* [in] */ ULONG cchVersionString,
+            /* [out] */ ULONG *pcchVersionString,
+            /* [annotation][out] */ 
+            _Out_writes_to_(cchVersionString, *pcchVersionString)  WCHAR szVersionString[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetThreadStaticAddress2 )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ClassID classId,
+            /* [in] */ mdFieldDef fieldToken,
+            /* [in] */ AppDomainID appDomainId,
+            /* [in] */ ThreadID threadId,
+            /* [out] */ void **ppAddress);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetAppDomainsContainingModule )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID moduleId,
+            /* [in] */ ULONG32 cAppDomainIds,
+            /* [out] */ ULONG32 *pcAppDomainIds,
+            /* [length_is][size_is][out] */ AppDomainID appDomainIds[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetModuleInfo2 )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID moduleId,
+            /* [out] */ LPCBYTE *ppBaseLoadAddress,
+            /* [in] */ ULONG cchName,
+            /* [out] */ ULONG *pcchName,
+            /* [annotation][out] */ 
+            _Out_writes_to_(cchName, *pcchName)  WCHAR szName[  ],
+            /* [out] */ AssemblyID *pAssemblyId,
+            /* [out] */ DWORD *pdwModuleFlags);
+        
+        HRESULT ( STDMETHODCALLTYPE *EnumThreads )( 
+            ICorProfilerInfo10 * This,
+            /* [out] */ ICorProfilerThreadEnum **ppEnum);
+        
+        HRESULT ( STDMETHODCALLTYPE *InitializeCurrentThread )( 
+            ICorProfilerInfo10 * This);
+        
+        HRESULT ( STDMETHODCALLTYPE *RequestReJIT )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ULONG cFunctions,
+            /* [size_is][in] */ ModuleID moduleIds[  ],
+            /* [size_is][in] */ mdMethodDef methodIds[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *RequestRevert )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ULONG cFunctions,
+            /* [size_is][in] */ ModuleID moduleIds[  ],
+            /* [size_is][in] */ mdMethodDef methodIds[  ],
+            /* [size_is][out] */ HRESULT status[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetCodeInfo3 )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID functionID,
+            /* [in] */ ReJITID reJitId,
+            /* [in] */ ULONG32 cCodeInfos,
+            /* [out] */ ULONG32 *pcCodeInfos,
+            /* [length_is][size_is][out] */ COR_PRF_CODE_INFO codeInfos[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetFunctionFromIP2 )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ LPCBYTE ip,
+            /* [out] */ FunctionID *pFunctionId,
+            /* [out] */ ReJITID *pReJitId);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetReJITIDs )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID functionId,
+            /* [in] */ ULONG cReJitIds,
+            /* [out] */ ULONG *pcReJitIds,
+            /* [length_is][size_is][out] */ ReJITID reJitIds[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetILToNativeMapping2 )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID functionId,
+            /* [in] */ ReJITID reJitId,
+            /* [in] */ ULONG32 cMap,
+            /* [out] */ ULONG32 *pcMap,
+            /* [length_is][size_is][out] */ COR_DEBUG_IL_TO_NATIVE_MAP map[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *EnumJITedFunctions2 )( 
+            ICorProfilerInfo10 * This,
+            /* [out] */ ICorProfilerFunctionEnum **ppEnum);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetObjectSize2 )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ObjectID objectId,
+            /* [out] */ SIZE_T *pcSize);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetEventMask2 )( 
+            ICorProfilerInfo10 * This,
+            /* [out] */ DWORD *pdwEventsLow,
+            /* [out] */ DWORD *pdwEventsHigh);
+        
+        HRESULT ( STDMETHODCALLTYPE *SetEventMask2 )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ DWORD dwEventsLow,
+            /* [in] */ DWORD dwEventsHigh);
+        
+        HRESULT ( STDMETHODCALLTYPE *EnumNgenModuleMethodsInliningThisMethod )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID inlinersModuleId,
+            /* [in] */ ModuleID inlineeModuleId,
+            /* [in] */ mdMethodDef inlineeMethodId,
+            /* [out] */ BOOL *incompleteData,
+            /* [out] */ ICorProfilerMethodEnum **ppEnum);
+        
+        HRESULT ( STDMETHODCALLTYPE *ApplyMetaData )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID moduleId);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetInMemorySymbolsLength )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID moduleId,
+            /* [out] */ DWORD *pCountSymbolBytes);
+        
+        HRESULT ( STDMETHODCALLTYPE *ReadInMemorySymbols )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ ModuleID moduleId,
+            /* [in] */ DWORD symbolsReadOffset,
+            /* [out] */ BYTE *pSymbolBytes,
+            /* [in] */ DWORD countSymbolBytes,
+            /* [out] */ DWORD *pCountSymbolBytesRead);
+        
+        HRESULT ( STDMETHODCALLTYPE *IsFunctionDynamic )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID functionId,
+            /* [out] */ BOOL *isDynamic);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetFunctionFromIP3 )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ LPCBYTE ip,
+            /* [out] */ FunctionID *functionId,
+            /* [out] */ ReJITID *pReJitId);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetDynamicFunctionInfo )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ FunctionID functionId,
+            /* [out] */ ModuleID *moduleId,
+            /* [out] */ PCCOR_SIGNATURE *ppvSig,
+            /* [out] */ ULONG *pbSig,
+            /* [in] */ ULONG cchName,
+            /* [out] */ ULONG *pcchName,
+            /* [out] */ WCHAR wszName[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetNativeCodeStartAddresses )( 
+            ICorProfilerInfo10 * This,
+            FunctionID functionID,
+            ReJITID reJitId,
+            ULONG32 cCodeStartAddresses,
+            ULONG32 *pcCodeStartAddresses,
+            UINT_PTR codeStartAddresses[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetILToNativeMapping3 )( 
+            ICorProfilerInfo10 * This,
+            UINT_PTR pNativeCodeStartAddress,
+            ULONG32 cMap,
+            ULONG32 *pcMap,
+            COR_DEBUG_IL_TO_NATIVE_MAP map[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetCodeInfo4 )( 
+            ICorProfilerInfo10 * This,
+            UINT_PTR pNativeCodeStartAddress,
+            ULONG32 cCodeInfos,
+            ULONG32 *pcCodeInfos,
+            COR_PRF_CODE_INFO codeInfos[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *EnumerateObjectReferences )( 
+            ICorProfilerInfo10 * This,
+            ObjectID objectId,
+            ObjectReferenceCallback callback,
+            void *clientData);
+        
+        HRESULT ( STDMETHODCALLTYPE *IsFrozenObject )( 
+            ICorProfilerInfo10 * This,
+            ObjectID objectId,
+            BOOL *pbFrozen);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetLOHObjectSizeThreshold )( 
+            ICorProfilerInfo10 * This,
+            DWORD *pThreshold);
+        
+        HRESULT ( STDMETHODCALLTYPE *RequestReJITWithInliners )( 
+            ICorProfilerInfo10 * This,
+            /* [in] */ DWORD dwRejitFlags,
+            /* [in] */ ULONG cFunctions,
+            /* [size_is][in] */ ModuleID moduleIds[  ],
+            /* [size_is][in] */ mdMethodDef methodIds[  ]);
+        
+        HRESULT ( STDMETHODCALLTYPE *SuspendRuntime )( 
+            ICorProfilerInfo10 * This);
+        
+        HRESULT ( STDMETHODCALLTYPE *ResumeRuntime )( 
+            ICorProfilerInfo10 * This);
+        
+        END_INTERFACE
+    } ICorProfilerInfo10Vtbl;
+
+    interface ICorProfilerInfo10
+    {
+        CONST_VTBL struct ICorProfilerInfo10Vtbl *lpVtbl;
+    };
+
+    
+
+#ifdef COBJMACROS
+
+
+#define ICorProfilerInfo10_QueryInterface(This,riid,ppvObject)  \
+    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
+
+#define ICorProfilerInfo10_AddRef(This) \
+    ( (This)->lpVtbl -> AddRef(This) ) 
+
+#define ICorProfilerInfo10_Release(This)    \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ICorProfilerThreadEnum_Skip(This,celt)  \
-    ( (This)->lpVtbl -> Skip(This,celt) ) 
+#define ICorProfilerInfo10_GetClassFromObject(This,objectId,pClassId)   \
+    ( (This)->lpVtbl -> GetClassFromObject(This,objectId,pClassId) ) 
+
+#define ICorProfilerInfo10_GetClassFromToken(This,moduleId,typeDef,pClassId)    \
+    ( (This)->lpVtbl -> GetClassFromToken(This,moduleId,typeDef,pClassId) ) 
+
+#define ICorProfilerInfo10_GetCodeInfo(This,functionId,pStart,pcSize)   \
+    ( (This)->lpVtbl -> GetCodeInfo(This,functionId,pStart,pcSize) ) 
+
+#define ICorProfilerInfo10_GetEventMask(This,pdwEvents) \
+    ( (This)->lpVtbl -> GetEventMask(This,pdwEvents) ) 
+
+#define ICorProfilerInfo10_GetFunctionFromIP(This,ip,pFunctionId)   \
+    ( (This)->lpVtbl -> GetFunctionFromIP(This,ip,pFunctionId) ) 
+
+#define ICorProfilerInfo10_GetFunctionFromToken(This,moduleId,token,pFunctionId)    \
+    ( (This)->lpVtbl -> GetFunctionFromToken(This,moduleId,token,pFunctionId) ) 
+
+#define ICorProfilerInfo10_GetHandleFromThread(This,threadId,phThread)  \
+    ( (This)->lpVtbl -> GetHandleFromThread(This,threadId,phThread) ) 
+
+#define ICorProfilerInfo10_GetObjectSize(This,objectId,pcSize)  \
+    ( (This)->lpVtbl -> GetObjectSize(This,objectId,pcSize) ) 
+
+#define ICorProfilerInfo10_IsArrayClass(This,classId,pBaseElemType,pBaseClassId,pcRank) \
+    ( (This)->lpVtbl -> IsArrayClass(This,classId,pBaseElemType,pBaseClassId,pcRank) ) 
+
+#define ICorProfilerInfo10_GetThreadInfo(This,threadId,pdwWin32ThreadId)    \
+    ( (This)->lpVtbl -> GetThreadInfo(This,threadId,pdwWin32ThreadId) ) 
+
+#define ICorProfilerInfo10_GetCurrentThreadID(This,pThreadId)   \
+    ( (This)->lpVtbl -> GetCurrentThreadID(This,pThreadId) ) 
+
+#define ICorProfilerInfo10_GetClassIDInfo(This,classId,pModuleId,pTypeDefToken) \
+    ( (This)->lpVtbl -> GetClassIDInfo(This,classId,pModuleId,pTypeDefToken) ) 
+
+#define ICorProfilerInfo10_GetFunctionInfo(This,functionId,pClassId,pModuleId,pToken)   \
+    ( (This)->lpVtbl -> GetFunctionInfo(This,functionId,pClassId,pModuleId,pToken) ) 
+
+#define ICorProfilerInfo10_SetEventMask(This,dwEvents)  \
+    ( (This)->lpVtbl -> SetEventMask(This,dwEvents) ) 
+
+#define ICorProfilerInfo10_SetEnterLeaveFunctionHooks(This,pFuncEnter,pFuncLeave,pFuncTailcall) \
+    ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks(This,pFuncEnter,pFuncLeave,pFuncTailcall) ) 
+
+#define ICorProfilerInfo10_SetFunctionIDMapper(This,pFunc)  \
+    ( (This)->lpVtbl -> SetFunctionIDMapper(This,pFunc) ) 
+
+#define ICorProfilerInfo10_GetTokenAndMetaDataFromFunction(This,functionId,riid,ppImport,pToken)    \
+    ( (This)->lpVtbl -> GetTokenAndMetaDataFromFunction(This,functionId,riid,ppImport,pToken) ) 
+
+#define ICorProfilerInfo10_GetModuleInfo(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId)   \
+    ( (This)->lpVtbl -> GetModuleInfo(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId) ) 
+
+#define ICorProfilerInfo10_GetModuleMetaData(This,moduleId,dwOpenFlags,riid,ppOut)  \
+    ( (This)->lpVtbl -> GetModuleMetaData(This,moduleId,dwOpenFlags,riid,ppOut) ) 
+
+#define ICorProfilerInfo10_GetILFunctionBody(This,moduleId,methodId,ppMethodHeader,pcbMethodSize)   \
+    ( (This)->lpVtbl -> GetILFunctionBody(This,moduleId,methodId,ppMethodHeader,pcbMethodSize) ) 
+
+#define ICorProfilerInfo10_GetILFunctionBodyAllocator(This,moduleId,ppMalloc)   \
+    ( (This)->lpVtbl -> GetILFunctionBodyAllocator(This,moduleId,ppMalloc) ) 
+
+#define ICorProfilerInfo10_SetILFunctionBody(This,moduleId,methodid,pbNewILMethodHeader)    \
+    ( (This)->lpVtbl -> SetILFunctionBody(This,moduleId,methodid,pbNewILMethodHeader) ) 
+
+#define ICorProfilerInfo10_GetAppDomainInfo(This,appDomainId,cchName,pcchName,szName,pProcessId)    \
+    ( (This)->lpVtbl -> GetAppDomainInfo(This,appDomainId,cchName,pcchName,szName,pProcessId) ) 
+
+#define ICorProfilerInfo10_GetAssemblyInfo(This,assemblyId,cchName,pcchName,szName,pAppDomainId,pModuleId)  \
+    ( (This)->lpVtbl -> GetAssemblyInfo(This,assemblyId,cchName,pcchName,szName,pAppDomainId,pModuleId) ) 
+
+#define ICorProfilerInfo10_SetFunctionReJIT(This,functionId)    \
+    ( (This)->lpVtbl -> SetFunctionReJIT(This,functionId) ) 
+
+#define ICorProfilerInfo10_ForceGC(This)    \
+    ( (This)->lpVtbl -> ForceGC(This) ) 
+
+#define ICorProfilerInfo10_SetILInstrumentedCodeMap(This,functionId,fStartJit,cILMapEntries,rgILMapEntries) \
+    ( (This)->lpVtbl -> SetILInstrumentedCodeMap(This,functionId,fStartJit,cILMapEntries,rgILMapEntries) ) 
+
+#define ICorProfilerInfo10_GetInprocInspectionInterface(This,ppicd) \
+    ( (This)->lpVtbl -> GetInprocInspectionInterface(This,ppicd) ) 
+
+#define ICorProfilerInfo10_GetInprocInspectionIThisThread(This,ppicd)   \
+    ( (This)->lpVtbl -> GetInprocInspectionIThisThread(This,ppicd) ) 
+
+#define ICorProfilerInfo10_GetThreadContext(This,threadId,pContextId)   \
+    ( (This)->lpVtbl -> GetThreadContext(This,threadId,pContextId) ) 
+
+#define ICorProfilerInfo10_BeginInprocDebugging(This,fThisThreadOnly,pdwProfilerContext)    \
+    ( (This)->lpVtbl -> BeginInprocDebugging(This,fThisThreadOnly,pdwProfilerContext) ) 
+
+#define ICorProfilerInfo10_EndInprocDebugging(This,dwProfilerContext)   \
+    ( (This)->lpVtbl -> EndInprocDebugging(This,dwProfilerContext) ) 
+
+#define ICorProfilerInfo10_GetILToNativeMapping(This,functionId,cMap,pcMap,map) \
+    ( (This)->lpVtbl -> GetILToNativeMapping(This,functionId,cMap,pcMap,map) ) 
+
+
+#define ICorProfilerInfo10_DoStackSnapshot(This,thread,callback,infoFlags,clientData,context,contextSize)   \
+    ( (This)->lpVtbl -> DoStackSnapshot(This,thread,callback,infoFlags,clientData,context,contextSize) ) 
+
+#define ICorProfilerInfo10_SetEnterLeaveFunctionHooks2(This,pFuncEnter,pFuncLeave,pFuncTailcall)    \
+    ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks2(This,pFuncEnter,pFuncLeave,pFuncTailcall) ) 
+
+#define ICorProfilerInfo10_GetFunctionInfo2(This,funcId,frameInfo,pClassId,pModuleId,pToken,cTypeArgs,pcTypeArgs,typeArgs)  \
+    ( (This)->lpVtbl -> GetFunctionInfo2(This,funcId,frameInfo,pClassId,pModuleId,pToken,cTypeArgs,pcTypeArgs,typeArgs) ) 
+
+#define ICorProfilerInfo10_GetStringLayout(This,pBufferLengthOffset,pStringLengthOffset,pBufferOffset)  \
+    ( (This)->lpVtbl -> GetStringLayout(This,pBufferLengthOffset,pStringLengthOffset,pBufferOffset) ) 
+
+#define ICorProfilerInfo10_GetClassLayout(This,classID,rFieldOffset,cFieldOffset,pcFieldOffset,pulClassSize)    \
+    ( (This)->lpVtbl -> GetClassLayout(This,classID,rFieldOffset,cFieldOffset,pcFieldOffset,pulClassSize) ) 
+
+#define ICorProfilerInfo10_GetClassIDInfo2(This,classId,pModuleId,pTypeDefToken,pParentClassId,cNumTypeArgs,pcNumTypeArgs,typeArgs) \
+    ( (This)->lpVtbl -> GetClassIDInfo2(This,classId,pModuleId,pTypeDefToken,pParentClassId,cNumTypeArgs,pcNumTypeArgs,typeArgs) ) 
+
+#define ICorProfilerInfo10_GetCodeInfo2(This,functionID,cCodeInfos,pcCodeInfos,codeInfos)   \
+    ( (This)->lpVtbl -> GetCodeInfo2(This,functionID,cCodeInfos,pcCodeInfos,codeInfos) ) 
+
+#define ICorProfilerInfo10_GetClassFromTokenAndTypeArgs(This,moduleID,typeDef,cTypeArgs,typeArgs,pClassID)  \
+    ( (This)->lpVtbl -> GetClassFromTokenAndTypeArgs(This,moduleID,typeDef,cTypeArgs,typeArgs,pClassID) ) 
+
+#define ICorProfilerInfo10_GetFunctionFromTokenAndTypeArgs(This,moduleID,funcDef,classId,cTypeArgs,typeArgs,pFunctionID)    \
+    ( (This)->lpVtbl -> GetFunctionFromTokenAndTypeArgs(This,moduleID,funcDef,classId,cTypeArgs,typeArgs,pFunctionID) ) 
+
+#define ICorProfilerInfo10_EnumModuleFrozenObjects(This,moduleID,ppEnum)    \
+    ( (This)->lpVtbl -> EnumModuleFrozenObjects(This,moduleID,ppEnum) ) 
+
+#define ICorProfilerInfo10_GetArrayObjectInfo(This,objectId,cDimensions,pDimensionSizes,pDimensionLowerBounds,ppData)   \
+    ( (This)->lpVtbl -> GetArrayObjectInfo(This,objectId,cDimensions,pDimensionSizes,pDimensionLowerBounds,ppData) ) 
+
+#define ICorProfilerInfo10_GetBoxClassLayout(This,classId,pBufferOffset)    \
+    ( (This)->lpVtbl -> GetBoxClassLayout(This,classId,pBufferOffset) ) 
+
+#define ICorProfilerInfo10_GetThreadAppDomain(This,threadId,pAppDomainId)   \
+    ( (This)->lpVtbl -> GetThreadAppDomain(This,threadId,pAppDomainId) ) 
+
+#define ICorProfilerInfo10_GetRVAStaticAddress(This,classId,fieldToken,ppAddress)   \
+    ( (This)->lpVtbl -> GetRVAStaticAddress(This,classId,fieldToken,ppAddress) ) 
+
+#define ICorProfilerInfo10_GetAppDomainStaticAddress(This,classId,fieldToken,appDomainId,ppAddress) \
+    ( (This)->lpVtbl -> GetAppDomainStaticAddress(This,classId,fieldToken,appDomainId,ppAddress) ) 
+
+#define ICorProfilerInfo10_GetThreadStaticAddress(This,classId,fieldToken,threadId,ppAddress)   \
+    ( (This)->lpVtbl -> GetThreadStaticAddress(This,classId,fieldToken,threadId,ppAddress) ) 
+
+#define ICorProfilerInfo10_GetContextStaticAddress(This,classId,fieldToken,contextId,ppAddress) \
+    ( (This)->lpVtbl -> GetContextStaticAddress(This,classId,fieldToken,contextId,ppAddress) ) 
+
+#define ICorProfilerInfo10_GetStaticFieldInfo(This,classId,fieldToken,pFieldInfo)   \
+    ( (This)->lpVtbl -> GetStaticFieldInfo(This,classId,fieldToken,pFieldInfo) ) 
+
+#define ICorProfilerInfo10_GetGenerationBounds(This,cObjectRanges,pcObjectRanges,ranges)    \
+    ( (This)->lpVtbl -> GetGenerationBounds(This,cObjectRanges,pcObjectRanges,ranges) ) 
+
+#define ICorProfilerInfo10_GetObjectGeneration(This,objectId,range) \
+    ( (This)->lpVtbl -> GetObjectGeneration(This,objectId,range) ) 
+
+#define ICorProfilerInfo10_GetNotifiedExceptionClauseInfo(This,pinfo)   \
+    ( (This)->lpVtbl -> GetNotifiedExceptionClauseInfo(This,pinfo) ) 
+
+
+#define ICorProfilerInfo10_EnumJITedFunctions(This,ppEnum)  \
+    ( (This)->lpVtbl -> EnumJITedFunctions(This,ppEnum) ) 
+
+#define ICorProfilerInfo10_RequestProfilerDetach(This,dwExpectedCompletionMilliseconds) \
+    ( (This)->lpVtbl -> RequestProfilerDetach(This,dwExpectedCompletionMilliseconds) ) 
+
+#define ICorProfilerInfo10_SetFunctionIDMapper2(This,pFunc,clientData)  \
+    ( (This)->lpVtbl -> SetFunctionIDMapper2(This,pFunc,clientData) ) 
+
+#define ICorProfilerInfo10_GetStringLayout2(This,pStringLengthOffset,pBufferOffset) \
+    ( (This)->lpVtbl -> GetStringLayout2(This,pStringLengthOffset,pBufferOffset) ) 
+
+#define ICorProfilerInfo10_SetEnterLeaveFunctionHooks3(This,pFuncEnter3,pFuncLeave3,pFuncTailcall3) \
+    ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks3(This,pFuncEnter3,pFuncLeave3,pFuncTailcall3) ) 
+
+#define ICorProfilerInfo10_SetEnterLeaveFunctionHooks3WithInfo(This,pFuncEnter3WithInfo,pFuncLeave3WithInfo,pFuncTailcall3WithInfo) \
+    ( (This)->lpVtbl -> SetEnterLeaveFunctionHooks3WithInfo(This,pFuncEnter3WithInfo,pFuncLeave3WithInfo,pFuncTailcall3WithInfo) ) 
+
+#define ICorProfilerInfo10_GetFunctionEnter3Info(This,functionId,eltInfo,pFrameInfo,pcbArgumentInfo,pArgumentInfo)  \
+    ( (This)->lpVtbl -> GetFunctionEnter3Info(This,functionId,eltInfo,pFrameInfo,pcbArgumentInfo,pArgumentInfo) ) 
+
+#define ICorProfilerInfo10_GetFunctionLeave3Info(This,functionId,eltInfo,pFrameInfo,pRetvalRange)   \
+    ( (This)->lpVtbl -> GetFunctionLeave3Info(This,functionId,eltInfo,pFrameInfo,pRetvalRange) ) 
+
+#define ICorProfilerInfo10_GetFunctionTailcall3Info(This,functionId,eltInfo,pFrameInfo) \
+    ( (This)->lpVtbl -> GetFunctionTailcall3Info(This,functionId,eltInfo,pFrameInfo) ) 
+
+#define ICorProfilerInfo10_EnumModules(This,ppEnum) \
+    ( (This)->lpVtbl -> EnumModules(This,ppEnum) ) 
+
+#define ICorProfilerInfo10_GetRuntimeInformation(This,pClrInstanceId,pRuntimeType,pMajorVersion,pMinorVersion,pBuildNumber,pQFEVersion,cchVersionString,pcchVersionString,szVersionString)  \
+    ( (This)->lpVtbl -> GetRuntimeInformation(This,pClrInstanceId,pRuntimeType,pMajorVersion,pMinorVersion,pBuildNumber,pQFEVersion,cchVersionString,pcchVersionString,szVersionString) ) 
+
+#define ICorProfilerInfo10_GetThreadStaticAddress2(This,classId,fieldToken,appDomainId,threadId,ppAddress)  \
+    ( (This)->lpVtbl -> GetThreadStaticAddress2(This,classId,fieldToken,appDomainId,threadId,ppAddress) ) 
+
+#define ICorProfilerInfo10_GetAppDomainsContainingModule(This,moduleId,cAppDomainIds,pcAppDomainIds,appDomainIds)   \
+    ( (This)->lpVtbl -> GetAppDomainsContainingModule(This,moduleId,cAppDomainIds,pcAppDomainIds,appDomainIds) ) 
+
+#define ICorProfilerInfo10_GetModuleInfo2(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId,pdwModuleFlags)   \
+    ( (This)->lpVtbl -> GetModuleInfo2(This,moduleId,ppBaseLoadAddress,cchName,pcchName,szName,pAssemblyId,pdwModuleFlags) ) 
 
-#define ICorProfilerThreadEnum_Reset(This)  \
-    ( (This)->lpVtbl -> Reset(This) ) 
 
-#define ICorProfilerThreadEnum_Clone(This,ppEnum)   \
-    ( (This)->lpVtbl -> Clone(This,ppEnum) ) 
+#define ICorProfilerInfo10_EnumThreads(This,ppEnum) \
+    ( (This)->lpVtbl -> EnumThreads(This,ppEnum) ) 
 
-#define ICorProfilerThreadEnum_GetCount(This,pcelt) \
-    ( (This)->lpVtbl -> GetCount(This,pcelt) ) 
+#define ICorProfilerInfo10_InitializeCurrentThread(This)    \
+    ( (This)->lpVtbl -> InitializeCurrentThread(This) ) 
 
-#define ICorProfilerThreadEnum_Next(This,celt,ids,pceltFetched) \
-    ( (This)->lpVtbl -> Next(This,celt,ids,pceltFetched) ) 
+#define ICorProfilerInfo10_RequestReJIT(This,cFunctions,moduleIds,methodIds)    \
+    ( (This)->lpVtbl -> RequestReJIT(This,cFunctions,moduleIds,methodIds) ) 
+
+#define ICorProfilerInfo10_RequestRevert(This,cFunctions,moduleIds,methodIds,status)    \
+    ( (This)->lpVtbl -> RequestRevert(This,cFunctions,moduleIds,methodIds,status) ) 
+
+#define ICorProfilerInfo10_GetCodeInfo3(This,functionID,reJitId,cCodeInfos,pcCodeInfos,codeInfos)   \
+    ( (This)->lpVtbl -> GetCodeInfo3(This,functionID,reJitId,cCodeInfos,pcCodeInfos,codeInfos) ) 
+
+#define ICorProfilerInfo10_GetFunctionFromIP2(This,ip,pFunctionId,pReJitId) \
+    ( (This)->lpVtbl -> GetFunctionFromIP2(This,ip,pFunctionId,pReJitId) ) 
+
+#define ICorProfilerInfo10_GetReJITIDs(This,functionId,cReJitIds,pcReJitIds,reJitIds)   \
+    ( (This)->lpVtbl -> GetReJITIDs(This,functionId,cReJitIds,pcReJitIds,reJitIds) ) 
+
+#define ICorProfilerInfo10_GetILToNativeMapping2(This,functionId,reJitId,cMap,pcMap,map)    \
+    ( (This)->lpVtbl -> GetILToNativeMapping2(This,functionId,reJitId,cMap,pcMap,map) ) 
+
+#define ICorProfilerInfo10_EnumJITedFunctions2(This,ppEnum) \
+    ( (This)->lpVtbl -> EnumJITedFunctions2(This,ppEnum) ) 
+
+#define ICorProfilerInfo10_GetObjectSize2(This,objectId,pcSize) \
+    ( (This)->lpVtbl -> GetObjectSize2(This,objectId,pcSize) ) 
+
+
+#define ICorProfilerInfo10_GetEventMask2(This,pdwEventsLow,pdwEventsHigh)   \
+    ( (This)->lpVtbl -> GetEventMask2(This,pdwEventsLow,pdwEventsHigh) ) 
+
+#define ICorProfilerInfo10_SetEventMask2(This,dwEventsLow,dwEventsHigh) \
+    ( (This)->lpVtbl -> SetEventMask2(This,dwEventsLow,dwEventsHigh) ) 
+
+
+#define ICorProfilerInfo10_EnumNgenModuleMethodsInliningThisMethod(This,inlinersModuleId,inlineeModuleId,inlineeMethodId,incompleteData,ppEnum) \
+    ( (This)->lpVtbl -> EnumNgenModuleMethodsInliningThisMethod(This,inlinersModuleId,inlineeModuleId,inlineeMethodId,incompleteData,ppEnum) ) 
+
+
+#define ICorProfilerInfo10_ApplyMetaData(This,moduleId) \
+    ( (This)->lpVtbl -> ApplyMetaData(This,moduleId) ) 
+
+#define ICorProfilerInfo10_GetInMemorySymbolsLength(This,moduleId,pCountSymbolBytes)    \
+    ( (This)->lpVtbl -> GetInMemorySymbolsLength(This,moduleId,pCountSymbolBytes) ) 
+
+#define ICorProfilerInfo10_ReadInMemorySymbols(This,moduleId,symbolsReadOffset,pSymbolBytes,countSymbolBytes,pCountSymbolBytesRead) \
+    ( (This)->lpVtbl -> ReadInMemorySymbols(This,moduleId,symbolsReadOffset,pSymbolBytes,countSymbolBytes,pCountSymbolBytesRead) ) 
+
+
+#define ICorProfilerInfo10_IsFunctionDynamic(This,functionId,isDynamic) \
+    ( (This)->lpVtbl -> IsFunctionDynamic(This,functionId,isDynamic) ) 
+
+#define ICorProfilerInfo10_GetFunctionFromIP3(This,ip,functionId,pReJitId)  \
+    ( (This)->lpVtbl -> GetFunctionFromIP3(This,ip,functionId,pReJitId) ) 
+
+#define ICorProfilerInfo10_GetDynamicFunctionInfo(This,functionId,moduleId,ppvSig,pbSig,cchName,pcchName,wszName)   \
+    ( (This)->lpVtbl -> GetDynamicFunctionInfo(This,functionId,moduleId,ppvSig,pbSig,cchName,pcchName,wszName) ) 
+
+
+#define ICorProfilerInfo10_GetNativeCodeStartAddresses(This,functionID,reJitId,cCodeStartAddresses,pcCodeStartAddresses,codeStartAddresses) \
+    ( (This)->lpVtbl -> GetNativeCodeStartAddresses(This,functionID,reJitId,cCodeStartAddresses,pcCodeStartAddresses,codeStartAddresses) ) 
+
+#define ICorProfilerInfo10_GetILToNativeMapping3(This,pNativeCodeStartAddress,cMap,pcMap,map)   \
+    ( (This)->lpVtbl -> GetILToNativeMapping3(This,pNativeCodeStartAddress,cMap,pcMap,map) ) 
+
+#define ICorProfilerInfo10_GetCodeInfo4(This,pNativeCodeStartAddress,cCodeInfos,pcCodeInfos,codeInfos)  \
+    ( (This)->lpVtbl -> GetCodeInfo4(This,pNativeCodeStartAddress,cCodeInfos,pcCodeInfos,codeInfos) ) 
+
+
+#define ICorProfilerInfo10_EnumerateObjectReferences(This,objectId,callback,clientData) \
+    ( (This)->lpVtbl -> EnumerateObjectReferences(This,objectId,callback,clientData) ) 
+
+#define ICorProfilerInfo10_IsFrozenObject(This,objectId,pbFrozen)   \
+    ( (This)->lpVtbl -> IsFrozenObject(This,objectId,pbFrozen) ) 
+
+#define ICorProfilerInfo10_GetLOHObjectSizeThreshold(This,pThreshold)   \
+    ( (This)->lpVtbl -> GetLOHObjectSizeThreshold(This,pThreshold) ) 
+
+#define ICorProfilerInfo10_RequestReJITWithInliners(This,dwRejitFlags,cFunctions,moduleIds,methodIds)   \
+    ( (This)->lpVtbl -> RequestReJITWithInliners(This,dwRejitFlags,cFunctions,moduleIds,methodIds) ) 
+
+#define ICorProfilerInfo10_SuspendRuntime(This) \
+    ( (This)->lpVtbl -> SuspendRuntime(This) ) 
+
+#define ICorProfilerInfo10_ResumeRuntime(This)  \
+    ( (This)->lpVtbl -> ResumeRuntime(This) ) 
 
 #endif /* COBJMACROS */
 
@@ -15408,58 +16153,88 @@ EXTERN_C const IID IID_ICorProfilerThreadEnum;
 
 
 
-#endif  /* __ICorProfilerThreadEnum_INTERFACE_DEFINED__ */
+#endif  /* __ICorProfilerInfo10_INTERFACE_DEFINED__ */
 
 
-#ifndef __ICorProfilerAssemblyReferenceProvider_INTERFACE_DEFINED__
-#define __ICorProfilerAssemblyReferenceProvider_INTERFACE_DEFINED__
+#ifndef __ICorProfilerMethodEnum_INTERFACE_DEFINED__
+#define __ICorProfilerMethodEnum_INTERFACE_DEFINED__
 
-/* interface ICorProfilerAssemblyReferenceProvider */
+/* interface ICorProfilerMethodEnum */
 /* [local][unique][uuid][object] */ 
 
 
-EXTERN_C const IID IID_ICorProfilerAssemblyReferenceProvider;
+EXTERN_C const IID IID_ICorProfilerMethodEnum;
 
 #if defined(__cplusplus) && !defined(CINTERFACE)
     
-    MIDL_INTERFACE("66A78C24-2EEF-4F65-B45F-DD1D8038BF3C")
-    ICorProfilerAssemblyReferenceProvider : public IUnknown
+    MIDL_INTERFACE("FCCEE788-0088-454B-A811-C99F298D1942")
+    ICorProfilerMethodEnum : public IUnknown
     {
     public:
-        virtual HRESULT STDMETHODCALLTYPE AddAssemblyReference( 
-            const COR_PRF_ASSEMBLY_REFERENCE_INFO *pAssemblyRefInfo) = 0;
+        virtual HRESULT STDMETHODCALLTYPE Skip( 
+            /* [in] */ ULONG celt) = 0;
+        
+        virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
+        
+        virtual HRESULT STDMETHODCALLTYPE Clone( 
+            /* [out] */ ICorProfilerMethodEnum **ppEnum) = 0;
+        
+        virtual HRESULT STDMETHODCALLTYPE GetCount( 
+            /* [out] */ ULONG *pcelt) = 0;
+        
+        virtual HRESULT STDMETHODCALLTYPE Next( 
+            /* [in] */ ULONG celt,
+            /* [length_is][size_is][out] */ COR_PRF_METHOD elements[  ],
+            /* [out] */ ULONG *pceltFetched) = 0;
         
     };
     
     
 #else   /* C style interface */
 
-    typedef struct ICorProfilerAssemblyReferenceProviderVtbl
+    typedef struct ICorProfilerMethodEnumVtbl
     {
         BEGIN_INTERFACE
         
         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            ICorProfilerAssemblyReferenceProvider * This,
+            ICorProfilerMethodEnum * This,
             /* [in] */ REFIID riid,
             /* [annotation][iid_is][out] */ 
             _COM_Outptr_  void **ppvObject);
         
         ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            ICorProfilerAssemblyReferenceProvider * This);
+            ICorProfilerMethodEnum * This);
         
         ULONG ( STDMETHODCALLTYPE *Release )( 
-            ICorProfilerAssemblyReferenceProvider * This);
+            ICorProfilerMethodEnum * This);
         
-        HRESULT ( STDMETHODCALLTYPE *AddAssemblyReference )( 
-            ICorProfilerAssemblyReferenceProvider * This,
-            const COR_PRF_ASSEMBLY_REFERENCE_INFO *pAssemblyRefInfo);
+        HRESULT ( STDMETHODCALLTYPE *Skip )( 
+            ICorProfilerMethodEnum * This,
+            /* [in] */ ULONG celt);
+        
+        HRESULT ( STDMETHODCALLTYPE *Reset )( 
+            ICorProfilerMethodEnum * This);
+        
+        HRESULT ( STDMETHODCALLTYPE *Clone )( 
+            ICorProfilerMethodEnum * This,
+            /* [out] */ ICorProfilerMethodEnum **ppEnum);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetCount )( 
+            ICorProfilerMethodEnum * This,
+            /* [out] */ ULONG *pcelt);
+        
+        HRESULT ( STDMETHODCALLTYPE *Next )( 
+            ICorProfilerMethodEnum * This,
+            /* [in] */ ULONG celt,
+            /* [length_is][size_is][out] */ COR_PRF_METHOD elements[  ],
+            /* [out] */ ULONG *pceltFetched);
         
         END_INTERFACE
-    } ICorProfilerAssemblyReferenceProviderVtbl;
+    } ICorProfilerMethodEnumVtbl;
 
-    interface ICorProfilerAssemblyReferenceProvider
+    interface ICorProfilerMethodEnum
     {
-        CONST_VTBL struct ICorProfilerAssemblyReferenceProviderVtbl *lpVtbl;
+        CONST_VTBL struct ICorProfilerMethodEnumVtbl *lpVtbl;
     };
 
     
@@ -15467,18 +16242,30 @@ EXTERN_C const IID IID_ICorProfilerAssemblyReferenceProvider;
 #ifdef COBJMACROS
 
 
-#define ICorProfilerAssemblyReferenceProvider_QueryInterface(This,riid,ppvObject)   \
+#define ICorProfilerMethodEnum_QueryInterface(This,riid,ppvObject)  \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define ICorProfilerAssemblyReferenceProvider_AddRef(This)  \
+#define ICorProfilerMethodEnum_AddRef(This) \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define ICorProfilerAssemblyReferenceProvider_Release(This) \
+#define ICorProfilerMethodEnum_Release(This)    \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ICorProfilerAssemblyReferenceProvider_AddAssemblyReference(This,pAssemblyRefInfo)   \
-    ( (This)->lpVtbl -> AddAssemblyReference(This,pAssemblyRefInfo) ) 
+#define ICorProfilerMethodEnum_Skip(This,celt)  \
+    ( (This)->lpVtbl -> Skip(This,celt) ) 
+
+#define ICorProfilerMethodEnum_Reset(This)  \
+    ( (This)->lpVtbl -> Reset(This) ) 
+
+#define ICorProfilerMethodEnum_Clone(This,ppEnum)   \
+    ( (This)->lpVtbl -> Clone(This,ppEnum) ) 
+
+#define ICorProfilerMethodEnum_GetCount(This,pcelt) \
+    ( (This)->lpVtbl -> GetCount(This,pcelt) ) 
+
+#define ICorProfilerMethodEnum_Next(This,celt,elements,pceltFetched)    \
+    ( (This)->lpVtbl -> Next(This,celt,elements,pceltFetched) ) 
 
 #endif /* COBJMACROS */
 
@@ -15488,68 +16275,88 @@ EXTERN_C const IID IID_ICorProfilerAssemblyReferenceProvider;
 
 
 
-#endif  /* __ICorProfilerAssemblyReferenceProvider_INTERFACE_DEFINED__ */
+#endif  /* __ICorProfilerMethodEnum_INTERFACE_DEFINED__ */
 
 
-#ifndef __ICLRProfiling_INTERFACE_DEFINED__
-#define __ICLRProfiling_INTERFACE_DEFINED__
+#ifndef __ICorProfilerThreadEnum_INTERFACE_DEFINED__
+#define __ICorProfilerThreadEnum_INTERFACE_DEFINED__
 
-/* interface ICLRProfiling */
-/* [object][local][helpstring][version][uuid] */ 
+/* interface ICorProfilerThreadEnum */
+/* [local][unique][uuid][object] */ 
 
 
-EXTERN_C const IID IID_ICLRProfiling;
+EXTERN_C const IID IID_ICorProfilerThreadEnum;
 
 #if defined(__cplusplus) && !defined(CINTERFACE)
     
-    MIDL_INTERFACE("B349ABE3-B56F-4689-BFCD-76BF39D888EA")
-    ICLRProfiling : public IUnknown
+    MIDL_INTERFACE("571194f7-25ed-419f-aa8b-7016b3159701")
+    ICorProfilerThreadEnum : public IUnknown
     {
     public:
-        virtual HRESULT STDMETHODCALLTYPE AttachProfiler( 
-            /* [in] */ DWORD dwProfileeProcessID,
-            /* [in] */ DWORD dwMillisecondsMax,
-            /* [in] */ const CLSID *pClsidProfiler,
-            /* [in] */ LPCWSTR wszProfilerPath,
-            /* [size_is][in] */ void *pvClientData,
-            /* [in] */ UINT cbClientData) = 0;
+        virtual HRESULT STDMETHODCALLTYPE Skip( 
+            /* [in] */ ULONG celt) = 0;
+        
+        virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
+        
+        virtual HRESULT STDMETHODCALLTYPE Clone( 
+            /* [out] */ ICorProfilerThreadEnum **ppEnum) = 0;
+        
+        virtual HRESULT STDMETHODCALLTYPE GetCount( 
+            /* [out] */ ULONG *pcelt) = 0;
+        
+        virtual HRESULT STDMETHODCALLTYPE Next( 
+            /* [in] */ ULONG celt,
+            /* [length_is][size_is][out] */ ThreadID ids[  ],
+            /* [out] */ ULONG *pceltFetched) = 0;
         
     };
     
     
 #else   /* C style interface */
 
-    typedef struct ICLRProfilingVtbl
+    typedef struct ICorProfilerThreadEnumVtbl
     {
         BEGIN_INTERFACE
         
         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            ICLRProfiling * This,
+            ICorProfilerThreadEnum * This,
             /* [in] */ REFIID riid,
             /* [annotation][iid_is][out] */ 
             _COM_Outptr_  void **ppvObject);
         
         ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            ICLRProfiling * This);
+            ICorProfilerThreadEnum * This);
         
         ULONG ( STDMETHODCALLTYPE *Release )( 
-            ICLRProfiling * This);
-        
-        HRESULT ( STDMETHODCALLTYPE *AttachProfiler )( 
-            ICLRProfiling * This,
-            /* [in] */ DWORD dwProfileeProcessID,
-            /* [in] */ DWORD dwMillisecondsMax,
-            /* [in] */ const CLSID *pClsidProfiler,
-            /* [in] */ LPCWSTR wszProfilerPath,
-            /* [size_is][in] */ void *pvClientData,
-            /* [in] */ UINT cbClientData);
+            ICorProfilerThreadEnum * This);
+        
+        HRESULT ( STDMETHODCALLTYPE *Skip )( 
+            ICorProfilerThreadEnum * This,
+            /* [in] */ ULONG celt);
+        
+        HRESULT ( STDMETHODCALLTYPE *Reset )( 
+            ICorProfilerThreadEnum * This);
+        
+        HRESULT ( STDMETHODCALLTYPE *Clone )( 
+            ICorProfilerThreadEnum * This,
+            /* [out] */ ICorProfilerThreadEnum **ppEnum);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetCount )( 
+            ICorProfilerThreadEnum * This,
+            /* [out] */ ULONG *pcelt);
+        
+        HRESULT ( STDMETHODCALLTYPE *Next )( 
+            ICorProfilerThreadEnum * This,
+            /* [in] */ ULONG celt,
+            /* [length_is][size_is][out] */ ThreadID ids[  ],
+            /* [out] */ ULONG *pceltFetched);
         
         END_INTERFACE
-    } ICLRProfilingVtbl;
+    } ICorProfilerThreadEnumVtbl;
 
-    interface ICLRProfiling
+    interface ICorProfilerThreadEnum
     {
-        CONST_VTBL struct ICLRProfilingVtbl *lpVtbl;
+        CONST_VTBL struct ICorProfilerThreadEnumVtbl *lpVtbl;
     };
 
     
@@ -15557,18 +16364,30 @@ EXTERN_C const IID IID_ICLRProfiling;
 #ifdef COBJMACROS
 
 
-#define ICLRProfiling_QueryInterface(This,riid,ppvObject)   \
+#define ICorProfilerThreadEnum_QueryInterface(This,riid,ppvObject)  \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define ICLRProfiling_AddRef(This)  \
+#define ICorProfilerThreadEnum_AddRef(This) \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define ICLRProfiling_Release(This) \
+#define ICorProfilerThreadEnum_Release(This)    \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ICLRProfiling_AttachProfiler(This,dwProfileeProcessID,dwMillisecondsMax,pClsidProfiler,wszProfilerPath,pvClientData,cbClientData)   \
-    ( (This)->lpVtbl -> AttachProfiler(This,dwProfileeProcessID,dwMillisecondsMax,pClsidProfiler,wszProfilerPath,pvClientData,cbClientData) ) 
+#define ICorProfilerThreadEnum_Skip(This,celt)  \
+    ( (This)->lpVtbl -> Skip(This,celt) ) 
+
+#define ICorProfilerThreadEnum_Reset(This)  \
+    ( (This)->lpVtbl -> Reset(This) ) 
+
+#define ICorProfilerThreadEnum_Clone(This,ppEnum)   \
+    ( (This)->lpVtbl -> Clone(This,ppEnum) ) 
+
+#define ICorProfilerThreadEnum_GetCount(This,pcelt) \
+    ( (This)->lpVtbl -> GetCount(This,pcelt) ) 
+
+#define ICorProfilerThreadEnum_Next(This,celt,ids,pceltFetched) \
+    ( (This)->lpVtbl -> Next(This,celt,ids,pceltFetched) ) 
 
 #endif /* COBJMACROS */
 
@@ -15578,68 +16397,58 @@ EXTERN_C const IID IID_ICLRProfiling;
 
 
 
-#endif  /* __ICLRProfiling_INTERFACE_DEFINED__ */
+#endif  /* __ICorProfilerThreadEnum_INTERFACE_DEFINED__ */
 
 
-#ifndef __ICLRProfiling_INTERFACE_DEFINED__
-#define __ICLRProfiling_INTERFACE_DEFINED__
+#ifndef __ICorProfilerAssemblyReferenceProvider_INTERFACE_DEFINED__
+#define __ICorProfilerAssemblyReferenceProvider_INTERFACE_DEFINED__
 
-/* interface ICLRProfiling */
-/* [object][local][helpstring][version][uuid] */ 
+/* interface ICorProfilerAssemblyReferenceProvider */
+/* [local][unique][uuid][object] */ 
 
 
-EXTERN_C const IID IID_ICLRProfiling;
+EXTERN_C const IID IID_ICorProfilerAssemblyReferenceProvider;
 
 #if defined(__cplusplus) && !defined(CINTERFACE)
     
-    MIDL_INTERFACE("B349ABE3-B56F-4689-BFCD-76BF39D888EA")
-    ICLRProfiling : public IUnknown
+    MIDL_INTERFACE("66A78C24-2EEF-4F65-B45F-DD1D8038BF3C")
+    ICorProfilerAssemblyReferenceProvider : public IUnknown
     {
     public:
-        virtual HRESULT STDMETHODCALLTYPE AttachProfiler( 
-            /* [in] */ DWORD dwProfileeProcessID,
-            /* [in] */ DWORD dwMillisecondsMax,
-            /* [in] */ const CLSID *pClsidProfiler,
-            /* [in] */ LPCWSTR wszProfilerPath,
-            /* [size_is][in] */ void *pvClientData,
-            /* [in] */ UINT cbClientData) = 0;
+        virtual HRESULT STDMETHODCALLTYPE AddAssemblyReference( 
+            const COR_PRF_ASSEMBLY_REFERENCE_INFO *pAssemblyRefInfo) = 0;
         
     };
     
     
-#else  /* C style interface */
+#else   /* C style interface */
 
-    typedef struct ICLRProfilingVtbl
+    typedef struct ICorProfilerAssemblyReferenceProviderVtbl
     {
         BEGIN_INTERFACE
         
         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            ICLRProfiling * This,
+            ICorProfilerAssemblyReferenceProvider * This,
             /* [in] */ REFIID riid,
             /* [annotation][iid_is][out] */ 
             _COM_Outptr_  void **ppvObject);
         
         ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            ICLRProfiling * This);
+            ICorProfilerAssemblyReferenceProvider * This);
         
         ULONG ( STDMETHODCALLTYPE *Release )( 
-            ICLRProfiling * This);
-        
-        HRESULT ( STDMETHODCALLTYPE *AttachProfiler )( 
-            ICLRProfiling * This,
-            /* [in] */ DWORD dwProfileeProcessID,
-            /* [in] */ DWORD dwMillisecondsMax,
-            /* [in] */ const CLSID *pClsidProfiler,
-            /* [in] */ LPCWSTR wszProfilerPath,
-            /* [size_is][in] */ void *pvClientData,
-            /* [in] */ UINT cbClientData);
+            ICorProfilerAssemblyReferenceProvider * This);
+        
+        HRESULT ( STDMETHODCALLTYPE *AddAssemblyReference )( 
+            ICorProfilerAssemblyReferenceProvider * This,
+            const COR_PRF_ASSEMBLY_REFERENCE_INFO *pAssemblyRefInfo);
         
         END_INTERFACE
-    } ICLRProfilingVtbl;
+    } ICorProfilerAssemblyReferenceProviderVtbl;
 
-    interface ICLRProfiling
+    interface ICorProfilerAssemblyReferenceProvider
     {
-        CONST_VTBL struct ICLRProfilingVtbl *lpVtbl;
+        CONST_VTBL struct ICorProfilerAssemblyReferenceProviderVtbl *lpVtbl;
     };
 
     
@@ -15647,28 +16456,28 @@ EXTERN_C const IID IID_ICLRProfiling;
 #ifdef COBJMACROS
 
 
-#define ICLRProfiling_QueryInterface(This,riid,ppvObject)      \
+#define ICorProfilerAssemblyReferenceProvider_QueryInterface(This,riid,ppvObject)   \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define ICLRProfiling_AddRef(This)     \
+#define ICorProfilerAssemblyReferenceProvider_AddRef(This)  \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define ICLRProfiling_Release(This)    \
+#define ICorProfilerAssemblyReferenceProvider_Release(This) \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ICLRProfiling_AttachProfiler(This,dwProfileeProcessID,dwMillisecondsMax,pClsidProfiler,wszProfilerPath,pvClientData,cbClientData)      \
-    ( (This)->lpVtbl -> AttachProfiler(This,dwProfileeProcessID,dwMillisecondsMax,pClsidProfiler,wszProfilerPath,pvClientData,cbClientData) ) 
+#define ICorProfilerAssemblyReferenceProvider_AddAssemblyReference(This,pAssemblyRefInfo)   \
+    ( (This)->lpVtbl -> AddAssemblyReference(This,pAssemblyRefInfo) ) 
 
 #endif /* COBJMACROS */
 
 
-#endif         /* C style interface */
+#endif  /* C style interface */
 
 
 
 
-#endif         /* __ICLRProfiling_INTERFACE_DEFINED__ */
+#endif  /* __ICorProfilerAssemblyReferenceProvider_INTERFACE_DEFINED__ */
 
 
 /* Additional Prototypes for ALL interfaces */
diff --git a/src/pal/prebuilt/inc/gchost.h b/src/pal/prebuilt/inc/gchost.h
deleted file mode 100644 (file)
index c9e4fff..0000000
+++ /dev/null
@@ -1,166 +0,0 @@
-// Licensed to the .NET Foundation under one or more agreements.
-// The .NET Foundation licenses this file to you under the MIT license.
-// See the LICENSE file in the project root for more information.
-
-
-
-/* this ALWAYS GENERATED file contains the definitions for the interfaces */
-
-
- /* File created by MIDL compiler version 8.00.0603 */
-/* @@MIDL_FILE_HEADING(  ) */
-
-#pragma warning( disable: 4049 )  /* more than 64k source lines */
-
-
-/* verify that the <rpcndr.h> version is high enough to compile this file*/
-#ifndef __REQUIRED_RPCNDR_H_VERSION__
-#define __REQUIRED_RPCNDR_H_VERSION__ 475
-#endif
-
-#include "rpc.h"
-#include "rpcndr.h"
-
-#ifndef __RPCNDR_H_VERSION__
-#error this stub requires an updated version of <rpcndr.h>
-#endif // __RPCNDR_H_VERSION__
-
-#ifndef COM_NO_WINDOWS_H
-#include "windows.h"
-#include "ole2.h"
-#endif /*COM_NO_WINDOWS_H*/
-
-#ifndef __gchost_h__
-#define __gchost_h__
-
-#if defined(_MSC_VER) && (_MSC_VER >= 1020)
-#pragma once
-#endif
-
-/* Forward Declarations */ 
-
-#ifndef __IDummyDoNotUse_FWD_DEFINED__
-#define __IDummyDoNotUse_FWD_DEFINED__
-typedef interface IDummyDoNotUse IDummyDoNotUse;
-
-#endif         /* __IDummyDoNotUse_FWD_DEFINED__ */
-
-
-/* header files for imported files */
-#include "unknwn.h"
-
-#ifdef __cplusplus
-extern "C"{
-#endif 
-
-
-/* interface __MIDL_itf_gchost_0000_0000 */
-/* [local] */ 
-
-typedef struct _COR_GC_STATS
-    {
-    ULONG Flags;
-    SIZE_T ExplicitGCCount;
-    SIZE_T GenCollectionsTaken[ 3 ];
-    SIZE_T CommittedKBytes;
-    SIZE_T ReservedKBytes;
-    SIZE_T Gen0HeapSizeKBytes;
-    SIZE_T Gen1HeapSizeKBytes;
-    SIZE_T Gen2HeapSizeKBytes;
-    SIZE_T LargeObjectHeapSizeKBytes;
-    SIZE_T KBytesPromotedFromGen0;
-    SIZE_T KBytesPromotedFromGen1;
-    }  COR_GC_STATS;
-
-/*
- * WARNING - This is a dummy interface that should never be used.
- * The code is written this way because Midl requires a CoClass, Interface, etc... that generates
- * a guid.  Removing the IGCHost interface removes the only guid
- * This option was selected because ifdefs are not simple to implement for excluding files in SOURCES
-*/
-
-
-extern RPC_IF_HANDLE __MIDL_itf_gchost_0000_0000_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_gchost_0000_0000_v0_0_s_ifspec;
-
-#ifndef __IDummyDoNotUse_INTERFACE_DEFINED__
-#define __IDummyDoNotUse_INTERFACE_DEFINED__
-
-/* interface IDummyDoNotUse */
-/* [local][unique][uuid][object] */ 
-
-
-EXTERN_C const IID IID_IDummyDoNotUse;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-    
-    MIDL_INTERFACE("F9423916-2A35-4f03-9EE9-DDAFA3C8AEE0")
-    IDummyDoNotUse : public IUnknown
-    {
-    public:
-    };
-    
-    
-#else  /* C style interface */
-
-    typedef struct IDummyDoNotUseVtbl
-    {
-        BEGIN_INTERFACE
-        
-        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            IDummyDoNotUse * This,
-            /* [in] */ REFIID riid,
-            /* [annotation][iid_is][out] */ 
-            _COM_Outptr_  void **ppvObject);
-        
-        ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            IDummyDoNotUse * This);
-        
-        ULONG ( STDMETHODCALLTYPE *Release )( 
-            IDummyDoNotUse * This);
-        
-        END_INTERFACE
-    } IDummyDoNotUseVtbl;
-
-    interface IDummyDoNotUse
-    {
-        CONST_VTBL struct IDummyDoNotUseVtbl *lpVtbl;
-    };
-
-    
-
-#ifdef COBJMACROS
-
-
-#define IDummyDoNotUse_QueryInterface(This,riid,ppvObject)     \
-    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
-
-#define IDummyDoNotUse_AddRef(This)    \
-    ( (This)->lpVtbl -> AddRef(This) ) 
-
-#define IDummyDoNotUse_Release(This)   \
-    ( (This)->lpVtbl -> Release(This) ) 
-
-
-#endif /* COBJMACROS */
-
-
-#endif         /* C style interface */
-
-
-
-
-#endif         /* __IDummyDoNotUse_INTERFACE_DEFINED__ */
-
-
-/* Additional Prototypes for ALL interfaces */
-
-/* end of Additional Prototypes */
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
-
-
index aa6c78c944c6110e9994fec22e87e954ed6ac82c..aae25d70db1b2bb8b155e4ded09e3897451ddd73 100644 (file)
@@ -6,7 +6,7 @@
  /* File created by MIDL compiler version 8.01.0622 */
 /* at Mon Jan 18 19:14:07 2038
  */
-/* Compiler settings for C:/ssd/coreclr/src/inc/metahost.idl:
+/* Compiler settings for metahost.idl:
     Oicf, W1, Zp8, env=Win32 (32b run), target_arch=X86 8.01.0622 
     protocol : dce , ms_ext, c_ext, robust
     error checks: allocation ref bounds_check enum stub_data 
@@ -52,13 +52,6 @@ typedef interface ICLRMetaHost ICLRMetaHost;
 #endif         /* __ICLRMetaHost_FWD_DEFINED__ */
 
 
-#ifndef __ICLRMetaHostPolicy_FWD_DEFINED__
-#define __ICLRMetaHostPolicy_FWD_DEFINED__
-typedef interface ICLRMetaHostPolicy ICLRMetaHostPolicy;
-
-#endif         /* __ICLRMetaHostPolicy_FWD_DEFINED__ */
-
-
 #ifndef __ICLRDebuggingLibraryProvider_FWD_DEFINED__
 #define __ICLRDebuggingLibraryProvider_FWD_DEFINED__
 typedef interface ICLRDebuggingLibraryProvider ICLRDebuggingLibraryProvider;
@@ -87,69 +80,6 @@ typedef interface ICLRRuntimeInfo ICLRRuntimeInfo;
 #endif         /* __ICLRRuntimeInfo_FWD_DEFINED__ */
 
 
-#ifndef __ICLRStrongName_FWD_DEFINED__
-#define __ICLRStrongName_FWD_DEFINED__
-typedef interface ICLRStrongName ICLRStrongName;
-
-#endif         /* __ICLRStrongName_FWD_DEFINED__ */
-
-
-#ifndef __ICLRStrongName2_FWD_DEFINED__
-#define __ICLRStrongName2_FWD_DEFINED__
-typedef interface ICLRStrongName2 ICLRStrongName2;
-
-#endif         /* __ICLRStrongName2_FWD_DEFINED__ */
-
-
-#ifndef __ICLRStrongName3_FWD_DEFINED__
-#define __ICLRStrongName3_FWD_DEFINED__
-typedef interface ICLRStrongName3 ICLRStrongName3;
-
-#endif         /* __ICLRStrongName3_FWD_DEFINED__ */
-
-
-#ifndef __ICLRMetaHost_FWD_DEFINED__
-#define __ICLRMetaHost_FWD_DEFINED__
-typedef interface ICLRMetaHost ICLRMetaHost;
-
-#endif         /* __ICLRMetaHost_FWD_DEFINED__ */
-
-
-#ifndef __ICLRMetaHostPolicy_FWD_DEFINED__
-#define __ICLRMetaHostPolicy_FWD_DEFINED__
-typedef interface ICLRMetaHostPolicy ICLRMetaHostPolicy;
-
-#endif         /* __ICLRMetaHostPolicy_FWD_DEFINED__ */
-
-
-#ifndef __ICLRDebuggingLibraryProvider_FWD_DEFINED__
-#define __ICLRDebuggingLibraryProvider_FWD_DEFINED__
-typedef interface ICLRDebuggingLibraryProvider ICLRDebuggingLibraryProvider;
-
-#endif         /* __ICLRDebuggingLibraryProvider_FWD_DEFINED__ */
-
-
-#ifndef __ICLRDebugging_FWD_DEFINED__
-#define __ICLRDebugging_FWD_DEFINED__
-typedef interface ICLRDebugging ICLRDebugging;
-
-#endif         /* __ICLRDebugging_FWD_DEFINED__ */
-
-
-#ifndef __ICLRRuntimeInfo_FWD_DEFINED__
-#define __ICLRRuntimeInfo_FWD_DEFINED__
-typedef interface ICLRRuntimeInfo ICLRRuntimeInfo;
-
-#endif         /* __ICLRRuntimeInfo_FWD_DEFINED__ */
-
-
-#ifndef __ICLRStrongName_FWD_DEFINED__
-#define __ICLRStrongName_FWD_DEFINED__
-typedef interface ICLRStrongName ICLRStrongName;
-
-#endif         /* __ICLRStrongName_FWD_DEFINED__ */
-
-
 /* header files for imported files */
 #include "unknwn.h"
 #include "oaidl.h"
@@ -165,33 +95,14 @@ extern "C"{
 /* [local] */ 
 
 #include <winapifamily.h>
-#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
 STDAPI CLRCreateInstance(REFCLSID clsid, REFIID riid, /*iid_is(riid)*/ LPVOID *ppInterface);
-EXTERN_GUID(CLSID_CLRStrongName, 0xB79B0ACD, 0xF5CD, 0x409b, 0xB5, 0xA5, 0xA1, 0x62, 0x44, 0x61, 0x0B, 0x92);
 EXTERN_GUID(IID_ICLRMetaHost, 0xD332DB9E, 0xB9B3, 0x4125, 0x82, 0x07, 0xA1, 0x48, 0x84, 0xF5, 0x32, 0x16);
 EXTERN_GUID(CLSID_CLRMetaHost, 0x9280188d, 0xe8e, 0x4867, 0xb3, 0xc, 0x7f, 0xa8, 0x38, 0x84, 0xe8, 0xde);
-EXTERN_GUID(IID_ICLRMetaHostPolicy, 0xE2190695, 0x77B2, 0x492e, 0x8E, 0x14, 0xC4, 0xB3, 0xA7, 0xFD, 0xD5, 0x93);
-EXTERN_GUID(CLSID_CLRMetaHostPolicy, 0x2ebcd49a, 0x1b47, 0x4a61, 0xb1, 0x3a, 0x4a, 0x3, 0x70, 0x1e, 0x59, 0x4b);
 EXTERN_GUID(IID_ICLRDebugging, 0xd28f3c5a, 0x9634, 0x4206, 0xa5, 0x9, 0x47, 0x75, 0x52, 0xee, 0xfb, 0x10);
 EXTERN_GUID(CLSID_CLRDebugging, 0xbacc578d, 0xfbdd, 0x48a4, 0x96, 0x9f, 0x2, 0xd9, 0x32, 0xb7, 0x46, 0x34);
 EXTERN_GUID(IID_ICLRRuntimeInfo, 0xBD39D1D2, 0xBA2F, 0x486a, 0x89, 0xB0, 0xB4, 0xB0, 0xCB, 0x46, 0x68, 0x91);
-EXTERN_GUID(IID_ICLRStrongName, 0x9FD93CCF, 0x3280, 0x4391, 0xB3, 0xA9, 0x96, 0xE1, 0xCD, 0xE7, 0x7C, 0x8D);
-EXTERN_GUID(IID_ICLRStrongName2, 0xC22ED5C5, 0x4B59, 0x4975, 0x90, 0xEB, 0x85, 0xEA, 0x55, 0xC0, 0x06, 0x9B);
-EXTERN_GUID(IID_ICLRStrongName3, 0x22c7089b, 0xbbd3, 0x414a, 0xb6, 0x98, 0x21, 0x0f, 0x26, 0x3f, 0x1f, 0xed);
-EXTERN_GUID(CLSID_CLRDebuggingLegacy, 0xDF8395B5, 0xA4BA, 0x450b, 0xA7, 0x7C, 0xA9, 0xA4, 0x77, 0x62, 0xC5, 0x20);
-EXTERN_GUID(CLSID_CLRProfiling, 0xbd097ed8, 0x733e, 0x43fe, 0x8e, 0xd7, 0xa9, 0x5f, 0xf9, 0xa8, 0x44, 0x8c);
 EXTERN_GUID(IID_ICLRDebuggingLibraryProvider, 0x3151c08d, 0x4d09, 0x4f9b, 0x88, 0x38, 0x28, 0x80, 0xbf, 0x18, 0xfe, 0x51);
 EXTERN_GUID(IID_ICLRDebuggingLibraryProvider2, 0xE04E2FF1, 0xDCFD, 0x45D5, 0xBC, 0xD1, 0x16, 0xFF, 0xF2, 0xFA, 0xF7, 0xBA);
-typedef HRESULT ( __stdcall *CLRCreateInstanceFnPtr )( 
-    REFCLSID clsid,
-    REFIID riid,
-    LPVOID *ppInterface);
-
-typedef HRESULT ( __stdcall *CreateInterfaceFnPtr )( 
-    REFCLSID clsid,
-    REFIID riid,
-    LPVOID *ppInterface);
-
 
 typedef HRESULT ( __stdcall *CallbackThreadSetFnPtr )( void);
 
@@ -364,137 +275,6 @@ EXTERN_C const IID IID_ICLRMetaHost;
 /* interface __MIDL_itf_metahost_0000_0001 */
 /* [local] */ 
 
-typedef /* [public][public] */ 
-enum __MIDL___MIDL_itf_metahost_0000_0001_0001
-    {
-        METAHOST_POLICY_HIGHCOMPAT     = 0,
-        METAHOST_POLICY_APPLY_UPGRADE_POLICY   = 0x8,
-        METAHOST_POLICY_EMULATE_EXE_LAUNCH     = 0x10,
-        METAHOST_POLICY_SHOW_ERROR_DIALOG      = 0x20,
-        METAHOST_POLICY_USE_PROCESS_IMAGE_PATH = 0x40,
-        METAHOST_POLICY_ENSURE_SKU_SUPPORTED   = 0x80,
-        METAHOST_POLICY_IGNORE_ERROR_MODE      = 0x1000
-    }  METAHOST_POLICY_FLAGS;
-
-typedef /* [public] */ 
-enum __MIDL___MIDL_itf_metahost_0000_0001_0002
-    {
-        METAHOST_CONFIG_FLAGS_LEGACY_V2_ACTIVATION_POLICY_UNSET        = 0,
-        METAHOST_CONFIG_FLAGS_LEGACY_V2_ACTIVATION_POLICY_TRUE = 0x1,
-        METAHOST_CONFIG_FLAGS_LEGACY_V2_ACTIVATION_POLICY_FALSE        = 0x2,
-        METAHOST_CONFIG_FLAGS_LEGACY_V2_ACTIVATION_POLICY_MASK = 0x3
-    }  METAHOST_CONFIG_FLAGS;
-
-
-
-extern RPC_IF_HANDLE __MIDL_itf_metahost_0000_0001_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_metahost_0000_0001_v0_0_s_ifspec;
-
-#ifndef __ICLRMetaHostPolicy_INTERFACE_DEFINED__
-#define __ICLRMetaHostPolicy_INTERFACE_DEFINED__
-
-/* interface ICLRMetaHostPolicy */
-/* [object][local][helpstring][version][uuid] */ 
-
-
-EXTERN_C const IID IID_ICLRMetaHostPolicy;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-    
-    MIDL_INTERFACE("E2190695-77B2-492e-8E14-C4B3A7FDD593")
-    ICLRMetaHostPolicy : public IUnknown
-    {
-    public:
-        virtual HRESULT STDMETHODCALLTYPE GetRequestedRuntime( 
-            /* [in] */ METAHOST_POLICY_FLAGS dwPolicyFlags,
-            /* [in] */ LPCWSTR pwzBinary,
-            /* [in] */ IStream *pCfgStream,
-            /* [annotation][size_is][out][in] */ 
-            _Inout_updates_all_opt_(*pcchVersion)  LPWSTR pwzVersion,
-            /* [out][in] */ DWORD *pcchVersion,
-            /* [annotation][size_is][out] */ 
-            _Out_writes_all_opt_(*pcchImageVersion)  LPWSTR pwzImageVersion,
-            /* [out][in] */ DWORD *pcchImageVersion,
-            /* [out] */ DWORD *pdwConfigFlags,
-            /* [in] */ REFIID riid,
-            /* [retval][iid_is][out] */ LPVOID *ppRuntime) = 0;
-        
-    };
-    
-    
-#else  /* C style interface */
-
-    typedef struct ICLRMetaHostPolicyVtbl
-    {
-        BEGIN_INTERFACE
-        
-        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            ICLRMetaHostPolicy * This,
-            /* [in] */ REFIID riid,
-            /* [annotation][iid_is][out] */ 
-            _COM_Outptr_  void **ppvObject);
-        
-        ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            ICLRMetaHostPolicy * This);
-        
-        ULONG ( STDMETHODCALLTYPE *Release )( 
-            ICLRMetaHostPolicy * This);
-        
-        HRESULT ( STDMETHODCALLTYPE *GetRequestedRuntime )( 
-            ICLRMetaHostPolicy * This,
-            /* [in] */ METAHOST_POLICY_FLAGS dwPolicyFlags,
-            /* [in] */ LPCWSTR pwzBinary,
-            /* [in] */ IStream *pCfgStream,
-            /* [annotation][size_is][out][in] */ 
-            _Inout_updates_all_opt_(*pcchVersion)  LPWSTR pwzVersion,
-            /* [out][in] */ DWORD *pcchVersion,
-            /* [annotation][size_is][out] */ 
-            _Out_writes_all_opt_(*pcchImageVersion)  LPWSTR pwzImageVersion,
-            /* [out][in] */ DWORD *pcchImageVersion,
-            /* [out] */ DWORD *pdwConfigFlags,
-            /* [in] */ REFIID riid,
-            /* [retval][iid_is][out] */ LPVOID *ppRuntime);
-        
-        END_INTERFACE
-    } ICLRMetaHostPolicyVtbl;
-
-    interface ICLRMetaHostPolicy
-    {
-        CONST_VTBL struct ICLRMetaHostPolicyVtbl *lpVtbl;
-    };
-
-    
-
-#ifdef COBJMACROS
-
-
-#define ICLRMetaHostPolicy_QueryInterface(This,riid,ppvObject) \
-    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
-
-#define ICLRMetaHostPolicy_AddRef(This)        \
-    ( (This)->lpVtbl -> AddRef(This) ) 
-
-#define ICLRMetaHostPolicy_Release(This)       \
-    ( (This)->lpVtbl -> Release(This) ) 
-
-
-#define ICLRMetaHostPolicy_GetRequestedRuntime(This,dwPolicyFlags,pwzBinary,pCfgStream,pwzVersion,pcchVersion,pwzImageVersion,pcchImageVersion,pdwConfigFlags,riid,ppRuntime)  \
-    ( (This)->lpVtbl -> GetRequestedRuntime(This,dwPolicyFlags,pwzBinary,pCfgStream,pwzVersion,pcchVersion,pwzImageVersion,pcchImageVersion,pdwConfigFlags,riid,ppRuntime) ) 
-
-#endif /* COBJMACROS */
-
-
-#endif         /* C style interface */
-
-
-
-
-#endif         /* __ICLRMetaHostPolicy_INTERFACE_DEFINED__ */
-
-
-/* interface __MIDL_itf_metahost_0000_0003 */
-/* [local] */ 
-
 typedef struct _CLR_DEBUGGING_VERSION
     {
     WORD wStructVersion;
@@ -505,7 +285,7 @@ typedef struct _CLR_DEBUGGING_VERSION
     }  CLR_DEBUGGING_VERSION;
 
 typedef /* [public][public] */ 
-enum __MIDL___MIDL_itf_metahost_0000_0003_0001
+enum __MIDL___MIDL_itf_metahost_0000_0001_0001
     {
         CLR_DEBUGGING_MANAGED_EVENT_PENDING    = 1,
         CLR_DEBUGGING_MANAGED_EVENT_DEBUGGER_LAUNCH    = 2
@@ -513,8 +293,8 @@ enum __MIDL___MIDL_itf_metahost_0000_0003_0001
 
 
 
-extern RPC_IF_HANDLE __MIDL_itf_metahost_0000_0003_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_metahost_0000_0003_v0_0_s_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_metahost_0000_0001_v0_0_c_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_metahost_0000_0001_v0_0_s_ifspec;
 
 #ifndef __ICLRDebuggingLibraryProvider_INTERFACE_DEFINED__
 #define __ICLRDebuggingLibraryProvider_INTERFACE_DEFINED__
@@ -1016,739 +796,6 @@ EXTERN_C const IID IID_ICLRRuntimeInfo;
 #endif         /* __ICLRRuntimeInfo_INTERFACE_DEFINED__ */
 
 
-#ifndef __ICLRStrongName_INTERFACE_DEFINED__
-#define __ICLRStrongName_INTERFACE_DEFINED__
-
-/* interface ICLRStrongName */
-/* [object][local][helpstring][version][uuid] */ 
-
-
-EXTERN_C const IID IID_ICLRStrongName;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-    
-    MIDL_INTERFACE("9FD93CCF-3280-4391-B3A9-96E1CDE77C8D")
-    ICLRStrongName : public IUnknown
-    {
-    public:
-        virtual HRESULT STDMETHODCALLTYPE GetHashFromAssemblyFile( 
-            /* [in] */ LPCSTR pszFilePath,
-            /* [out][in] */ unsigned int *piHashAlg,
-            /* [length_is][size_is][out] */ BYTE *pbHash,
-            /* [in] */ DWORD cchHash,
-            /* [out] */ DWORD *pchHash) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE GetHashFromAssemblyFileW( 
-            /* [in] */ LPCWSTR pwzFilePath,
-            /* [out][in] */ unsigned int *piHashAlg,
-            /* [length_is][size_is][out] */ BYTE *pbHash,
-            /* [in] */ DWORD cchHash,
-            /* [out] */ DWORD *pchHash) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE GetHashFromBlob( 
-            /* [in] */ BYTE *pbBlob,
-            /* [in] */ DWORD cchBlob,
-            /* [out][in] */ unsigned int *piHashAlg,
-            /* [length_is][size_is][out] */ BYTE *pbHash,
-            /* [in] */ DWORD cchHash,
-            /* [out] */ DWORD *pchHash) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE GetHashFromFile( 
-            /* [in] */ LPCSTR pszFilePath,
-            /* [out][in] */ unsigned int *piHashAlg,
-            /* [length_is][size_is][out] */ BYTE *pbHash,
-            /* [in] */ DWORD cchHash,
-            /* [out] */ DWORD *pchHash) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE GetHashFromFileW( 
-            /* [in] */ LPCWSTR pwzFilePath,
-            /* [out][in] */ unsigned int *piHashAlg,
-            /* [length_is][size_is][out] */ BYTE *pbHash,
-            /* [in] */ DWORD cchHash,
-            /* [out] */ DWORD *pchHash) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE GetHashFromHandle( 
-            /* [in] */ HANDLE hFile,
-            /* [out][in] */ unsigned int *piHashAlg,
-            /* [length_is][size_is][out] */ BYTE *pbHash,
-            /* [in] */ DWORD cchHash,
-            /* [out] */ DWORD *pchHash) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE StrongNameCompareAssemblies( 
-            /* [in] */ LPCWSTR pwzAssembly1,
-            /* [in] */ LPCWSTR pwzAssembly2,
-            /* [retval][out] */ DWORD *pdwResult) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE StrongNameFreeBuffer( 
-            /* [in] */ BYTE *pbMemory) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE StrongNameGetBlob( 
-            /* [in] */ LPCWSTR pwzFilePath,
-            /* [length_is][size_is][out][in] */ BYTE *pbBlob,
-            /* [out][in] */ DWORD *pcbBlob) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE StrongNameGetBlobFromImage( 
-            /* [size_is][in] */ BYTE *pbBase,
-            /* [in] */ DWORD dwLength,
-            /* [length_is][size_is][out] */ BYTE *pbBlob,
-            /* [out][in] */ DWORD *pcbBlob) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE StrongNameGetPublicKey( 
-            /* [in] */ LPCWSTR pwzKeyContainer,
-            /* [in] */ BYTE *pbKeyBlob,
-            /* [in] */ ULONG cbKeyBlob,
-            /* [out] */ BYTE **ppbPublicKeyBlob,
-            /* [out] */ ULONG *pcbPublicKeyBlob) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE StrongNameHashSize( 
-            /* [in] */ ULONG ulHashAlg,
-            /* [retval][out] */ DWORD *pcbSize) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE StrongNameKeyDelete( 
-            /* [in] */ LPCWSTR pwzKeyContainer) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE StrongNameKeyGen( 
-            /* [in] */ LPCWSTR pwzKeyContainer,
-            /* [in] */ DWORD dwFlags,
-            /* [out] */ BYTE **ppbKeyBlob,
-            /* [out] */ ULONG *pcbKeyBlob) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE StrongNameKeyGenEx( 
-            /* [in] */ LPCWSTR pwzKeyContainer,
-            /* [in] */ DWORD dwFlags,
-            /* [in] */ DWORD dwKeySize,
-            /* [out] */ BYTE **ppbKeyBlob,
-            /* [out] */ ULONG *pcbKeyBlob) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE StrongNameKeyInstall( 
-            /* [in] */ LPCWSTR pwzKeyContainer,
-            /* [in] */ BYTE *pbKeyBlob,
-            /* [in] */ ULONG cbKeyBlob) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE StrongNameSignatureGeneration( 
-            /* [in] */ LPCWSTR pwzFilePath,
-            /* [in] */ LPCWSTR pwzKeyContainer,
-            /* [in] */ BYTE *pbKeyBlob,
-            /* [in] */ ULONG cbKeyBlob,
-            /* [out] */ BYTE **ppbSignatureBlob,
-            /* [out] */ ULONG *pcbSignatureBlob) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE StrongNameSignatureGenerationEx( 
-            /* [in] */ LPCWSTR wszFilePath,
-            /* [in] */ LPCWSTR wszKeyContainer,
-            /* [in] */ BYTE *pbKeyBlob,
-            /* [in] */ ULONG cbKeyBlob,
-            /* [out] */ BYTE **ppbSignatureBlob,
-            /* [out] */ ULONG *pcbSignatureBlob,
-            /* [in] */ DWORD dwFlags) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE StrongNameSignatureSize( 
-            /* [in] */ BYTE *pbPublicKeyBlob,
-            /* [in] */ ULONG cbPublicKeyBlob,
-            /* [in] */ DWORD *pcbSize) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE StrongNameSignatureVerification( 
-            /* [in] */ LPCWSTR pwzFilePath,
-            /* [in] */ DWORD dwInFlags,
-            /* [retval][out] */ DWORD *pdwOutFlags) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE StrongNameSignatureVerificationEx( 
-            /* [in] */ LPCWSTR pwzFilePath,
-            /* [in] */ BOOLEAN fForceVerification,
-            /* [retval][out] */ BOOLEAN *pfWasVerified) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE StrongNameSignatureVerificationFromImage( 
-            /* [in] */ BYTE *pbBase,
-            /* [in] */ DWORD dwLength,
-            /* [in] */ DWORD dwInFlags,
-            /* [retval][out] */ DWORD *pdwOutFlags) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE StrongNameTokenFromAssembly( 
-            /* [in] */ LPCWSTR pwzFilePath,
-            /* [out] */ BYTE **ppbStrongNameToken,
-            /* [out] */ ULONG *pcbStrongNameToken) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE StrongNameTokenFromAssemblyEx( 
-            /* [in] */ LPCWSTR pwzFilePath,
-            /* [out] */ BYTE **ppbStrongNameToken,
-            /* [out] */ ULONG *pcbStrongNameToken,
-            /* [out] */ BYTE **ppbPublicKeyBlob,
-            /* [out] */ ULONG *pcbPublicKeyBlob) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE StrongNameTokenFromPublicKey( 
-            /* [in] */ BYTE *pbPublicKeyBlob,
-            /* [in] */ ULONG cbPublicKeyBlob,
-            /* [out] */ BYTE **ppbStrongNameToken,
-            /* [out] */ ULONG *pcbStrongNameToken) = 0;
-        
-    };
-    
-    
-#else  /* C style interface */
-
-    typedef struct ICLRStrongNameVtbl
-    {
-        BEGIN_INTERFACE
-        
-        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            ICLRStrongName * This,
-            /* [in] */ REFIID riid,
-            /* [annotation][iid_is][out] */ 
-            _COM_Outptr_  void **ppvObject);
-        
-        ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            ICLRStrongName * This);
-        
-        ULONG ( STDMETHODCALLTYPE *Release )( 
-            ICLRStrongName * This);
-        
-        HRESULT ( STDMETHODCALLTYPE *GetHashFromAssemblyFile )( 
-            ICLRStrongName * This,
-            /* [in] */ LPCSTR pszFilePath,
-            /* [out][in] */ unsigned int *piHashAlg,
-            /* [length_is][size_is][out] */ BYTE *pbHash,
-            /* [in] */ DWORD cchHash,
-            /* [out] */ DWORD *pchHash);
-        
-        HRESULT ( STDMETHODCALLTYPE *GetHashFromAssemblyFileW )( 
-            ICLRStrongName * This,
-            /* [in] */ LPCWSTR pwzFilePath,
-            /* [out][in] */ unsigned int *piHashAlg,
-            /* [length_is][size_is][out] */ BYTE *pbHash,
-            /* [in] */ DWORD cchHash,
-            /* [out] */ DWORD *pchHash);
-        
-        HRESULT ( STDMETHODCALLTYPE *GetHashFromBlob )( 
-            ICLRStrongName * This,
-            /* [in] */ BYTE *pbBlob,
-            /* [in] */ DWORD cchBlob,
-            /* [out][in] */ unsigned int *piHashAlg,
-            /* [length_is][size_is][out] */ BYTE *pbHash,
-            /* [in] */ DWORD cchHash,
-            /* [out] */ DWORD *pchHash);
-        
-        HRESULT ( STDMETHODCALLTYPE *GetHashFromFile )( 
-            ICLRStrongName * This,
-            /* [in] */ LPCSTR pszFilePath,
-            /* [out][in] */ unsigned int *piHashAlg,
-            /* [length_is][size_is][out] */ BYTE *pbHash,
-            /* [in] */ DWORD cchHash,
-            /* [out] */ DWORD *pchHash);
-        
-        HRESULT ( STDMETHODCALLTYPE *GetHashFromFileW )( 
-            ICLRStrongName * This,
-            /* [in] */ LPCWSTR pwzFilePath,
-            /* [out][in] */ unsigned int *piHashAlg,
-            /* [length_is][size_is][out] */ BYTE *pbHash,
-            /* [in] */ DWORD cchHash,
-            /* [out] */ DWORD *pchHash);
-        
-        HRESULT ( STDMETHODCALLTYPE *GetHashFromHandle )( 
-            ICLRStrongName * This,
-            /* [in] */ HANDLE hFile,
-            /* [out][in] */ unsigned int *piHashAlg,
-            /* [length_is][size_is][out] */ BYTE *pbHash,
-            /* [in] */ DWORD cchHash,
-            /* [out] */ DWORD *pchHash);
-        
-        HRESULT ( STDMETHODCALLTYPE *StrongNameCompareAssemblies )( 
-            ICLRStrongName * This,
-            /* [in] */ LPCWSTR pwzAssembly1,
-            /* [in] */ LPCWSTR pwzAssembly2,
-            /* [retval][out] */ DWORD *pdwResult);
-        
-        HRESULT ( STDMETHODCALLTYPE *StrongNameFreeBuffer )( 
-            ICLRStrongName * This,
-            /* [in] */ BYTE *pbMemory);
-        
-        HRESULT ( STDMETHODCALLTYPE *StrongNameGetBlob )( 
-            ICLRStrongName * This,
-            /* [in] */ LPCWSTR pwzFilePath,
-            /* [length_is][size_is][out][in] */ BYTE *pbBlob,
-            /* [out][in] */ DWORD *pcbBlob);
-        
-        HRESULT ( STDMETHODCALLTYPE *StrongNameGetBlobFromImage )( 
-            ICLRStrongName * This,
-            /* [size_is][in] */ BYTE *pbBase,
-            /* [in] */ DWORD dwLength,
-            /* [length_is][size_is][out] */ BYTE *pbBlob,
-            /* [out][in] */ DWORD *pcbBlob);
-        
-        HRESULT ( STDMETHODCALLTYPE *StrongNameGetPublicKey )( 
-            ICLRStrongName * This,
-            /* [in] */ LPCWSTR pwzKeyContainer,
-            /* [in] */ BYTE *pbKeyBlob,
-            /* [in] */ ULONG cbKeyBlob,
-            /* [out] */ BYTE **ppbPublicKeyBlob,
-            /* [out] */ ULONG *pcbPublicKeyBlob);
-        
-        HRESULT ( STDMETHODCALLTYPE *StrongNameHashSize )( 
-            ICLRStrongName * This,
-            /* [in] */ ULONG ulHashAlg,
-            /* [retval][out] */ DWORD *pcbSize);
-        
-        HRESULT ( STDMETHODCALLTYPE *StrongNameKeyDelete )( 
-            ICLRStrongName * This,
-            /* [in] */ LPCWSTR pwzKeyContainer);
-        
-        HRESULT ( STDMETHODCALLTYPE *StrongNameKeyGen )( 
-            ICLRStrongName * This,
-            /* [in] */ LPCWSTR pwzKeyContainer,
-            /* [in] */ DWORD dwFlags,
-            /* [out] */ BYTE **ppbKeyBlob,
-            /* [out] */ ULONG *pcbKeyBlob);
-        
-        HRESULT ( STDMETHODCALLTYPE *StrongNameKeyGenEx )( 
-            ICLRStrongName * This,
-            /* [in] */ LPCWSTR pwzKeyContainer,
-            /* [in] */ DWORD dwFlags,
-            /* [in] */ DWORD dwKeySize,
-            /* [out] */ BYTE **ppbKeyBlob,
-            /* [out] */ ULONG *pcbKeyBlob);
-        
-        HRESULT ( STDMETHODCALLTYPE *StrongNameKeyInstall )( 
-            ICLRStrongName * This,
-            /* [in] */ LPCWSTR pwzKeyContainer,
-            /* [in] */ BYTE *pbKeyBlob,
-            /* [in] */ ULONG cbKeyBlob);
-        
-        HRESULT ( STDMETHODCALLTYPE *StrongNameSignatureGeneration )( 
-            ICLRStrongName * This,
-            /* [in] */ LPCWSTR pwzFilePath,
-            /* [in] */ LPCWSTR pwzKeyContainer,
-            /* [in] */ BYTE *pbKeyBlob,
-            /* [in] */ ULONG cbKeyBlob,
-            /* [out] */ BYTE **ppbSignatureBlob,
-            /* [out] */ ULONG *pcbSignatureBlob);
-        
-        HRESULT ( STDMETHODCALLTYPE *StrongNameSignatureGenerationEx )( 
-            ICLRStrongName * This,
-            /* [in] */ LPCWSTR wszFilePath,
-            /* [in] */ LPCWSTR wszKeyContainer,
-            /* [in] */ BYTE *pbKeyBlob,
-            /* [in] */ ULONG cbKeyBlob,
-            /* [out] */ BYTE **ppbSignatureBlob,
-            /* [out] */ ULONG *pcbSignatureBlob,
-            /* [in] */ DWORD dwFlags);
-        
-        HRESULT ( STDMETHODCALLTYPE *StrongNameSignatureSize )( 
-            ICLRStrongName * This,
-            /* [in] */ BYTE *pbPublicKeyBlob,
-            /* [in] */ ULONG cbPublicKeyBlob,
-            /* [in] */ DWORD *pcbSize);
-        
-        HRESULT ( STDMETHODCALLTYPE *StrongNameSignatureVerification )( 
-            ICLRStrongName * This,
-            /* [in] */ LPCWSTR pwzFilePath,
-            /* [in] */ DWORD dwInFlags,
-            /* [retval][out] */ DWORD *pdwOutFlags);
-        
-        HRESULT ( STDMETHODCALLTYPE *StrongNameSignatureVerificationEx )( 
-            ICLRStrongName * This,
-            /* [in] */ LPCWSTR pwzFilePath,
-            /* [in] */ BOOLEAN fForceVerification,
-            /* [retval][out] */ BOOLEAN *pfWasVerified);
-        
-        HRESULT ( STDMETHODCALLTYPE *StrongNameSignatureVerificationFromImage )( 
-            ICLRStrongName * This,
-            /* [in] */ BYTE *pbBase,
-            /* [in] */ DWORD dwLength,
-            /* [in] */ DWORD dwInFlags,
-            /* [retval][out] */ DWORD *pdwOutFlags);
-        
-        HRESULT ( STDMETHODCALLTYPE *StrongNameTokenFromAssembly )( 
-            ICLRStrongName * This,
-            /* [in] */ LPCWSTR pwzFilePath,
-            /* [out] */ BYTE **ppbStrongNameToken,
-            /* [out] */ ULONG *pcbStrongNameToken);
-        
-        HRESULT ( STDMETHODCALLTYPE *StrongNameTokenFromAssemblyEx )( 
-            ICLRStrongName * This,
-            /* [in] */ LPCWSTR pwzFilePath,
-            /* [out] */ BYTE **ppbStrongNameToken,
-            /* [out] */ ULONG *pcbStrongNameToken,
-            /* [out] */ BYTE **ppbPublicKeyBlob,
-            /* [out] */ ULONG *pcbPublicKeyBlob);
-        
-        HRESULT ( STDMETHODCALLTYPE *StrongNameTokenFromPublicKey )( 
-            ICLRStrongName * This,
-            /* [in] */ BYTE *pbPublicKeyBlob,
-            /* [in] */ ULONG cbPublicKeyBlob,
-            /* [out] */ BYTE **ppbStrongNameToken,
-            /* [out] */ ULONG *pcbStrongNameToken);
-        
-        END_INTERFACE
-    } ICLRStrongNameVtbl;
-
-    interface ICLRStrongName
-    {
-        CONST_VTBL struct ICLRStrongNameVtbl *lpVtbl;
-    };
-
-    
-
-#ifdef COBJMACROS
-
-
-#define ICLRStrongName_QueryInterface(This,riid,ppvObject)     \
-    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
-
-#define ICLRStrongName_AddRef(This)    \
-    ( (This)->lpVtbl -> AddRef(This) ) 
-
-#define ICLRStrongName_Release(This)   \
-    ( (This)->lpVtbl -> Release(This) ) 
-
-
-#define ICLRStrongName_GetHashFromAssemblyFile(This,pszFilePath,piHashAlg,pbHash,cchHash,pchHash)      \
-    ( (This)->lpVtbl -> GetHashFromAssemblyFile(This,pszFilePath,piHashAlg,pbHash,cchHash,pchHash) ) 
-
-#define ICLRStrongName_GetHashFromAssemblyFileW(This,pwzFilePath,piHashAlg,pbHash,cchHash,pchHash)     \
-    ( (This)->lpVtbl -> GetHashFromAssemblyFileW(This,pwzFilePath,piHashAlg,pbHash,cchHash,pchHash) ) 
-
-#define ICLRStrongName_GetHashFromBlob(This,pbBlob,cchBlob,piHashAlg,pbHash,cchHash,pchHash)   \
-    ( (This)->lpVtbl -> GetHashFromBlob(This,pbBlob,cchBlob,piHashAlg,pbHash,cchHash,pchHash) ) 
-
-#define ICLRStrongName_GetHashFromFile(This,pszFilePath,piHashAlg,pbHash,cchHash,pchHash)      \
-    ( (This)->lpVtbl -> GetHashFromFile(This,pszFilePath,piHashAlg,pbHash,cchHash,pchHash) ) 
-
-#define ICLRStrongName_GetHashFromFileW(This,pwzFilePath,piHashAlg,pbHash,cchHash,pchHash)     \
-    ( (This)->lpVtbl -> GetHashFromFileW(This,pwzFilePath,piHashAlg,pbHash,cchHash,pchHash) ) 
-
-#define ICLRStrongName_GetHashFromHandle(This,hFile,piHashAlg,pbHash,cchHash,pchHash)  \
-    ( (This)->lpVtbl -> GetHashFromHandle(This,hFile,piHashAlg,pbHash,cchHash,pchHash) ) 
-
-#define ICLRStrongName_StrongNameCompareAssemblies(This,pwzAssembly1,pwzAssembly2,pdwResult)   \
-    ( (This)->lpVtbl -> StrongNameCompareAssemblies(This,pwzAssembly1,pwzAssembly2,pdwResult) ) 
-
-#define ICLRStrongName_StrongNameFreeBuffer(This,pbMemory)     \
-    ( (This)->lpVtbl -> StrongNameFreeBuffer(This,pbMemory) ) 
-
-#define ICLRStrongName_StrongNameGetBlob(This,pwzFilePath,pbBlob,pcbBlob)      \
-    ( (This)->lpVtbl -> StrongNameGetBlob(This,pwzFilePath,pbBlob,pcbBlob) ) 
-
-#define ICLRStrongName_StrongNameGetBlobFromImage(This,pbBase,dwLength,pbBlob,pcbBlob) \
-    ( (This)->lpVtbl -> StrongNameGetBlobFromImage(This,pbBase,dwLength,pbBlob,pcbBlob) ) 
-
-#define ICLRStrongName_StrongNameGetPublicKey(This,pwzKeyContainer,pbKeyBlob,cbKeyBlob,ppbPublicKeyBlob,pcbPublicKeyBlob)      \
-    ( (This)->lpVtbl -> StrongNameGetPublicKey(This,pwzKeyContainer,pbKeyBlob,cbKeyBlob,ppbPublicKeyBlob,pcbPublicKeyBlob) ) 
-
-#define ICLRStrongName_StrongNameHashSize(This,ulHashAlg,pcbSize)      \
-    ( (This)->lpVtbl -> StrongNameHashSize(This,ulHashAlg,pcbSize) ) 
-
-#define ICLRStrongName_StrongNameKeyDelete(This,pwzKeyContainer)       \
-    ( (This)->lpVtbl -> StrongNameKeyDelete(This,pwzKeyContainer) ) 
-
-#define ICLRStrongName_StrongNameKeyGen(This,pwzKeyContainer,dwFlags,ppbKeyBlob,pcbKeyBlob)    \
-    ( (This)->lpVtbl -> StrongNameKeyGen(This,pwzKeyContainer,dwFlags,ppbKeyBlob,pcbKeyBlob) ) 
-
-#define ICLRStrongName_StrongNameKeyGenEx(This,pwzKeyContainer,dwFlags,dwKeySize,ppbKeyBlob,pcbKeyBlob)        \
-    ( (This)->lpVtbl -> StrongNameKeyGenEx(This,pwzKeyContainer,dwFlags,dwKeySize,ppbKeyBlob,pcbKeyBlob) ) 
-
-#define ICLRStrongName_StrongNameKeyInstall(This,pwzKeyContainer,pbKeyBlob,cbKeyBlob)  \
-    ( (This)->lpVtbl -> StrongNameKeyInstall(This,pwzKeyContainer,pbKeyBlob,cbKeyBlob) ) 
-
-#define ICLRStrongName_StrongNameSignatureGeneration(This,pwzFilePath,pwzKeyContainer,pbKeyBlob,cbKeyBlob,ppbSignatureBlob,pcbSignatureBlob)   \
-    ( (This)->lpVtbl -> StrongNameSignatureGeneration(This,pwzFilePath,pwzKeyContainer,pbKeyBlob,cbKeyBlob,ppbSignatureBlob,pcbSignatureBlob) ) 
-
-#define ICLRStrongName_StrongNameSignatureGenerationEx(This,wszFilePath,wszKeyContainer,pbKeyBlob,cbKeyBlob,ppbSignatureBlob,pcbSignatureBlob,dwFlags) \
-    ( (This)->lpVtbl -> StrongNameSignatureGenerationEx(This,wszFilePath,wszKeyContainer,pbKeyBlob,cbKeyBlob,ppbSignatureBlob,pcbSignatureBlob,dwFlags) ) 
-
-#define ICLRStrongName_StrongNameSignatureSize(This,pbPublicKeyBlob,cbPublicKeyBlob,pcbSize)   \
-    ( (This)->lpVtbl -> StrongNameSignatureSize(This,pbPublicKeyBlob,cbPublicKeyBlob,pcbSize) ) 
-
-#define ICLRStrongName_StrongNameSignatureVerification(This,pwzFilePath,dwInFlags,pdwOutFlags) \
-    ( (This)->lpVtbl -> StrongNameSignatureVerification(This,pwzFilePath,dwInFlags,pdwOutFlags) ) 
-
-#define ICLRStrongName_StrongNameSignatureVerificationEx(This,pwzFilePath,fForceVerification,pfWasVerified)    \
-    ( (This)->lpVtbl -> StrongNameSignatureVerificationEx(This,pwzFilePath,fForceVerification,pfWasVerified) ) 
-
-#define ICLRStrongName_StrongNameSignatureVerificationFromImage(This,pbBase,dwLength,dwInFlags,pdwOutFlags)    \
-    ( (This)->lpVtbl -> StrongNameSignatureVerificationFromImage(This,pbBase,dwLength,dwInFlags,pdwOutFlags) ) 
-
-#define ICLRStrongName_StrongNameTokenFromAssembly(This,pwzFilePath,ppbStrongNameToken,pcbStrongNameToken)     \
-    ( (This)->lpVtbl -> StrongNameTokenFromAssembly(This,pwzFilePath,ppbStrongNameToken,pcbStrongNameToken) ) 
-
-#define ICLRStrongName_StrongNameTokenFromAssemblyEx(This,pwzFilePath,ppbStrongNameToken,pcbStrongNameToken,ppbPublicKeyBlob,pcbPublicKeyBlob) \
-    ( (This)->lpVtbl -> StrongNameTokenFromAssemblyEx(This,pwzFilePath,ppbStrongNameToken,pcbStrongNameToken,ppbPublicKeyBlob,pcbPublicKeyBlob) ) 
-
-#define ICLRStrongName_StrongNameTokenFromPublicKey(This,pbPublicKeyBlob,cbPublicKeyBlob,ppbStrongNameToken,pcbStrongNameToken)        \
-    ( (This)->lpVtbl -> StrongNameTokenFromPublicKey(This,pbPublicKeyBlob,cbPublicKeyBlob,ppbStrongNameToken,pcbStrongNameToken) ) 
-
-#endif /* COBJMACROS */
-
-
-#endif         /* C style interface */
-
-
-
-
-#endif         /* __ICLRStrongName_INTERFACE_DEFINED__ */
-
-
-#ifndef __ICLRStrongName2_INTERFACE_DEFINED__
-#define __ICLRStrongName2_INTERFACE_DEFINED__
-
-/* interface ICLRStrongName2 */
-/* [object][local][helpstring][version][uuid] */ 
-
-
-EXTERN_C const IID IID_ICLRStrongName2;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-    
-    MIDL_INTERFACE("C22ED5C5-4B59-4975-90EB-85EA55C0069B")
-    ICLRStrongName2 : public IUnknown
-    {
-    public:
-        virtual HRESULT STDMETHODCALLTYPE StrongNameGetPublicKeyEx( 
-            /* [in] */ LPCWSTR pwzKeyContainer,
-            /* [in] */ BYTE *pbKeyBlob,
-            /* [in] */ ULONG cbKeyBlob,
-            /* [out] */ BYTE **ppbPublicKeyBlob,
-            /* [out] */ ULONG *pcbPublicKeyBlob,
-            /* [in] */ ULONG uHashAlgId,
-            /* [in] */ ULONG uReserved) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE StrongNameSignatureVerificationEx2( 
-            /* [in] */ LPCWSTR wszFilePath,
-            /* [in] */ BOOLEAN fForceVerification,
-            /* [in] */ BYTE *pbEcmaPublicKey,
-            /* [in] */ DWORD cbEcmaPublicKey,
-            /* [out] */ BOOLEAN *pfWasVerified) = 0;
-        
-    };
-    
-    
-#else  /* C style interface */
-
-    typedef struct ICLRStrongName2Vtbl
-    {
-        BEGIN_INTERFACE
-        
-        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            ICLRStrongName2 * This,
-            /* [in] */ REFIID riid,
-            /* [annotation][iid_is][out] */ 
-            _COM_Outptr_  void **ppvObject);
-        
-        ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            ICLRStrongName2 * This);
-        
-        ULONG ( STDMETHODCALLTYPE *Release )( 
-            ICLRStrongName2 * This);
-        
-        HRESULT ( STDMETHODCALLTYPE *StrongNameGetPublicKeyEx )( 
-            ICLRStrongName2 * This,
-            /* [in] */ LPCWSTR pwzKeyContainer,
-            /* [in] */ BYTE *pbKeyBlob,
-            /* [in] */ ULONG cbKeyBlob,
-            /* [out] */ BYTE **ppbPublicKeyBlob,
-            /* [out] */ ULONG *pcbPublicKeyBlob,
-            /* [in] */ ULONG uHashAlgId,
-            /* [in] */ ULONG uReserved);
-        
-        HRESULT ( STDMETHODCALLTYPE *StrongNameSignatureVerificationEx2 )( 
-            ICLRStrongName2 * This,
-            /* [in] */ LPCWSTR wszFilePath,
-            /* [in] */ BOOLEAN fForceVerification,
-            /* [in] */ BYTE *pbEcmaPublicKey,
-            /* [in] */ DWORD cbEcmaPublicKey,
-            /* [out] */ BOOLEAN *pfWasVerified);
-        
-        END_INTERFACE
-    } ICLRStrongName2Vtbl;
-
-    interface ICLRStrongName2
-    {
-        CONST_VTBL struct ICLRStrongName2Vtbl *lpVtbl;
-    };
-
-    
-
-#ifdef COBJMACROS
-
-
-#define ICLRStrongName2_QueryInterface(This,riid,ppvObject)    \
-    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
-
-#define ICLRStrongName2_AddRef(This)   \
-    ( (This)->lpVtbl -> AddRef(This) ) 
-
-#define ICLRStrongName2_Release(This)  \
-    ( (This)->lpVtbl -> Release(This) ) 
-
-
-#define ICLRStrongName2_StrongNameGetPublicKeyEx(This,pwzKeyContainer,pbKeyBlob,cbKeyBlob,ppbPublicKeyBlob,pcbPublicKeyBlob,uHashAlgId,uReserved)      \
-    ( (This)->lpVtbl -> StrongNameGetPublicKeyEx(This,pwzKeyContainer,pbKeyBlob,cbKeyBlob,ppbPublicKeyBlob,pcbPublicKeyBlob,uHashAlgId,uReserved) ) 
-
-#define ICLRStrongName2_StrongNameSignatureVerificationEx2(This,wszFilePath,fForceVerification,pbEcmaPublicKey,cbEcmaPublicKey,pfWasVerified)  \
-    ( (This)->lpVtbl -> StrongNameSignatureVerificationEx2(This,wszFilePath,fForceVerification,pbEcmaPublicKey,cbEcmaPublicKey,pfWasVerified) ) 
-
-#endif /* COBJMACROS */
-
-
-#endif         /* C style interface */
-
-
-
-
-#endif         /* __ICLRStrongName2_INTERFACE_DEFINED__ */
-
-
-#ifndef __ICLRStrongName3_INTERFACE_DEFINED__
-#define __ICLRStrongName3_INTERFACE_DEFINED__
-
-/* interface ICLRStrongName3 */
-/* [object][local][helpstring][version][uuid] */ 
-
-
-EXTERN_C const IID IID_ICLRStrongName3;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-    
-    MIDL_INTERFACE("22c7089b-bbd3-414a-b698-210f263f1fed")
-    ICLRStrongName3 : public IUnknown
-    {
-    public:
-        virtual HRESULT STDMETHODCALLTYPE StrongNameDigestGenerate( 
-            /* [in] */ LPCWSTR wszFilePath,
-            /* [out] */ BYTE **ppbDigestBlob,
-            /* [out] */ ULONG *pcbDigestBlob,
-            /* [in] */ DWORD dwFlags) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE StrongNameDigestSign( 
-            /* [in] */ LPCWSTR wszKeyContainer,
-            /* [size_is][in] */ BYTE *pbKeyBlob,
-            /* [in] */ ULONG cbKeyBlob,
-            /* [size_is][in] */ BYTE *pbDigestBlob,
-            /* [in] */ ULONG cbDigestBlob,
-            /* [in] */ DWORD hashAlgId,
-            /* [out] */ BYTE **ppbSignatureBlob,
-            /* [out] */ ULONG *pcbSignatureBlob,
-            /* [in] */ DWORD dwFlags) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE StrongNameDigestEmbed( 
-            /* [in] */ LPCWSTR wszFilePath,
-            /* [size_is][in] */ BYTE *pbSignatureBlob,
-            /* [in] */ ULONG cbSignatureBlob) = 0;
-        
-    };
-    
-    
-#else  /* C style interface */
-
-    typedef struct ICLRStrongName3Vtbl
-    {
-        BEGIN_INTERFACE
-        
-        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            ICLRStrongName3 * This,
-            /* [in] */ REFIID riid,
-            /* [annotation][iid_is][out] */ 
-            _COM_Outptr_  void **ppvObject);
-        
-        ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            ICLRStrongName3 * This);
-        
-        ULONG ( STDMETHODCALLTYPE *Release )( 
-            ICLRStrongName3 * This);
-        
-        HRESULT ( STDMETHODCALLTYPE *StrongNameDigestGenerate )( 
-            ICLRStrongName3 * This,
-            /* [in] */ LPCWSTR wszFilePath,
-            /* [out] */ BYTE **ppbDigestBlob,
-            /* [out] */ ULONG *pcbDigestBlob,
-            /* [in] */ DWORD dwFlags);
-        
-        HRESULT ( STDMETHODCALLTYPE *StrongNameDigestSign )( 
-            ICLRStrongName3 * This,
-            /* [in] */ LPCWSTR wszKeyContainer,
-            /* [size_is][in] */ BYTE *pbKeyBlob,
-            /* [in] */ ULONG cbKeyBlob,
-            /* [size_is][in] */ BYTE *pbDigestBlob,
-            /* [in] */ ULONG cbDigestBlob,
-            /* [in] */ DWORD hashAlgId,
-            /* [out] */ BYTE **ppbSignatureBlob,
-            /* [out] */ ULONG *pcbSignatureBlob,
-            /* [in] */ DWORD dwFlags);
-        
-        HRESULT ( STDMETHODCALLTYPE *StrongNameDigestEmbed )( 
-            ICLRStrongName3 * This,
-            /* [in] */ LPCWSTR wszFilePath,
-            /* [size_is][in] */ BYTE *pbSignatureBlob,
-            /* [in] */ ULONG cbSignatureBlob);
-        
-        END_INTERFACE
-    } ICLRStrongName3Vtbl;
-
-    interface ICLRStrongName3
-    {
-        CONST_VTBL struct ICLRStrongName3Vtbl *lpVtbl;
-    };
-
-    
-
-#ifdef COBJMACROS
-
-
-#define ICLRStrongName3_QueryInterface(This,riid,ppvObject)    \
-    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
-
-#define ICLRStrongName3_AddRef(This)   \
-    ( (This)->lpVtbl -> AddRef(This) ) 
-
-#define ICLRStrongName3_Release(This)  \
-    ( (This)->lpVtbl -> Release(This) ) 
-
-
-#define ICLRStrongName3_StrongNameDigestGenerate(This,wszFilePath,ppbDigestBlob,pcbDigestBlob,dwFlags) \
-    ( (This)->lpVtbl -> StrongNameDigestGenerate(This,wszFilePath,ppbDigestBlob,pcbDigestBlob,dwFlags) ) 
-
-#define ICLRStrongName3_StrongNameDigestSign(This,wszKeyContainer,pbKeyBlob,cbKeyBlob,pbDigestBlob,cbDigestBlob,hashAlgId,ppbSignatureBlob,pcbSignatureBlob,dwFlags)   \
-    ( (This)->lpVtbl -> StrongNameDigestSign(This,wszKeyContainer,pbKeyBlob,cbKeyBlob,pbDigestBlob,cbDigestBlob,hashAlgId,ppbSignatureBlob,pcbSignatureBlob,dwFlags) ) 
-
-#define ICLRStrongName3_StrongNameDigestEmbed(This,wszFilePath,pbSignatureBlob,cbSignatureBlob)        \
-    ( (This)->lpVtbl -> StrongNameDigestEmbed(This,wszFilePath,pbSignatureBlob,cbSignatureBlob) ) 
-
-#endif /* COBJMACROS */
-
-
-#endif         /* C style interface */
-
-
-
-
-#endif         /* __ICLRStrongName3_INTERFACE_DEFINED__ */
-
-
-
-#ifndef __CLRMetaHost_LIBRARY_DEFINED__
-#define __CLRMetaHost_LIBRARY_DEFINED__
-
-/* library CLRMetaHost */
-/* [version][uuid] */ 
-
-
-
-
-
-
-
-
-
-EXTERN_C const IID LIBID_CLRMetaHost;
-#endif /* __CLRMetaHost_LIBRARY_DEFINED__ */
-
-/* interface __MIDL_itf_metahost_0000_0011 */
-/* [local] */ 
-
-#endif // WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
-
-
-extern RPC_IF_HANDLE __MIDL_itf_metahost_0000_0011_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_metahost_0000_0011_v0_0_s_ifspec;
-
 /* Additional Prototypes for ALL interfaces */
 
 /* end of Additional Prototypes */
index c8ac97ec041a0e43e2382ffaf0e7e0b34fd74b3b..ab7bbb0d0c714d346fdb970e1dace07f0760e7ab 100644 (file)
@@ -22,7 +22,7 @@
 
 #ifndef __RPCNDR_H_VERSION__
 #error this stub requires an updated version of <rpcndr.h>
-#endif // __RPCNDR_H_VERSION__
+#endif /* __RPCNDR_H_VERSION__ */
 
 #ifndef COM_NO_WINDOWS_H
 #include "windows.h"
 
 /* Forward Declarations */ 
 
-#ifndef __IDebuggerThreadControl_FWD_DEFINED__
-#define __IDebuggerThreadControl_FWD_DEFINED__
-typedef interface IDebuggerThreadControl IDebuggerThreadControl;
-
-#endif         /* __IDebuggerThreadControl_FWD_DEFINED__ */
-
-
-#ifndef __IDebuggerInfo_FWD_DEFINED__
-#define __IDebuggerInfo_FWD_DEFINED__
-typedef interface IDebuggerInfo IDebuggerInfo;
-
-#endif         /* __IDebuggerInfo_FWD_DEFINED__ */
-
-
-#ifndef __ICLRErrorReportingManager_FWD_DEFINED__
-#define __ICLRErrorReportingManager_FWD_DEFINED__
-typedef interface ICLRErrorReportingManager ICLRErrorReportingManager;
-
-#endif         /* __ICLRErrorReportingManager_FWD_DEFINED__ */
-
-
-#ifndef __ICLRErrorReportingManager2_FWD_DEFINED__
-#define __ICLRErrorReportingManager2_FWD_DEFINED__
-typedef interface ICLRErrorReportingManager2 ICLRErrorReportingManager2;
-
-#endif         /* __ICLRErrorReportingManager2_FWD_DEFINED__ */
-
-
-#ifndef __ICLRPolicyManager_FWD_DEFINED__
-#define __ICLRPolicyManager_FWD_DEFINED__
-typedef interface ICLRPolicyManager ICLRPolicyManager;
-
-#endif         /* __ICLRPolicyManager_FWD_DEFINED__ */
-
-
-#ifndef __ICLRGCManager_FWD_DEFINED__
-#define __ICLRGCManager_FWD_DEFINED__
-typedef interface ICLRGCManager ICLRGCManager;
-
-#endif         /* __ICLRGCManager_FWD_DEFINED__ */
-
-
-#ifndef __ICLRGCManager2_FWD_DEFINED__
-#define __ICLRGCManager2_FWD_DEFINED__
-typedef interface ICLRGCManager2 ICLRGCManager2;
-
-#endif         /* __ICLRGCManager2_FWD_DEFINED__ */
-
-
-#ifndef __IHostControl_FWD_DEFINED__
-#define __IHostControl_FWD_DEFINED__
-typedef interface IHostControl IHostControl;
-
-#endif         /* __IHostControl_FWD_DEFINED__ */
-
-
-#ifndef __ICLRControl_FWD_DEFINED__
-#define __ICLRControl_FWD_DEFINED__
-typedef interface ICLRControl ICLRControl;
-
-#endif         /* __ICLRControl_FWD_DEFINED__ */
-
-
 #ifndef __ICLRRuntimeHost_FWD_DEFINED__
 #define __ICLRRuntimeHost_FWD_DEFINED__
 typedef interface ICLRRuntimeHost ICLRRuntimeHost;
@@ -112,114 +49,18 @@ typedef interface ICLRRuntimeHost ICLRRuntimeHost;
 #define __ICLRRuntimeHost2_FWD_DEFINED__
 typedef interface ICLRRuntimeHost2 ICLRRuntimeHost2;
 
-#endif         /* __ICLRRuntimeHost4_FWD_DEFINED__ */
+#endif         /* __ICLRRuntimeHost2_FWD_DEFINED__ */
+
 
 #ifndef __ICLRRuntimeHost4_FWD_DEFINED__
 #define __ICLRRuntimeHost4_FWD_DEFINED__
 typedef interface ICLRRuntimeHost4 ICLRRuntimeHost4;
 
-#endif  /* __ICLRRuntimeHost4_FWD_DEFINED__ */
-
-#ifndef __ICLRExecutionManager_FWD_DEFINED__
-#define __ICLRExecutionManager_FWD_DEFINED__
-typedef interface ICLRExecutionManager ICLRExecutionManager;
-
-#endif         /* __ICLRExecutionManager_FWD_DEFINED__ */
-
-
-#ifndef __IHostNetCFDebugControlManager_FWD_DEFINED__
-#define __IHostNetCFDebugControlManager_FWD_DEFINED__
-typedef interface IHostNetCFDebugControlManager IHostNetCFDebugControlManager;
-
-#endif         /* __IHostNetCFDebugControlManager_FWD_DEFINED__ */
-
-
-#ifndef __ITypeName_FWD_DEFINED__
-#define __ITypeName_FWD_DEFINED__
-typedef interface ITypeName ITypeName;
-
-#endif         /* __ITypeName_FWD_DEFINED__ */
-
-
-#ifndef __ITypeNameBuilder_FWD_DEFINED__
-#define __ITypeNameBuilder_FWD_DEFINED__
-typedef interface ITypeNameBuilder ITypeNameBuilder;
-
-#endif         /* __ITypeNameBuilder_FWD_DEFINED__ */
-
-
-#ifndef __ITypeNameFactory_FWD_DEFINED__
-#define __ITypeNameFactory_FWD_DEFINED__
-typedef interface ITypeNameFactory ITypeNameFactory;
-
-#endif         /* __ITypeNameFactory_FWD_DEFINED__ */
-
-
-#ifndef __IManagedObject_FWD_DEFINED__
-#define __IManagedObject_FWD_DEFINED__
-typedef interface IManagedObject IManagedObject;
-
-#endif         /* __IManagedObject_FWD_DEFINED__ */
-
-
-#ifndef __ComCallUnmarshal_FWD_DEFINED__
-#define __ComCallUnmarshal_FWD_DEFINED__
-
-#ifdef __cplusplus
-typedef class ComCallUnmarshal ComCallUnmarshal;
-#else
-typedef struct ComCallUnmarshal ComCallUnmarshal;
-#endif /* __cplusplus */
-
-#endif         /* __ComCallUnmarshal_FWD_DEFINED__ */
-
-
-#ifndef __ComCallUnmarshalV4_FWD_DEFINED__
-#define __ComCallUnmarshalV4_FWD_DEFINED__
-
-#ifdef __cplusplus
-typedef class ComCallUnmarshalV4 ComCallUnmarshalV4;
-#else
-typedef struct ComCallUnmarshalV4 ComCallUnmarshalV4;
-#endif /* __cplusplus */
-
-#endif         /* __ComCallUnmarshalV4_FWD_DEFINED__ */
-
-
-#ifndef __CLRRuntimeHost_FWD_DEFINED__
-#define __CLRRuntimeHost_FWD_DEFINED__
-
-#ifdef __cplusplus
-typedef class CLRRuntimeHost CLRRuntimeHost;
-#else
-typedef struct CLRRuntimeHost CLRRuntimeHost;
-#endif /* __cplusplus */
-
-#endif         /* __CLRRuntimeHost_FWD_DEFINED__ */
-
-
-#ifndef __TypeNameFactory_FWD_DEFINED__
-#define __TypeNameFactory_FWD_DEFINED__
-
-#ifdef __cplusplus
-typedef class TypeNameFactory TypeNameFactory;
-#else
-typedef struct TypeNameFactory TypeNameFactory;
-#endif /* __cplusplus */
-
-#endif         /* __TypeNameFactory_FWD_DEFINED__ */
-
-
-#ifndef __ICLRAppDomainResourceMonitor_FWD_DEFINED__
-#define __ICLRAppDomainResourceMonitor_FWD_DEFINED__
-typedef interface ICLRAppDomainResourceMonitor ICLRAppDomainResourceMonitor;
-
-#endif         /* __ICLRAppDomainResourceMonitor_FWD_DEFINED__ */
+#endif         /* __ICLRRuntimeHost4_FWD_DEFINED__ */
 
 
 /* header files for imported files */
 #include "unknwn.h"
-#include "gchost.h"
 
 #ifdef __cplusplus
 extern "C"{
@@ -234,56 +75,20 @@ extern "C"{
 
 struct IActivationFactory;
 
-EXTERN_GUID(CLSID_TypeNameFactory, 0xB81FF171, 0x20F3, 0x11d2, 0x8d, 0xcc, 0x00, 0xa0, 0xc9, 0xb0, 0x05, 0x25);
-EXTERN_GUID(CLSID_ComCallUnmarshal, 0x3F281000,0xE95A,0x11d2,0x88,0x6B,0x00,0xC0,0x4F,0x86,0x9F,0x04);
+struct IHostControl;
+
+struct ICLRControl;
+
 EXTERN_GUID(CLSID_ComCallUnmarshalV4, 0x45fb4600,0xe6e8,0x4928,0xb2,0x5e,0x50,0x47,0x6f,0xf7,0x94,0x25);
-EXTERN_GUID(IID_IManagedObject, 0xc3fcc19e, 0xa970, 0x11d2, 0x8b, 0x5a, 0x00, 0xa0, 0xc9, 0xb7, 0xc9, 0xc4);
-EXTERN_GUID(IID_ICLRAppDomainResourceMonitor, 0XC62DE18C, 0X2E23, 0X4AEA, 0X84, 0X23, 0XB4, 0X0C, 0X1F, 0XC5, 0X9E, 0XAE);
-EXTERN_GUID(IID_ICLRPolicyManager, 0x7D290010, 0xD781, 0x45da, 0xA6, 0xF8, 0xAA, 0x5D, 0x71, 0x1A, 0x73, 0x0E);
-EXTERN_GUID(IID_ICLRGCManager, 0x54D9007E, 0xA8E2, 0x4885, 0xB7, 0xBF, 0xF9, 0x98, 0xDE, 0xEE, 0x4F, 0x2A);
-EXTERN_GUID(IID_ICLRGCManager2, 0x0603B793, 0xA97A, 0x4712, 0x9C, 0xB4, 0x0C, 0xD1, 0xC7, 0x4C, 0x0F, 0x7C);
-EXTERN_GUID(IID_ICLRErrorReportingManager, 0x980d2f1a, 0xbf79, 0x4c08, 0x81, 0x2a, 0xbb, 0x97, 0x78, 0x92, 0x8f, 0x78);
-EXTERN_GUID(IID_ICLRErrorReportingManager2, 0xc68f63b1, 0x4d8b, 0x4e0b, 0x95, 0x64, 0x9d, 0x2e, 0xfe, 0x2f, 0xa1, 0x8c);
 EXTERN_GUID(IID_ICLRRuntimeHost, 0x90F1A06C, 0x7712, 0x4762, 0x86, 0xB5, 0x7A, 0x5E, 0xBA, 0x6B, 0xDB, 0x02);
 EXTERN_GUID(IID_ICLRRuntimeHost2, 0x712AB73F, 0x2C22, 0x4807, 0xAD, 0x7E, 0xF5, 0x01, 0xD7, 0xb7, 0x2C, 0x2D);
 EXTERN_GUID(IID_ICLRRuntimeHost4, 0x64F6D366, 0xD7C2, 0x4F1F, 0xB4, 0xB2, 0xE8, 0x16, 0x0C, 0xAC, 0x43, 0xAF);
-EXTERN_GUID(IID_ICLRExecutionManager, 0x1000A3E7, 0xB420, 0x4620, 0xAE, 0x30, 0xFB, 0x19, 0xB5, 0x87, 0xAD, 0x1D);
-EXTERN_GUID(IID_ITypeName, 0xB81FF171, 0x20F3, 0x11d2, 0x8d, 0xcc, 0x00, 0xa0, 0xc9, 0xb0, 0x05, 0x22);
-EXTERN_GUID(IID_ITypeNameBuilder, 0xB81FF171, 0x20F3, 0x11d2, 0x8d, 0xcc, 0x00, 0xa0, 0xc9, 0xb0, 0x05, 0x23);
-EXTERN_GUID(IID_ITypeNameFactory, 0xB81FF171, 0x20F3, 0x11d2, 0x8d, 0xcc, 0x00, 0xa0, 0xc9, 0xb0, 0x05, 0x21);
-DEPRECATED_CLR_STDAPI GetCORSystemDirectory(_Out_writes_to_(cchBuffer, *dwLength) LPWSTR pbuffer, DWORD  cchBuffer, DWORD* dwLength);
-DEPRECATED_CLR_STDAPI GetCORVersion(_Out_writes_to_(cchBuffer, *dwLength) LPWSTR pbBuffer, DWORD cchBuffer, DWORD* dwLength);
-DEPRECATED_CLR_STDAPI GetFileVersion(LPCWSTR szFilename, _Out_writes_to_opt_(cchBuffer, *dwLength) LPWSTR szBuffer, DWORD cchBuffer, DWORD* dwLength);
-DEPRECATED_CLR_STDAPI GetCORRequiredVersion(_Out_writes_to_(cchBuffer, *dwLength) LPWSTR pbuffer, DWORD cchBuffer, DWORD* dwLength);
-DEPRECATED_CLR_STDAPI GetRequestedRuntimeInfo(LPCWSTR pExe, LPCWSTR pwszVersion, LPCWSTR pConfigurationFile, DWORD startupFlags, DWORD runtimeInfoFlags, _Out_writes_opt_(dwDirectory) LPWSTR pDirectory, DWORD dwDirectory, _Out_opt_ DWORD *dwDirectoryLength, _Out_writes_opt_(cchBuffer) LPWSTR pVersion, DWORD cchBuffer, _Out_opt_ DWORD* dwlength);
-DEPRECATED_CLR_STDAPI GetRequestedRuntimeVersion(_In_ LPWSTR pExe, _Out_writes_to_(cchBuffer, *dwLength) LPWSTR pVersion, DWORD cchBuffer, _Out_ DWORD* dwLength);
-DEPRECATED_CLR_STDAPI CorBindToRuntimeHost(LPCWSTR pwszVersion, LPCWSTR pwszBuildFlavor, LPCWSTR pwszHostConfigFile, VOID* pReserved, DWORD startupFlags, REFCLSID rclsid, REFIID riid, LPVOID FAR *ppv);
-DEPRECATED_CLR_STDAPI CorBindToRuntimeEx(LPCWSTR pwszVersion, LPCWSTR pwszBuildFlavor, DWORD startupFlags, REFCLSID rclsid, REFIID riid, LPVOID FAR *ppv);
-DEPRECATED_CLR_STDAPI CorBindToRuntimeByCfg(IStream* pCfgStream, DWORD reserved, DWORD startupFlags, REFCLSID rclsid,REFIID riid, LPVOID FAR* ppv);
-DEPRECATED_CLR_STDAPI CorBindToRuntime(LPCWSTR pwszVersion, LPCWSTR pwszBuildFlavor, REFCLSID rclsid, REFIID riid, LPVOID FAR *ppv);
-DEPRECATED_CLR_STDAPI CorBindToCurrentRuntime(LPCWSTR pwszFileName, REFCLSID rclsid, REFIID riid, LPVOID FAR *ppv);
-DEPRECATED_CLR_STDAPI ClrCreateManagedInstance(LPCWSTR pTypeName, REFIID riid, void **ppObject);
-DEPRECATED_CLR_STDAPI RunDll32ShimW(HWND hwnd, HINSTANCE hinst, LPCWSTR lpszCmdLine, int nCmdShow);
-DEPRECATED_CLR_STDAPI LoadLibraryShim(LPCWSTR szDllName, LPCWSTR szVersion, LPVOID pvReserved, HMODULE *phModDll);
-DEPRECATED_CLR_STDAPI CallFunctionShim(LPCWSTR szDllName, LPCSTR szFunctionName, LPVOID lpvArgument1, LPVOID lpvArgument2, LPCWSTR szVersion, LPVOID pvReserved);
-DEPRECATED_CLR_STDAPI GetRealProcAddress(LPCSTR pwszProcName, VOID** ppv);
-DECLARE_DEPRECATED void STDMETHODCALLTYPE CorExitProcess(int exitCode);
-DEPRECATED_CLR_STDAPI LoadStringRC(UINT iResouceID, _Out_writes_z_(iMax) LPWSTR szBuffer, int iMax, int bQuiet);
 typedef HRESULT  (STDAPICALLTYPE *FnGetCLRRuntimeHost)(REFIID riid, IUnknown **pUnk);
-typedef /* [public] */ 
-enum __MIDL___MIDL_itf_mscoree_0000_0000_0001
-    {
-        HOST_TYPE_DEFAULT      = 0,
-        HOST_TYPE_APPLAUNCH    = 0x1,
-        HOST_TYPE_CORFLAG      = 0x2
-    }  HOST_TYPE;
-
-STDAPI CorLaunchApplication(HOST_TYPE dwClickOnceHost, LPCWSTR pwzAppFullName, DWORD dwManifestPaths, LPCWSTR* ppwzManifestPaths, DWORD dwActivationData, LPCWSTR* ppwzActivationData, LPPROCESS_INFORMATION lpProcessInformation);
 typedef HRESULT ( __stdcall *FExecuteInAppDomainCallback )( 
     void *cookie);
 
 typedef /* [public][public] */ 
-enum __MIDL___MIDL_itf_mscoree_0000_0000_0002
+enum __MIDL___MIDL_itf_mscoree_0000_0000_0001
     {
         STARTUP_CONCURRENT_GC  = 0x1,
         STARTUP_LOADER_OPTIMIZATION_MASK       = ( 0x3 << 1 ) ,
@@ -303,31 +108,11 @@ enum __MIDL___MIDL_itf_mscoree_0000_0000_0002
         STARTUP_ARM    = 0x400000,
         STARTUP_SINGLE_APPDOMAIN       = 0x800000,
         STARTUP_APPX_APP_MODEL = 0x1000000,
-        STARTUP_DISABLE_RANDOMIZED_STRING_HASHING      = 0x2000000 // not supported
+        STARTUP_DISABLE_RANDOMIZED_STRING_HASHING      = 0x2000000
     }  STARTUP_FLAGS;
 
 typedef /* [public] */ 
-enum __MIDL___MIDL_itf_mscoree_0000_0000_0003
-    {
-        CLSID_RESOLUTION_DEFAULT       = 0,
-        CLSID_RESOLUTION_REGISTERED    = 0x1
-    }  CLSID_RESOLUTION_FLAGS;
-
-typedef /* [public] */ 
-enum __MIDL___MIDL_itf_mscoree_0000_0000_0004
-    {
-        RUNTIME_INFO_UPGRADE_VERSION   = 0x1,
-        RUNTIME_INFO_REQUEST_IA64      = 0x2,
-        RUNTIME_INFO_REQUEST_AMD64     = 0x4,
-        RUNTIME_INFO_REQUEST_X86       = 0x8,
-        RUNTIME_INFO_DONT_RETURN_DIRECTORY     = 0x10,
-        RUNTIME_INFO_DONT_RETURN_VERSION       = 0x20,
-        RUNTIME_INFO_DONT_SHOW_ERROR_DIALOG    = 0x40,
-        RUNTIME_INFO_IGNORE_ERROR_MODE = 0x1000
-    }  RUNTIME_INFO_FLAGS;
-
-typedef /* [public] */ 
-enum __MIDL___MIDL_itf_mscoree_0000_0000_0005
+enum __MIDL___MIDL_itf_mscoree_0000_0000_0002
     {
         APPDOMAIN_SECURITY_DEFAULT     = 0,
         APPDOMAIN_SECURITY_SANDBOXED   = 0x1,
@@ -335,237 +120,19 @@ enum __MIDL___MIDL_itf_mscoree_0000_0000_0005
         APPDOMAIN_IGNORE_UNHANDLED_EXCEPTIONS  = 0x4,
         APPDOMAIN_FORCE_TRIVIAL_WAIT_OPERATIONS        = 0x8,
         APPDOMAIN_ENABLE_PINVOKE_AND_CLASSIC_COMINTEROP        = 0x10,
-        APPDOMAIN_SET_TEST_KEY = 0x20,
         APPDOMAIN_ENABLE_PLATFORM_SPECIFIC_APPS        = 0x40,
         APPDOMAIN_ENABLE_ASSEMBLY_LOADFILE     = 0x80,
         APPDOMAIN_DISABLE_TRANSPARENCY_ENFORCEMENT     = 0x100
     }  APPDOMAIN_SECURITY_FLAGS;
 
-STDAPI GetRequestedRuntimeVersionForCLSID(REFCLSID rclsid, _Out_writes_opt_(cchBuffer) LPWSTR pVersion, DWORD cchBuffer, _Out_opt_ DWORD* dwLength, CLSID_RESOLUTION_FLAGS dwResolutionFlags);
-EXTERN_GUID(IID_IDebuggerThreadControl, 0x23d86786, 0x0bb5, 0x4774, 0x8f, 0xb5, 0xe3, 0x52, 0x2a, 0xdd, 0x62, 0x46);
-
-
-extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0000_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0000_v0_0_s_ifspec;
-
-#ifndef __IDebuggerThreadControl_INTERFACE_DEFINED__
-#define __IDebuggerThreadControl_INTERFACE_DEFINED__
-
-/* interface IDebuggerThreadControl */
-/* [object][local][unique][helpstring][version][uuid] */ 
-
-
-EXTERN_C const IID IID_IDebuggerThreadControl;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-    
-    MIDL_INTERFACE("23D86786-0BB5-4774-8FB5-E3522ADD6246")
-    IDebuggerThreadControl : public IUnknown
-    {
-    public:
-        virtual HRESULT STDMETHODCALLTYPE ThreadIsBlockingForDebugger( void) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE ReleaseAllRuntimeThreads( void) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE StartBlockingForDebugger( 
-            DWORD dwUnused) = 0;
-        
-    };
-    
-    
-#else  /* C style interface */
-
-    typedef struct IDebuggerThreadControlVtbl
-    {
-        BEGIN_INTERFACE
-        
-        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            IDebuggerThreadControl * This,
-            /* [in] */ REFIID riid,
-            /* [annotation][iid_is][out] */ 
-            _COM_Outptr_  void **ppvObject);
-        
-        ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            IDebuggerThreadControl * This);
-        
-        ULONG ( STDMETHODCALLTYPE *Release )( 
-            IDebuggerThreadControl * This);
-        
-        HRESULT ( STDMETHODCALLTYPE *ThreadIsBlockingForDebugger )( 
-            IDebuggerThreadControl * This);
-        
-        HRESULT ( STDMETHODCALLTYPE *ReleaseAllRuntimeThreads )( 
-            IDebuggerThreadControl * This);
-        
-        HRESULT ( STDMETHODCALLTYPE *StartBlockingForDebugger )( 
-            IDebuggerThreadControl * This,
-            DWORD dwUnused);
-        
-        END_INTERFACE
-    } IDebuggerThreadControlVtbl;
-
-    interface IDebuggerThreadControl
-    {
-        CONST_VTBL struct IDebuggerThreadControlVtbl *lpVtbl;
-    };
-
-    
-
-#ifdef COBJMACROS
-
-
-#define IDebuggerThreadControl_QueryInterface(This,riid,ppvObject)     \
-    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
-
-#define IDebuggerThreadControl_AddRef(This)    \
-    ( (This)->lpVtbl -> AddRef(This) ) 
-
-#define IDebuggerThreadControl_Release(This)   \
-    ( (This)->lpVtbl -> Release(This) ) 
-
-
-#define IDebuggerThreadControl_ThreadIsBlockingForDebugger(This)       \
-    ( (This)->lpVtbl -> ThreadIsBlockingForDebugger(This) ) 
-
-#define IDebuggerThreadControl_ReleaseAllRuntimeThreads(This)  \
-    ( (This)->lpVtbl -> ReleaseAllRuntimeThreads(This) ) 
-
-#define IDebuggerThreadControl_StartBlockingForDebugger(This,dwUnused) \
-    ( (This)->lpVtbl -> StartBlockingForDebugger(This,dwUnused) ) 
-
-#endif /* COBJMACROS */
-
-
-#endif         /* C style interface */
-
-
-
-
-#endif         /* __IDebuggerThreadControl_INTERFACE_DEFINED__ */
-
-
-/* interface __MIDL_itf_mscoree_0000_0001 */
-/* [local] */ 
-
-EXTERN_GUID(IID_IDebuggerInfo, 0xbf24142d, 0xa47d, 0x4d24, 0xa6, 0x6d, 0x8c, 0x21, 0x41, 0x94, 0x4e, 0x44);
-
-
-extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0001_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0001_v0_0_s_ifspec;
-
-#ifndef __IDebuggerInfo_INTERFACE_DEFINED__
-#define __IDebuggerInfo_INTERFACE_DEFINED__
-
-/* interface IDebuggerInfo */
-/* [object][local][unique][helpstring][version][uuid] */ 
-
-
-EXTERN_C const IID IID_IDebuggerInfo;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-    
-    MIDL_INTERFACE("BF24142D-A47D-4d24-A66D-8C2141944E44")
-    IDebuggerInfo : public IUnknown
-    {
-    public:
-        virtual HRESULT STDMETHODCALLTYPE IsDebuggerAttached( 
-            /* [out] */ BOOL *pbAttached) = 0;
-        
-    };
-    
-    
-#else  /* C style interface */
-
-    typedef struct IDebuggerInfoVtbl
-    {
-        BEGIN_INTERFACE
-        
-        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            IDebuggerInfo * This,
-            /* [in] */ REFIID riid,
-            /* [annotation][iid_is][out] */ 
-            _COM_Outptr_  void **ppvObject);
-        
-        ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            IDebuggerInfo * This);
-        
-        ULONG ( STDMETHODCALLTYPE *Release )( 
-            IDebuggerInfo * This);
-        
-        HRESULT ( STDMETHODCALLTYPE *IsDebuggerAttached )( 
-            IDebuggerInfo * This,
-            /* [out] */ BOOL *pbAttached);
-        
-        END_INTERFACE
-    } IDebuggerInfoVtbl;
-
-    interface IDebuggerInfo
-    {
-        CONST_VTBL struct IDebuggerInfoVtbl *lpVtbl;
-    };
-
-    
-
-#ifdef COBJMACROS
-
-
-#define IDebuggerInfo_QueryInterface(This,riid,ppvObject)      \
-    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
-
-#define IDebuggerInfo_AddRef(This)     \
-    ( (This)->lpVtbl -> AddRef(This) ) 
-
-#define IDebuggerInfo_Release(This)    \
-    ( (This)->lpVtbl -> Release(This) ) 
-
-
-#define IDebuggerInfo_IsDebuggerAttached(This,pbAttached)      \
-    ( (This)->lpVtbl -> IsDebuggerAttached(This,pbAttached) ) 
-
-#endif /* COBJMACROS */
-
-
-#endif         /* C style interface */
-
-
-
-
-#endif         /* __IDebuggerInfo_INTERFACE_DEFINED__ */
-
-
-/* interface __MIDL_itf_mscoree_0000_0002 */
-/* [local] */ 
-
-typedef void *HDOMAINENUM;
-
-typedef /* [public] */ 
-enum __MIDL___MIDL_itf_mscoree_0000_0002_0001
-    {
-        eMemoryAvailableLow    = 1,
-        eMemoryAvailableNeutral        = 2,
-        eMemoryAvailableHigh   = 3
-    }  EMemoryAvailable;
-
-typedef /* [public] */ 
-enum __MIDL___MIDL_itf_mscoree_0000_0002_0002
-    {
-        eTaskCritical  = 0,
-        eAppDomainCritical     = 1,
-        eProcessCritical       = 2
-    }  EMemoryCriticalLevel;
-
 typedef /* [public] */ 
-enum __MIDL___MIDL_itf_mscoree_0000_0002_0003
+enum __MIDL___MIDL_itf_mscoree_0000_0000_0003
     {
         WAIT_MSGPUMP   = 0x1,
         WAIT_ALERTABLE = 0x2,
         WAIT_NOTINDEADLOCK     = 0x4
     }  WAIT_OPTION;
 
-typedef UINT64 TASKID;
-
-typedef DWORD CONNID;
-
 typedef 
 enum ETaskType
     {
@@ -583,15 +150,7 @@ enum ETaskType
     }  ETaskType;
 
 typedef /* [public] */ 
-enum __MIDL___MIDL_itf_mscoree_0000_0002_0004
-    {
-        eSymbolReadingNever    = 0,
-        eSymbolReadingAlways   = 1,
-        eSymbolReadingFullTrustOnly    = 2
-    }  ESymbolReadingPolicy;
-
-typedef /* [public][public] */ 
-enum __MIDL___MIDL_itf_mscoree_0000_0002_0005
+enum __MIDL___MIDL_itf_mscoree_0000_0000_0004
     {
         DUMP_FLAVOR_Mini       = 0,
         DUMP_FLAVOR_CriticalCLRState   = 1,
@@ -599,27 +158,12 @@ enum __MIDL___MIDL_itf_mscoree_0000_0002_0005
         DUMP_FLAVOR_Default    = DUMP_FLAVOR_Mini
     }  ECustomDumpFlavor;
 
-typedef /* [public][public][public] */ 
-enum __MIDL___MIDL_itf_mscoree_0000_0002_0006
-    {
-        DUMP_ITEM_None = 0
-    }  ECustomDumpItemKind;
-
-typedef /* [public][public] */ struct __MIDL___MIDL_itf_mscoree_0000_0002_0007
-    {
-    ECustomDumpItemKind itemKind;
-    union 
-        {
-        UINT_PTR pReserved;
-        }      ;
-    }  CustomDumpItem;
-
 #define        BucketParamsCount       ( 10 )
 
 #define        BucketParamLength       ( 255 )
 
 typedef /* [public] */ 
-enum __MIDL___MIDL_itf_mscoree_0000_0002_0009
+enum __MIDL___MIDL_itf_mscoree_0000_0000_0005
     {
         Parameter1     = 0,
         Parameter2     = ( Parameter1 + 1 ) ,
@@ -640,253 +184,8 @@ typedef struct _BucketParameters
     WCHAR pszParams[ 10 ][ 255 ];
     }  BucketParameters;
 
-
-
-extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0002_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0002_v0_0_s_ifspec;
-
-#ifndef __ICLRErrorReportingManager_INTERFACE_DEFINED__
-#define __ICLRErrorReportingManager_INTERFACE_DEFINED__
-
-/* interface ICLRErrorReportingManager */
-/* [object][local][unique][helpstring][version][uuid] */ 
-
-
-EXTERN_C const IID IID_ICLRErrorReportingManager;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-    
-    MIDL_INTERFACE("980D2F1A-BF79-4c08-812A-BB9778928F78")
-    ICLRErrorReportingManager : public IUnknown
-    {
-    public:
-        virtual HRESULT STDMETHODCALLTYPE GetBucketParametersForCurrentException( 
-            /* [out] */ BucketParameters *pParams) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE BeginCustomDump( 
-            /* [in] */ ECustomDumpFlavor dwFlavor,
-            /* [in] */ DWORD dwNumItems,
-            /* [length_is][size_is][in] */ CustomDumpItem *items,
-            DWORD dwReserved) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE EndCustomDump( void) = 0;
-        
-    };
-    
-    
-#else  /* C style interface */
-
-    typedef struct ICLRErrorReportingManagerVtbl
-    {
-        BEGIN_INTERFACE
-        
-        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            ICLRErrorReportingManager * This,
-            /* [in] */ REFIID riid,
-            /* [annotation][iid_is][out] */ 
-            _COM_Outptr_  void **ppvObject);
-        
-        ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            ICLRErrorReportingManager * This);
-        
-        ULONG ( STDMETHODCALLTYPE *Release )( 
-            ICLRErrorReportingManager * This);
-        
-        HRESULT ( STDMETHODCALLTYPE *GetBucketParametersForCurrentException )( 
-            ICLRErrorReportingManager * This,
-            /* [out] */ BucketParameters *pParams);
-        
-        HRESULT ( STDMETHODCALLTYPE *BeginCustomDump )( 
-            ICLRErrorReportingManager * This,
-            /* [in] */ ECustomDumpFlavor dwFlavor,
-            /* [in] */ DWORD dwNumItems,
-            /* [length_is][size_is][in] */ CustomDumpItem *items,
-            DWORD dwReserved);
-        
-        HRESULT ( STDMETHODCALLTYPE *EndCustomDump )( 
-            ICLRErrorReportingManager * This);
-        
-        END_INTERFACE
-    } ICLRErrorReportingManagerVtbl;
-
-    interface ICLRErrorReportingManager
-    {
-        CONST_VTBL struct ICLRErrorReportingManagerVtbl *lpVtbl;
-    };
-
-    
-
-#ifdef COBJMACROS
-
-
-#define ICLRErrorReportingManager_QueryInterface(This,riid,ppvObject)  \
-    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
-
-#define ICLRErrorReportingManager_AddRef(This) \
-    ( (This)->lpVtbl -> AddRef(This) ) 
-
-#define ICLRErrorReportingManager_Release(This)        \
-    ( (This)->lpVtbl -> Release(This) ) 
-
-
-#define ICLRErrorReportingManager_GetBucketParametersForCurrentException(This,pParams) \
-    ( (This)->lpVtbl -> GetBucketParametersForCurrentException(This,pParams) ) 
-
-#define ICLRErrorReportingManager_BeginCustomDump(This,dwFlavor,dwNumItems,items,dwReserved)   \
-    ( (This)->lpVtbl -> BeginCustomDump(This,dwFlavor,dwNumItems,items,dwReserved) ) 
-
-#define ICLRErrorReportingManager_EndCustomDump(This)  \
-    ( (This)->lpVtbl -> EndCustomDump(This) ) 
-
-#endif /* COBJMACROS */
-
-
-#endif         /* C style interface */
-
-
-
-
-#endif         /* __ICLRErrorReportingManager_INTERFACE_DEFINED__ */
-
-
-/* interface __MIDL_itf_mscoree_0000_0003 */
-/* [local] */ 
-
-typedef /* [public][public] */ 
-enum __MIDL___MIDL_itf_mscoree_0000_0003_0001
-    {
-        ApplicationID  = 0x1,
-        InstanceID     = 0x2
-    }  ApplicationDataKey;
-
-
-
-extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0003_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0003_v0_0_s_ifspec;
-
-#ifndef __ICLRErrorReportingManager2_INTERFACE_DEFINED__
-#define __ICLRErrorReportingManager2_INTERFACE_DEFINED__
-
-/* interface ICLRErrorReportingManager2 */
-/* [object][local][unique][helpstring][version][uuid] */ 
-
-
-EXTERN_C const IID IID_ICLRErrorReportingManager2;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-    
-    MIDL_INTERFACE("C68F63B1-4D8B-4E0B-9564-9D2EFE2FA18C")
-    ICLRErrorReportingManager2 : public ICLRErrorReportingManager
-    {
-    public:
-        virtual HRESULT STDMETHODCALLTYPE SetApplicationData( 
-            /* [in] */ ApplicationDataKey key,
-            /* [in] */ const WCHAR *pValue) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE SetBucketParametersForUnhandledException( 
-            /* [in] */ const BucketParameters *pBucketParams,
-            /* [out] */ DWORD *pCountParams) = 0;
-        
-    };
-    
-    
-#else  /* C style interface */
-
-    typedef struct ICLRErrorReportingManager2Vtbl
-    {
-        BEGIN_INTERFACE
-        
-        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            ICLRErrorReportingManager2 * This,
-            /* [in] */ REFIID riid,
-            /* [annotation][iid_is][out] */ 
-            _COM_Outptr_  void **ppvObject);
-        
-        ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            ICLRErrorReportingManager2 * This);
-        
-        ULONG ( STDMETHODCALLTYPE *Release )( 
-            ICLRErrorReportingManager2 * This);
-        
-        HRESULT ( STDMETHODCALLTYPE *GetBucketParametersForCurrentException )( 
-            ICLRErrorReportingManager2 * This,
-            /* [out] */ BucketParameters *pParams);
-        
-        HRESULT ( STDMETHODCALLTYPE *BeginCustomDump )( 
-            ICLRErrorReportingManager2 * This,
-            /* [in] */ ECustomDumpFlavor dwFlavor,
-            /* [in] */ DWORD dwNumItems,
-            /* [length_is][size_is][in] */ CustomDumpItem *items,
-            DWORD dwReserved);
-        
-        HRESULT ( STDMETHODCALLTYPE *EndCustomDump )( 
-            ICLRErrorReportingManager2 * This);
-        
-        HRESULT ( STDMETHODCALLTYPE *SetApplicationData )( 
-            ICLRErrorReportingManager2 * This,
-            /* [in] */ ApplicationDataKey key,
-            /* [in] */ const WCHAR *pValue);
-        
-        HRESULT ( STDMETHODCALLTYPE *SetBucketParametersForUnhandledException )( 
-            ICLRErrorReportingManager2 * This,
-            /* [in] */ const BucketParameters *pBucketParams,
-            /* [out] */ DWORD *pCountParams);
-        
-        END_INTERFACE
-    } ICLRErrorReportingManager2Vtbl;
-
-    interface ICLRErrorReportingManager2
-    {
-        CONST_VTBL struct ICLRErrorReportingManager2Vtbl *lpVtbl;
-    };
-
-    
-
-#ifdef COBJMACROS
-
-
-#define ICLRErrorReportingManager2_QueryInterface(This,riid,ppvObject) \
-    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
-
-#define ICLRErrorReportingManager2_AddRef(This)        \
-    ( (This)->lpVtbl -> AddRef(This) ) 
-
-#define ICLRErrorReportingManager2_Release(This)       \
-    ( (This)->lpVtbl -> Release(This) ) 
-
-
-#define ICLRErrorReportingManager2_GetBucketParametersForCurrentException(This,pParams)        \
-    ( (This)->lpVtbl -> GetBucketParametersForCurrentException(This,pParams) ) 
-
-#define ICLRErrorReportingManager2_BeginCustomDump(This,dwFlavor,dwNumItems,items,dwReserved)  \
-    ( (This)->lpVtbl -> BeginCustomDump(This,dwFlavor,dwNumItems,items,dwReserved) ) 
-
-#define ICLRErrorReportingManager2_EndCustomDump(This) \
-    ( (This)->lpVtbl -> EndCustomDump(This) ) 
-
-
-#define ICLRErrorReportingManager2_SetApplicationData(This,key,pValue) \
-    ( (This)->lpVtbl -> SetApplicationData(This,key,pValue) ) 
-
-#define ICLRErrorReportingManager2_SetBucketParametersForUnhandledException(This,pBucketParams,pCountParams)   \
-    ( (This)->lpVtbl -> SetBucketParametersForUnhandledException(This,pBucketParams,pCountParams) ) 
-
-#endif /* COBJMACROS */
-
-
-#endif         /* C style interface */
-
-
-
-
-#endif         /* __ICLRErrorReportingManager2_INTERFACE_DEFINED__ */
-
-
-/* interface __MIDL_itf_mscoree_0000_0004 */
-/* [local] */ 
-
-typedef /* [public][public][public][public][public] */ 
-enum __MIDL___MIDL_itf_mscoree_0000_0004_0001
+typedef /* [public] */ 
+enum __MIDL___MIDL_itf_mscoree_0000_0000_0006
     {
         OPR_ThreadAbort        = 0,
         OPR_ThreadRudeAbortInNonCriticalRegion = ( OPR_ThreadAbort + 1 ) ,
@@ -896,1607 +195,173 @@ enum __MIDL___MIDL_itf_mscoree_0000_0004_0001
         OPR_ProcessExit        = ( OPR_AppDomainRudeUnload + 1 ) ,
         OPR_FinalizerRun       = ( OPR_ProcessExit + 1 ) ,
         MaxClrOperation        = ( OPR_FinalizerRun + 1 ) 
-    }  EClrOperation;
-
-typedef /* [public][public] */ 
-enum __MIDL___MIDL_itf_mscoree_0000_0004_0002
-    {
-        FAIL_NonCriticalResource       = 0,
-        FAIL_CriticalResource  = ( FAIL_NonCriticalResource + 1 ) ,
-        FAIL_FatalRuntime      = ( FAIL_CriticalResource + 1 ) ,
-        FAIL_OrphanedLock      = ( FAIL_FatalRuntime + 1 ) ,
-        FAIL_StackOverflow     = ( FAIL_OrphanedLock + 1 ) ,
-        FAIL_AccessViolation   = ( FAIL_StackOverflow + 1 ) ,
-        FAIL_CodeContract      = ( FAIL_AccessViolation + 1 ) ,
-        MaxClrFailure  = ( FAIL_CodeContract + 1 ) 
-    }  EClrFailure;
-
-typedef /* [public][public] */ 
-enum __MIDL___MIDL_itf_mscoree_0000_0004_0003
-    {
-        eRuntimeDeterminedPolicy       = 0,
-        eHostDeterminedPolicy  = ( eRuntimeDeterminedPolicy + 1 ) 
-    }  EClrUnhandledException;
-
-typedef /* [public][public][public][public][public] */ 
-enum __MIDL___MIDL_itf_mscoree_0000_0004_0004
-    {
-        eNoAction      = 0,
-        eThrowException        = ( eNoAction + 1 ) ,
-        eAbortThread   = ( eThrowException + 1 ) ,
-        eRudeAbortThread       = ( eAbortThread + 1 ) ,
-        eUnloadAppDomain       = ( eRudeAbortThread + 1 ) ,
-        eRudeUnloadAppDomain   = ( eUnloadAppDomain + 1 ) ,
-        eExitProcess   = ( eRudeUnloadAppDomain + 1 ) ,
-        eFastExitProcess       = ( eExitProcess + 1 ) ,
-        eRudeExitProcess       = ( eFastExitProcess + 1 ) ,
-        eDisableRuntime        = ( eRudeExitProcess + 1 ) ,
-        MaxPolicyAction        = ( eDisableRuntime + 1 ) 
-    }  EPolicyAction;
-
-
-
-extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0004_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0004_v0_0_s_ifspec;
-
-#ifndef __ICLRPolicyManager_INTERFACE_DEFINED__
-#define __ICLRPolicyManager_INTERFACE_DEFINED__
-
-/* interface ICLRPolicyManager */
-/* [object][local][unique][helpstring][version][uuid] */ 
-
-
-EXTERN_C const IID IID_ICLRPolicyManager;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-    
-    MIDL_INTERFACE("7D290010-D781-45da-A6F8-AA5D711A730E")
-    ICLRPolicyManager : public IUnknown
-    {
-    public:
-        virtual HRESULT STDMETHODCALLTYPE SetDefaultAction( 
-            /* [in] */ EClrOperation operation,
-            /* [in] */ EPolicyAction action) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE SetTimeout( 
-            /* [in] */ EClrOperation operation,
-            /* [in] */ DWORD dwMilliseconds) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE SetActionOnTimeout( 
-            /* [in] */ EClrOperation operation,
-            /* [in] */ EPolicyAction action) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE SetTimeoutAndAction( 
-            /* [in] */ EClrOperation operation,
-            /* [in] */ DWORD dwMilliseconds,
-            /* [in] */ EPolicyAction action) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE SetActionOnFailure( 
-            /* [in] */ EClrFailure failure,
-            /* [in] */ EPolicyAction action) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE SetUnhandledExceptionPolicy( 
-            /* [in] */ EClrUnhandledException policy) = 0;
-        
-    };
-    
-    
-#else  /* C style interface */
-
-    typedef struct ICLRPolicyManagerVtbl
-    {
-        BEGIN_INTERFACE
-        
-        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            ICLRPolicyManager * This,
-            /* [in] */ REFIID riid,
-            /* [annotation][iid_is][out] */ 
-            _COM_Outptr_  void **ppvObject);
-        
-        ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            ICLRPolicyManager * This);
-        
-        ULONG ( STDMETHODCALLTYPE *Release )( 
-            ICLRPolicyManager * This);
-        
-        HRESULT ( STDMETHODCALLTYPE *SetDefaultAction )( 
-            ICLRPolicyManager * This,
-            /* [in] */ EClrOperation operation,
-            /* [in] */ EPolicyAction action);
-        
-        HRESULT ( STDMETHODCALLTYPE *SetTimeout )( 
-            ICLRPolicyManager * This,
-            /* [in] */ EClrOperation operation,
-            /* [in] */ DWORD dwMilliseconds);
-        
-        HRESULT ( STDMETHODCALLTYPE *SetActionOnTimeout )( 
-            ICLRPolicyManager * This,
-            /* [in] */ EClrOperation operation,
-            /* [in] */ EPolicyAction action);
-        
-        HRESULT ( STDMETHODCALLTYPE *SetTimeoutAndAction )( 
-            ICLRPolicyManager * This,
-            /* [in] */ EClrOperation operation,
-            /* [in] */ DWORD dwMilliseconds,
-            /* [in] */ EPolicyAction action);
-        
-        HRESULT ( STDMETHODCALLTYPE *SetActionOnFailure )( 
-            ICLRPolicyManager * This,
-            /* [in] */ EClrFailure failure,
-            /* [in] */ EPolicyAction action);
-        
-        HRESULT ( STDMETHODCALLTYPE *SetUnhandledExceptionPolicy )( 
-            ICLRPolicyManager * This,
-            /* [in] */ EClrUnhandledException policy);
-        
-        END_INTERFACE
-    } ICLRPolicyManagerVtbl;
-
-    interface ICLRPolicyManager
-    {
-        CONST_VTBL struct ICLRPolicyManagerVtbl *lpVtbl;
-    };
-
-    
-
-#ifdef COBJMACROS
-
-
-#define ICLRPolicyManager_QueryInterface(This,riid,ppvObject)  \
-    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
-
-#define ICLRPolicyManager_AddRef(This) \
-    ( (This)->lpVtbl -> AddRef(This) ) 
-
-#define ICLRPolicyManager_Release(This)        \
-    ( (This)->lpVtbl -> Release(This) ) 
-
-
-#define ICLRPolicyManager_SetDefaultAction(This,operation,action)      \
-    ( (This)->lpVtbl -> SetDefaultAction(This,operation,action) ) 
-
-#define ICLRPolicyManager_SetTimeout(This,operation,dwMilliseconds)    \
-    ( (This)->lpVtbl -> SetTimeout(This,operation,dwMilliseconds) ) 
-
-#define ICLRPolicyManager_SetActionOnTimeout(This,operation,action)    \
-    ( (This)->lpVtbl -> SetActionOnTimeout(This,operation,action) ) 
-
-#define ICLRPolicyManager_SetTimeoutAndAction(This,operation,dwMilliseconds,action)    \
-    ( (This)->lpVtbl -> SetTimeoutAndAction(This,operation,dwMilliseconds,action) ) 
-
-#define ICLRPolicyManager_SetActionOnFailure(This,failure,action)      \
-    ( (This)->lpVtbl -> SetActionOnFailure(This,failure,action) ) 
-
-#define ICLRPolicyManager_SetUnhandledExceptionPolicy(This,policy)     \
-    ( (This)->lpVtbl -> SetUnhandledExceptionPolicy(This,policy) ) 
-
-#endif /* COBJMACROS */
-
-
-#endif         /* C style interface */
-
-
-
-
-#endif         /* __ICLRPolicyManager_INTERFACE_DEFINED__ */
-
-
-/* interface __MIDL_itf_mscoree_0000_0005 */
-/* [local] */ 
-
-typedef /* [public] */ 
-enum __MIDL___MIDL_itf_mscoree_0000_0005_0001
-    {
-        Event_DomainUnload     = 0,
-        Event_ClrDisabled      = ( Event_DomainUnload + 1 ) ,
-        Event_MDAFired = ( Event_ClrDisabled + 1 ) ,
-        Event_StackOverflow    = ( Event_MDAFired + 1 ) ,
-        MaxClrEvent    = ( Event_StackOverflow + 1 ) 
-    }  EClrEvent;
-
-typedef struct _MDAInfo
-    {
-    LPCWSTR lpMDACaption;
-    LPCWSTR lpMDAMessage;
-    LPCWSTR lpStackTrace;
-    }  MDAInfo;
-
-typedef /* [public] */ 
-enum __MIDL___MIDL_itf_mscoree_0000_0005_0002
-    {
-        SO_Managed     = 0,
-        SO_ClrEngine   = ( SO_Managed + 1 ) ,
-        SO_Other       = ( SO_ClrEngine + 1 ) 
-    }  StackOverflowType;
-
-typedef struct _StackOverflowInfo
-{
-    StackOverflowType soType;
-    EXCEPTION_POINTERS *pExceptionInfo;
-} StackOverflowInfo;
-
-
-extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0005_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0005_v0_0_s_ifspec;
-
-#ifndef __ICLRGCManager_INTERFACE_DEFINED__
-#define __ICLRGCManager_INTERFACE_DEFINED__
-
-/* interface ICLRGCManager */
-/* [object][local][unique][version][uuid] */ 
-
-
-EXTERN_C const IID IID_ICLRGCManager;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-    
-    MIDL_INTERFACE("54D9007E-A8E2-4885-B7BF-F998DEEE4F2A")
-    ICLRGCManager : public IUnknown
-    {
-    public:
-        virtual HRESULT STDMETHODCALLTYPE Collect( 
-            /* [in] */ LONG Generation) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE GetStats( 
-            /* [out][in] */ COR_GC_STATS *pStats) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE SetGCStartupLimits( 
-            /* [in] */ DWORD SegmentSize,
-            /* [in] */ DWORD MaxGen0Size) = 0;
-        
-    };
-    
-    
-#else  /* C style interface */
-
-    typedef struct ICLRGCManagerVtbl
-    {
-        BEGIN_INTERFACE
-        
-        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            ICLRGCManager * This,
-            /* [in] */ REFIID riid,
-            /* [annotation][iid_is][out] */ 
-            _COM_Outptr_  void **ppvObject);
-        
-        ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            ICLRGCManager * This);
-        
-        ULONG ( STDMETHODCALLTYPE *Release )( 
-            ICLRGCManager * This);
-        
-        HRESULT ( STDMETHODCALLTYPE *Collect )( 
-            ICLRGCManager * This,
-            /* [in] */ LONG Generation);
-        
-        HRESULT ( STDMETHODCALLTYPE *GetStats )( 
-            ICLRGCManager * This,
-            /* [out][in] */ COR_GC_STATS *pStats);
-        
-        HRESULT ( STDMETHODCALLTYPE *SetGCStartupLimits )( 
-            ICLRGCManager * This,
-            /* [in] */ DWORD SegmentSize,
-            /* [in] */ DWORD MaxGen0Size);
-        
-        END_INTERFACE
-    } ICLRGCManagerVtbl;
-
-    interface ICLRGCManager
-    {
-        CONST_VTBL struct ICLRGCManagerVtbl *lpVtbl;
-    };
-
-    
-
-#ifdef COBJMACROS
-
-
-#define ICLRGCManager_QueryInterface(This,riid,ppvObject)      \
-    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
-
-#define ICLRGCManager_AddRef(This)     \
-    ( (This)->lpVtbl -> AddRef(This) ) 
-
-#define ICLRGCManager_Release(This)    \
-    ( (This)->lpVtbl -> Release(This) ) 
-
-
-#define ICLRGCManager_Collect(This,Generation) \
-    ( (This)->lpVtbl -> Collect(This,Generation) ) 
-
-#define ICLRGCManager_GetStats(This,pStats)    \
-    ( (This)->lpVtbl -> GetStats(This,pStats) ) 
-
-#define ICLRGCManager_SetGCStartupLimits(This,SegmentSize,MaxGen0Size) \
-    ( (This)->lpVtbl -> SetGCStartupLimits(This,SegmentSize,MaxGen0Size) ) 
-
-#endif /* COBJMACROS */
-
-
-#endif         /* C style interface */
-
-
-
-
-#endif         /* __ICLRGCManager_INTERFACE_DEFINED__ */
-
-
-#ifndef __ICLRGCManager2_INTERFACE_DEFINED__
-#define __ICLRGCManager2_INTERFACE_DEFINED__
-
-/* interface ICLRGCManager2 */
-/* [object][local][unique][version][uuid] */ 
-
-
-EXTERN_C const IID IID_ICLRGCManager2;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-    
-    MIDL_INTERFACE("0603B793-A97A-4712-9CB4-0CD1C74C0F7C")
-    ICLRGCManager2 : public ICLRGCManager
-    {
-    public:
-        virtual HRESULT STDMETHODCALLTYPE SetGCStartupLimitsEx( 
-            /* [in] */ SIZE_T SegmentSize,
-            /* [in] */ SIZE_T MaxGen0Size) = 0;
-        
-    };
-    
-    
-#else  /* C style interface */
-
-    typedef struct ICLRGCManager2Vtbl
-    {
-        BEGIN_INTERFACE
-        
-        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            ICLRGCManager2 * This,
-            /* [in] */ REFIID riid,
-            /* [annotation][iid_is][out] */ 
-            _COM_Outptr_  void **ppvObject);
-        
-        ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            ICLRGCManager2 * This);
-        
-        ULONG ( STDMETHODCALLTYPE *Release )( 
-            ICLRGCManager2 * This);
-        
-        HRESULT ( STDMETHODCALLTYPE *Collect )( 
-            ICLRGCManager2 * This,
-            /* [in] */ LONG Generation);
-        
-        HRESULT ( STDMETHODCALLTYPE *GetStats )( 
-            ICLRGCManager2 * This,
-            /* [out][in] */ COR_GC_STATS *pStats);
-        
-        HRESULT ( STDMETHODCALLTYPE *SetGCStartupLimits )( 
-            ICLRGCManager2 * This,
-            /* [in] */ DWORD SegmentSize,
-            /* [in] */ DWORD MaxGen0Size);
-        
-        HRESULT ( STDMETHODCALLTYPE *SetGCStartupLimitsEx )( 
-            ICLRGCManager2 * This,
-            /* [in] */ SIZE_T SegmentSize,
-            /* [in] */ SIZE_T MaxGen0Size);
-        
-        END_INTERFACE
-    } ICLRGCManager2Vtbl;
-
-    interface ICLRGCManager2
-    {
-        CONST_VTBL struct ICLRGCManager2Vtbl *lpVtbl;
-    };
-
-    
-
-#ifdef COBJMACROS
-
-
-#define ICLRGCManager2_QueryInterface(This,riid,ppvObject)     \
-    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
-
-#define ICLRGCManager2_AddRef(This)    \
-    ( (This)->lpVtbl -> AddRef(This) ) 
-
-#define ICLRGCManager2_Release(This)   \
-    ( (This)->lpVtbl -> Release(This) ) 
-
-
-#define ICLRGCManager2_Collect(This,Generation)        \
-    ( (This)->lpVtbl -> Collect(This,Generation) ) 
-
-#define ICLRGCManager2_GetStats(This,pStats)   \
-    ( (This)->lpVtbl -> GetStats(This,pStats) ) 
-
-#define ICLRGCManager2_SetGCStartupLimits(This,SegmentSize,MaxGen0Size)        \
-    ( (This)->lpVtbl -> SetGCStartupLimits(This,SegmentSize,MaxGen0Size) ) 
-
-
-#define ICLRGCManager2_SetGCStartupLimitsEx(This,SegmentSize,MaxGen0Size)      \
-    ( (This)->lpVtbl -> SetGCStartupLimitsEx(This,SegmentSize,MaxGen0Size) ) 
-
-#endif /* COBJMACROS */
-
-
-#endif         /* C style interface */
-
-
-
-
-#endif         /* __ICLRGCManager2_INTERFACE_DEFINED__ */
-
-
-/* interface __MIDL_itf_mscoree_0000_0007 */
-/* [local] */ 
-
-typedef /* [public] */ 
-enum __MIDL___MIDL_itf_mscoree_0000_0007_0001
-    {
-        ePolicyLevelNone       = 0,
-        ePolicyLevelRetargetable       = 0x1,
-        ePolicyUnifiedToCLR    = 0x2,
-        ePolicyLevelApp        = 0x4,
-        ePolicyLevelPublisher  = 0x8,
-        ePolicyLevelHost       = 0x10,
-        ePolicyLevelAdmin      = 0x20,
-        ePolicyPortability     = 0x40
-    }  EBindPolicyLevels;
-
-typedef struct _AssemblyBindInfo
-    {
-    DWORD dwAppDomainId;
-    LPCWSTR lpReferencedIdentity;
-    LPCWSTR lpPostPolicyIdentity;
-    DWORD ePolicyLevel;
-    }  AssemblyBindInfo;
-
-typedef struct _ModuleBindInfo
-    {
-    DWORD dwAppDomainId;
-    LPCWSTR lpAssemblyIdentity;
-    LPCWSTR lpModuleName;
-    }  ModuleBindInfo;
-
-typedef 
-enum _HostApplicationPolicy
-    {
-        HOST_APPLICATION_BINDING_POLICY        = 1
-    }  EHostApplicationPolicy;
-
-STDAPI GetCLRIdentityManager(REFIID riid, IUnknown **ppManager);
-EXTERN_GUID(IID_IHostControl, 0x02CA073C, 0x7079, 0x4860, 0x88, 0x0A, 0xC2, 0xF7, 0xA4, 0x49, 0xC9, 0x91);
-
-
-extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0007_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0007_v0_0_s_ifspec;
-
-#ifndef __IHostControl_INTERFACE_DEFINED__
-#define __IHostControl_INTERFACE_DEFINED__
-
-/* interface IHostControl */
-/* [object][local][unique][helpstring][version][uuid] */ 
-
-
-EXTERN_C const IID IID_IHostControl;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-    
-    MIDL_INTERFACE("02CA073C-7079-4860-880A-C2F7A449C991")
-    IHostControl : public IUnknown
-    {
-    public:
-        virtual HRESULT STDMETHODCALLTYPE GetHostManager( 
-            /* [in] */ REFIID riid,
-            /* [out] */ void **ppObject) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE SetAppDomainManager( 
-            /* [in] */ DWORD dwAppDomainID,
-            /* [in] */ IUnknown *pUnkAppDomainManager) = 0;
-        
-    };
-    
-    
-#else  /* C style interface */
-
-    typedef struct IHostControlVtbl
-    {
-        BEGIN_INTERFACE
-        
-        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            IHostControl * This,
-            /* [in] */ REFIID riid,
-            /* [annotation][iid_is][out] */ 
-            _COM_Outptr_  void **ppvObject);
-        
-        ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            IHostControl * This);
-        
-        ULONG ( STDMETHODCALLTYPE *Release )( 
-            IHostControl * This);
-        
-        HRESULT ( STDMETHODCALLTYPE *GetHostManager )( 
-            IHostControl * This,
-            /* [in] */ REFIID riid,
-            /* [out] */ void **ppObject);
-        
-        HRESULT ( STDMETHODCALLTYPE *SetAppDomainManager )( 
-            IHostControl * This,
-            /* [in] */ DWORD dwAppDomainID,
-            /* [in] */ IUnknown *pUnkAppDomainManager);
-        
-        END_INTERFACE
-    } IHostControlVtbl;
-
-    interface IHostControl
-    {
-        CONST_VTBL struct IHostControlVtbl *lpVtbl;
-    };
-
-    
-
-#ifdef COBJMACROS
-
-
-#define IHostControl_QueryInterface(This,riid,ppvObject)       \
-    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
-
-#define IHostControl_AddRef(This)      \
-    ( (This)->lpVtbl -> AddRef(This) ) 
-
-#define IHostControl_Release(This)     \
-    ( (This)->lpVtbl -> Release(This) ) 
-
-
-#define IHostControl_GetHostManager(This,riid,ppObject)        \
-    ( (This)->lpVtbl -> GetHostManager(This,riid,ppObject) ) 
-
-#define IHostControl_SetAppDomainManager(This,dwAppDomainID,pUnkAppDomainManager)      \
-    ( (This)->lpVtbl -> SetAppDomainManager(This,dwAppDomainID,pUnkAppDomainManager) ) 
-
-#endif /* COBJMACROS */
-
-
-#endif         /* C style interface */
-
-
-
-
-#endif         /* __IHostControl_INTERFACE_DEFINED__ */
-
-
-/* interface __MIDL_itf_mscoree_0000_0008 */
-/* [local] */ 
-
-EXTERN_GUID(IID_ICLRControl, 0x9065597E, 0xD1A1, 0x4fb2, 0xB6, 0xBA, 0x7E, 0x1F, 0xCE, 0x23, 0x0F, 0x61);
-
-
-extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0008_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0008_v0_0_s_ifspec;
-
-#ifndef __ICLRControl_INTERFACE_DEFINED__
-#define __ICLRControl_INTERFACE_DEFINED__
-
-/* interface ICLRControl */
-/* [object][local][unique][helpstring][version][uuid] */ 
-
-
-EXTERN_C const IID IID_ICLRControl;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-    
-    MIDL_INTERFACE("9065597E-D1A1-4fb2-B6BA-7E1FCE230F61")
-    ICLRControl : public IUnknown
-    {
-    public:
-        virtual HRESULT STDMETHODCALLTYPE GetCLRManager( 
-            /* [in] */ REFIID riid,
-            /* [out] */ void **ppObject) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE SetAppDomainManagerType( 
-            /* [in] */ LPCWSTR pwzAppDomainManagerAssembly,
-            /* [in] */ LPCWSTR pwzAppDomainManagerType) = 0;
-        
-    };
-    
-    
-#else  /* C style interface */
-
-    typedef struct ICLRControlVtbl
-    {
-        BEGIN_INTERFACE
-        
-        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            ICLRControl * This,
-            /* [in] */ REFIID riid,
-            /* [annotation][iid_is][out] */ 
-            _COM_Outptr_  void **ppvObject);
-        
-        ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            ICLRControl * This);
-        
-        ULONG ( STDMETHODCALLTYPE *Release )( 
-            ICLRControl * This);
-        
-        HRESULT ( STDMETHODCALLTYPE *GetCLRManager )( 
-            ICLRControl * This,
-            /* [in] */ REFIID riid,
-            /* [out] */ void **ppObject);
-        
-        HRESULT ( STDMETHODCALLTYPE *SetAppDomainManagerType )( 
-            ICLRControl * This,
-            /* [in] */ LPCWSTR pwzAppDomainManagerAssembly,
-            /* [in] */ LPCWSTR pwzAppDomainManagerType);
-        
-        END_INTERFACE
-    } ICLRControlVtbl;
-
-    interface ICLRControl
-    {
-        CONST_VTBL struct ICLRControlVtbl *lpVtbl;
-    };
-
-    
-
-#ifdef COBJMACROS
-
-
-#define ICLRControl_QueryInterface(This,riid,ppvObject)        \
-    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
-
-#define ICLRControl_AddRef(This)       \
-    ( (This)->lpVtbl -> AddRef(This) ) 
-
-#define ICLRControl_Release(This)      \
-    ( (This)->lpVtbl -> Release(This) ) 
-
-
-#define ICLRControl_GetCLRManager(This,riid,ppObject)  \
-    ( (This)->lpVtbl -> GetCLRManager(This,riid,ppObject) ) 
-
-#define ICLRControl_SetAppDomainManagerType(This,pwzAppDomainManagerAssembly,pwzAppDomainManagerType)  \
-    ( (This)->lpVtbl -> SetAppDomainManagerType(This,pwzAppDomainManagerAssembly,pwzAppDomainManagerType) ) 
-
-#endif /* COBJMACROS */
-
-
-#endif         /* C style interface */
-
-
-
-
-#endif         /* __ICLRControl_INTERFACE_DEFINED__ */
-
-
-#ifndef __ICLRRuntimeHost_INTERFACE_DEFINED__
-#define __ICLRRuntimeHost_INTERFACE_DEFINED__
-
-/* interface ICLRRuntimeHost */
-/* [object][local][unique][helpstring][version][uuid] */ 
-
-
-EXTERN_C const IID IID_ICLRRuntimeHost;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-    
-    MIDL_INTERFACE("90F1A06C-7712-4762-86B5-7A5EBA6BDB02")
-    ICLRRuntimeHost : public IUnknown
-    {
-    public:
-        virtual HRESULT STDMETHODCALLTYPE Start( void) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE Stop( void) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE SetHostControl( 
-            /* [in] */ IHostControl *pHostControl) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE GetCLRControl( 
-            /* [out] */ ICLRControl **pCLRControl) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE UnloadAppDomain( 
-            /* [in] */ DWORD dwAppDomainId,
-            /* [in] */ BOOL fWaitUntilDone) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE ExecuteInAppDomain( 
-            /* [in] */ DWORD dwAppDomainId,
-            /* [in] */ FExecuteInAppDomainCallback pCallback,
-            /* [in] */ void *cookie) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE GetCurrentAppDomainId( 
-            /* [out] */ DWORD *pdwAppDomainId) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE ExecuteApplication( 
-            /* [in] */ LPCWSTR pwzAppFullName,
-            /* [in] */ DWORD dwManifestPaths,
-            /* [in] */ LPCWSTR *ppwzManifestPaths,
-            /* [in] */ DWORD dwActivationData,
-            /* [in] */ LPCWSTR *ppwzActivationData,
-            /* [out] */ int *pReturnValue) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE ExecuteInDefaultAppDomain( 
-            /* [in] */ LPCWSTR pwzAssemblyPath,
-            /* [in] */ LPCWSTR pwzTypeName,
-            /* [in] */ LPCWSTR pwzMethodName,
-            /* [in] */ LPCWSTR pwzArgument,
-            /* [out] */ DWORD *pReturnValue) = 0;
-        
-    };
-    
-    
-#else  /* C style interface */
-
-    typedef struct ICLRRuntimeHostVtbl
-    {
-        BEGIN_INTERFACE
-        
-        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            ICLRRuntimeHost * This,
-            /* [in] */ REFIID riid,
-            /* [annotation][iid_is][out] */ 
-            _COM_Outptr_  void **ppvObject);
-        
-        ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            ICLRRuntimeHost * This);
-        
-        ULONG ( STDMETHODCALLTYPE *Release )( 
-            ICLRRuntimeHost * This);
-        
-        HRESULT ( STDMETHODCALLTYPE *Start )( 
-            ICLRRuntimeHost * This);
-        
-        HRESULT ( STDMETHODCALLTYPE *Stop )( 
-            ICLRRuntimeHost * This);
-        
-        HRESULT ( STDMETHODCALLTYPE *SetHostControl )( 
-            ICLRRuntimeHost * This,
-            /* [in] */ IHostControl *pHostControl);
-        
-        HRESULT ( STDMETHODCALLTYPE *GetCLRControl )( 
-            ICLRRuntimeHost * This,
-            /* [out] */ ICLRControl **pCLRControl);
-        
-        HRESULT ( STDMETHODCALLTYPE *UnloadAppDomain )( 
-            ICLRRuntimeHost * This,
-            /* [in] */ DWORD dwAppDomainId,
-            /* [in] */ BOOL fWaitUntilDone);
-        
-        HRESULT ( STDMETHODCALLTYPE *ExecuteInAppDomain )( 
-            ICLRRuntimeHost * This,
-            /* [in] */ DWORD dwAppDomainId,
-            /* [in] */ FExecuteInAppDomainCallback pCallback,
-            /* [in] */ void *cookie);
-        
-        HRESULT ( STDMETHODCALLTYPE *GetCurrentAppDomainId )( 
-            ICLRRuntimeHost * This,
-            /* [out] */ DWORD *pdwAppDomainId);
-        
-        HRESULT ( STDMETHODCALLTYPE *ExecuteApplication )( 
-            ICLRRuntimeHost * This,
-            /* [in] */ LPCWSTR pwzAppFullName,
-            /* [in] */ DWORD dwManifestPaths,
-            /* [in] */ LPCWSTR *ppwzManifestPaths,
-            /* [in] */ DWORD dwActivationData,
-            /* [in] */ LPCWSTR *ppwzActivationData,
-            /* [out] */ int *pReturnValue);
-        
-        HRESULT ( STDMETHODCALLTYPE *ExecuteInDefaultAppDomain )( 
-            ICLRRuntimeHost * This,
-            /* [in] */ LPCWSTR pwzAssemblyPath,
-            /* [in] */ LPCWSTR pwzTypeName,
-            /* [in] */ LPCWSTR pwzMethodName,
-            /* [in] */ LPCWSTR pwzArgument,
-            /* [out] */ DWORD *pReturnValue);
-        
-        END_INTERFACE
-    } ICLRRuntimeHostVtbl;
-
-    interface ICLRRuntimeHost
-    {
-        CONST_VTBL struct ICLRRuntimeHostVtbl *lpVtbl;
-    };
-
-    
-
-#ifdef COBJMACROS
-
-
-#define ICLRRuntimeHost_QueryInterface(This,riid,ppvObject)    \
-    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
-
-#define ICLRRuntimeHost_AddRef(This)   \
-    ( (This)->lpVtbl -> AddRef(This) ) 
-
-#define ICLRRuntimeHost_Release(This)  \
-    ( (This)->lpVtbl -> Release(This) ) 
-
-
-#define ICLRRuntimeHost_Start(This)    \
-    ( (This)->lpVtbl -> Start(This) ) 
-
-#define ICLRRuntimeHost_Stop(This)     \
-    ( (This)->lpVtbl -> Stop(This) ) 
-
-#define ICLRRuntimeHost_SetHostControl(This,pHostControl)      \
-    ( (This)->lpVtbl -> SetHostControl(This,pHostControl) ) 
-
-#define ICLRRuntimeHost_GetCLRControl(This,pCLRControl)        \
-    ( (This)->lpVtbl -> GetCLRControl(This,pCLRControl) ) 
-
-#define ICLRRuntimeHost_UnloadAppDomain(This,dwAppDomainId,fWaitUntilDone)     \
-    ( (This)->lpVtbl -> UnloadAppDomain(This,dwAppDomainId,fWaitUntilDone) ) 
-
-#define ICLRRuntimeHost_ExecuteInAppDomain(This,dwAppDomainId,pCallback,cookie)        \
-    ( (This)->lpVtbl -> ExecuteInAppDomain(This,dwAppDomainId,pCallback,cookie) ) 
-
-#define ICLRRuntimeHost_GetCurrentAppDomainId(This,pdwAppDomainId)     \
-    ( (This)->lpVtbl -> GetCurrentAppDomainId(This,pdwAppDomainId) ) 
-
-#define ICLRRuntimeHost_ExecuteApplication(This,pwzAppFullName,dwManifestPaths,ppwzManifestPaths,dwActivationData,ppwzActivationData,pReturnValue)     \
-    ( (This)->lpVtbl -> ExecuteApplication(This,pwzAppFullName,dwManifestPaths,ppwzManifestPaths,dwActivationData,ppwzActivationData,pReturnValue) ) 
-
-#define ICLRRuntimeHost_ExecuteInDefaultAppDomain(This,pwzAssemblyPath,pwzTypeName,pwzMethodName,pwzArgument,pReturnValue)     \
-    ( (This)->lpVtbl -> ExecuteInDefaultAppDomain(This,pwzAssemblyPath,pwzTypeName,pwzMethodName,pwzArgument,pReturnValue) ) 
-
-#endif /* COBJMACROS */
-
-
-#endif         /* C style interface */
-
-
-
-
-#endif         /* __ICLRRuntimeHost_INTERFACE_DEFINED__ */
-
-
-/* interface __MIDL_itf_mscoree_0000_0010 */
-/* [local] */ 
-
-#define CORECLR_HOST_AUTHENTICATION_KEY 0x1C6CA6F94025800LL
-#define CORECLR_HOST_AUTHENTICATION_KEY_NONGEN 0x1C6CA6F94025801LL
-
-
-extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0010_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0010_v0_0_s_ifspec;
-
-#ifndef __ICLRRuntimeHost2_INTERFACE_DEFINED__
-#define __ICLRRuntimeHost2_INTERFACE_DEFINED__
-
-/* interface ICLRRuntimeHost2 */
-/* [local][unique][helpstring][version][uuid][object] */ 
-
-
-EXTERN_C const IID IID_ICLRRuntimeHost2;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-    
-    MIDL_INTERFACE("712AB73F-2C22-4807-AD7E-F501D7B72C2D")
-    ICLRRuntimeHost2 : public ICLRRuntimeHost
-    {
-    public:
-        virtual HRESULT STDMETHODCALLTYPE CreateAppDomainWithManager( 
-            /* [in] */ LPCWSTR wszFriendlyName,
-            /* [in] */ DWORD dwFlags,
-            /* [in] */ LPCWSTR wszAppDomainManagerAssemblyName,
-            /* [in] */ LPCWSTR wszAppDomainManagerTypeName,
-            /* [in] */ int nProperties,
-            /* [in] */ LPCWSTR *pPropertyNames,
-            /* [in] */ LPCWSTR *pPropertyValues,
-            /* [out] */ DWORD *pAppDomainID) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE CreateDelegate( 
-            /* [in] */ DWORD appDomainID,
-            /* [in] */ LPCWSTR wszAssemblyName,
-            /* [in] */ LPCWSTR wszClassName,
-            /* [in] */ LPCWSTR wszMethodName,
-            /* [out] */ INT_PTR *fnPtr) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE Authenticate( 
-            /* [in] */ ULONGLONG authKey) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE RegisterMacEHPort( void) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE SetStartupFlags( 
-            /* [in] */ STARTUP_FLAGS dwFlags) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE DllGetActivationFactory( 
-            /* [in] */ DWORD appDomainID,
-            /* [in] */ LPCWSTR wszTypeName,
-            /* [out] */ IActivationFactory **factory) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE ExecuteAssembly( 
-            /* [in] */ DWORD dwAppDomainId,
-            /* [in] */ LPCWSTR pwzAssemblyPath,
-            /* [in] */ int argc,
-            /* [in] */ LPCWSTR *argv,
-            /* [out] */ DWORD *pReturnValue) = 0;
-        
-    };
-    
-    MIDL_INTERFACE("64F6D366-D7C2-4F1F-B4B2-E8160CAC43AF")
-    ICLRRuntimeHost4 : public ICLRRuntimeHost2
-    {
-        virtual HRESULT STDMETHODCALLTYPE UnloadAppDomain2(
-            /* [in] */ DWORD dwAppDomainId,
-            /* [in] */ BOOL fWaitUntilDone,
-            /* [out] */ int *pLatchedExitCode) = 0;
-    };
-    
-#else  /* C style interface */
-
-    typedef struct ICLRRuntimeHost2Vtbl
-    {
-        BEGIN_INTERFACE
-        
-        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            ICLRRuntimeHost2 * This,
-            /* [in] */ REFIID riid,
-            /* [annotation][iid_is][out] */ 
-            _COM_Outptr_  void **ppvObject);
-        
-        ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            ICLRRuntimeHost2 * This);
-        
-        ULONG ( STDMETHODCALLTYPE *Release )( 
-            ICLRRuntimeHost2 * This);
-        
-        HRESULT ( STDMETHODCALLTYPE *Start )( 
-            ICLRRuntimeHost2 * This);
-        
-        HRESULT ( STDMETHODCALLTYPE *Stop )( 
-            ICLRRuntimeHost2 * This);
-        
-        HRESULT ( STDMETHODCALLTYPE *SetHostControl )( 
-            ICLRRuntimeHost2 * This,
-            /* [in] */ IHostControl *pHostControl);
-        
-        HRESULT ( STDMETHODCALLTYPE *GetCLRControl )( 
-            ICLRRuntimeHost2 * This,
-            /* [out] */ ICLRControl **pCLRControl);
-        
-        HRESULT ( STDMETHODCALLTYPE *UnloadAppDomain )( 
-            ICLRRuntimeHost2 * This,
-            /* [in] */ DWORD dwAppDomainId,
-            /* [in] */ BOOL fWaitUntilDone);
-        
-        HRESULT ( STDMETHODCALLTYPE *ExecuteInAppDomain )( 
-            ICLRRuntimeHost2 * This,
-            /* [in] */ DWORD dwAppDomainId,
-            /* [in] */ FExecuteInAppDomainCallback pCallback,
-            /* [in] */ void *cookie);
-        
-        HRESULT ( STDMETHODCALLTYPE *GetCurrentAppDomainId )( 
-            ICLRRuntimeHost2 * This,
-            /* [out] */ DWORD *pdwAppDomainId);
-        
-        HRESULT ( STDMETHODCALLTYPE *ExecuteApplication )( 
-            ICLRRuntimeHost2 * This,
-            /* [in] */ LPCWSTR pwzAppFullName,
-            /* [in] */ DWORD dwManifestPaths,
-            /* [in] */ LPCWSTR *ppwzManifestPaths,
-            /* [in] */ DWORD dwActivationData,
-            /* [in] */ LPCWSTR *ppwzActivationData,
-            /* [out] */ int *pReturnValue);
-        
-        HRESULT ( STDMETHODCALLTYPE *ExecuteInDefaultAppDomain )( 
-            ICLRRuntimeHost2 * This,
-            /* [in] */ LPCWSTR pwzAssemblyPath,
-            /* [in] */ LPCWSTR pwzTypeName,
-            /* [in] */ LPCWSTR pwzMethodName,
-            /* [in] */ LPCWSTR pwzArgument,
-            /* [out] */ DWORD *pReturnValue);
-        
-        HRESULT ( STDMETHODCALLTYPE *CreateAppDomainWithManager )( 
-            ICLRRuntimeHost2 * This,
-            /* [in] */ LPCWSTR wszFriendlyName,
-            /* [in] */ DWORD dwFlags,
-            /* [in] */ LPCWSTR wszAppDomainManagerAssemblyName,
-            /* [in] */ LPCWSTR wszAppDomainManagerTypeName,
-            /* [in] */ int nProperties,
-            /* [in] */ LPCWSTR *pPropertyNames,
-            /* [in] */ LPCWSTR *pPropertyValues,
-            /* [out] */ DWORD *pAppDomainID);
-        
-        HRESULT ( STDMETHODCALLTYPE *CreateDelegate )( 
-            ICLRRuntimeHost2 * This,
-            /* [in] */ DWORD appDomainID,
-            /* [in] */ LPCWSTR wszAssemblyName,
-            /* [in] */ LPCWSTR wszClassName,
-            /* [in] */ LPCWSTR wszMethodName,
-            /* [out] */ INT_PTR *fnPtr);
-        
-        HRESULT ( STDMETHODCALLTYPE *Authenticate )( 
-            ICLRRuntimeHost2 * This,
-            /* [in] */ ULONGLONG authKey);
-        
-        HRESULT ( STDMETHODCALLTYPE *RegisterMacEHPort )( 
-            ICLRRuntimeHost2 * This);
-        
-        HRESULT ( STDMETHODCALLTYPE *SetStartupFlags )( 
-            ICLRRuntimeHost2 * This,
-            /* [in] */ STARTUP_FLAGS dwFlags);
-        
-        HRESULT ( STDMETHODCALLTYPE *DllGetActivationFactory )( 
-            ICLRRuntimeHost2 * This,
-            /* [in] */ DWORD appDomainID,
-            /* [in] */ LPCWSTR wszTypeName,
-            /* [out] */ IActivationFactory **factory);
-        
-        HRESULT ( STDMETHODCALLTYPE *ExecuteAssembly )( 
-            ICLRRuntimeHost2 * This,
-            /* [in] */ DWORD dwAppDomainId,
-            /* [in] */ LPCWSTR pwzAssemblyPath,
-            /* [in] */ int argc,
-            /* [in] */ LPCWSTR *argv,
-            /* [out] */ DWORD *pReturnValue);
-        
-        END_INTERFACE
-    } ICLRRuntimeHost2Vtbl;
-
-    interface ICLRRuntimeHost2
-    {
-        CONST_VTBL struct ICLRRuntimeHost2Vtbl *lpVtbl;
-    };
-
-    
-
-#ifdef COBJMACROS
-
-
-#define ICLRRuntimeHost2_QueryInterface(This,riid,ppvObject)   \
-    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
-
-#define ICLRRuntimeHost2_AddRef(This)  \
-    ( (This)->lpVtbl -> AddRef(This) ) 
-
-#define ICLRRuntimeHost2_Release(This) \
-    ( (This)->lpVtbl -> Release(This) ) 
-
-
-#define ICLRRuntimeHost2_Start(This)   \
-    ( (This)->lpVtbl -> Start(This) ) 
-
-#define ICLRRuntimeHost2_Stop(This)    \
-    ( (This)->lpVtbl -> Stop(This) ) 
-
-#define ICLRRuntimeHost2_SetHostControl(This,pHostControl)     \
-    ( (This)->lpVtbl -> SetHostControl(This,pHostControl) ) 
-
-#define ICLRRuntimeHost2_GetCLRControl(This,pCLRControl)       \
-    ( (This)->lpVtbl -> GetCLRControl(This,pCLRControl) ) 
-
-#define ICLRRuntimeHost2_UnloadAppDomain(This,dwAppDomainId,fWaitUntilDone)    \
-    ( (This)->lpVtbl -> UnloadAppDomain(This,dwAppDomainId,fWaitUntilDone) ) 
-
-#define ICLRRuntimeHost2_ExecuteInAppDomain(This,dwAppDomainId,pCallback,cookie)       \
-    ( (This)->lpVtbl -> ExecuteInAppDomain(This,dwAppDomainId,pCallback,cookie) ) 
-
-#define ICLRRuntimeHost2_GetCurrentAppDomainId(This,pdwAppDomainId)    \
-    ( (This)->lpVtbl -> GetCurrentAppDomainId(This,pdwAppDomainId) ) 
-
-#define ICLRRuntimeHost2_ExecuteApplication(This,pwzAppFullName,dwManifestPaths,ppwzManifestPaths,dwActivationData,ppwzActivationData,pReturnValue)    \
-    ( (This)->lpVtbl -> ExecuteApplication(This,pwzAppFullName,dwManifestPaths,ppwzManifestPaths,dwActivationData,ppwzActivationData,pReturnValue) ) 
-
-#define ICLRRuntimeHost2_ExecuteInDefaultAppDomain(This,pwzAssemblyPath,pwzTypeName,pwzMethodName,pwzArgument,pReturnValue)    \
-    ( (This)->lpVtbl -> ExecuteInDefaultAppDomain(This,pwzAssemblyPath,pwzTypeName,pwzMethodName,pwzArgument,pReturnValue) ) 
-
-
-#define ICLRRuntimeHost2_CreateAppDomainWithManager(This,wszFriendlyName,dwFlags,wszAppDomainManagerAssemblyName,wszAppDomainManagerTypeName,nProperties,pPropertyNames,pPropertyValues,pAppDomainID)  \
-    ( (This)->lpVtbl -> CreateAppDomainWithManager(This,wszFriendlyName,dwFlags,wszAppDomainManagerAssemblyName,wszAppDomainManagerTypeName,nProperties,pPropertyNames,pPropertyValues,pAppDomainID) ) 
-
-#define ICLRRuntimeHost2_CreateDelegate(This,appDomainID,wszAssemblyName,wszClassName,wszMethodName,fnPtr)     \
-    ( (This)->lpVtbl -> CreateDelegate(This,appDomainID,wszAssemblyName,wszClassName,wszMethodName,fnPtr) ) 
-
-#define ICLRRuntimeHost2_Authenticate(This,authKey)    \
-    ( (This)->lpVtbl -> Authenticate(This,authKey) ) 
-
-#define ICLRRuntimeHost2_RegisterMacEHPort(This)       \
-    ( (This)->lpVtbl -> RegisterMacEHPort(This) ) 
-
-#define ICLRRuntimeHost2_SetStartupFlags(This,dwFlags) \
-    ( (This)->lpVtbl -> SetStartupFlags(This,dwFlags) ) 
-
-#define ICLRRuntimeHost2_DllGetActivationFactory(This,appDomainID,wszTypeName,factory) \
-    ( (This)->lpVtbl -> DllGetActivationFactory(This,appDomainID,wszTypeName,factory) ) 
-
-#define ICLRRuntimeHost2_ExecuteAssembly(This,dwAppDomainId,pwzAssemblyPath,argc,argv,pReturnValue)    \
-    ( (This)->lpVtbl -> ExecuteAssembly(This,dwAppDomainId,pwzAssemblyPath,argc,argv,pReturnValue) ) 
-
-#endif /* COBJMACROS */
-
-
-#endif         /* C style interface */
-
-
-
-
-#endif         /* __ICLRRuntimeHost2_INTERFACE_DEFINED__ */
-
-
-#ifndef __ICLRExecutionManager_INTERFACE_DEFINED__
-#define __ICLRExecutionManager_INTERFACE_DEFINED__
-
-/* interface ICLRExecutionManager */
-/* [object][local][unique][helpstring][version][uuid] */ 
-
-
-EXTERN_C const IID IID_ICLRExecutionManager;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-    
-    MIDL_INTERFACE("1000A3E7-B420-4620-AE30-FB19B587AD1D")
-    ICLRExecutionManager : public IUnknown
-    {
-    public:
-        virtual HRESULT STDMETHODCALLTYPE Pause( 
-            /* [in] */ DWORD dwAppDomainId,
-            /* [in] */ DWORD dwFlags) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE Resume( 
-            /* [in] */ DWORD dwAppDomainId) = 0;
-        
-    };
-    
-    
-#else  /* C style interface */
-
-    typedef struct ICLRExecutionManagerVtbl
-    {
-        BEGIN_INTERFACE
-        
-        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            ICLRExecutionManager * This,
-            /* [in] */ REFIID riid,
-            /* [annotation][iid_is][out] */ 
-            _COM_Outptr_  void **ppvObject);
-        
-        ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            ICLRExecutionManager * This);
-        
-        ULONG ( STDMETHODCALLTYPE *Release )( 
-            ICLRExecutionManager * This);
-        
-        HRESULT ( STDMETHODCALLTYPE *Pause )( 
-            ICLRExecutionManager * This,
-            /* [in] */ DWORD dwAppDomainId,
-            /* [in] */ DWORD dwFlags);
-        
-        HRESULT ( STDMETHODCALLTYPE *Resume )( 
-            ICLRExecutionManager * This,
-            /* [in] */ DWORD dwAppDomainId);
-        
-        END_INTERFACE
-    } ICLRExecutionManagerVtbl;
-
-    interface ICLRExecutionManager
-    {
-        CONST_VTBL struct ICLRExecutionManagerVtbl *lpVtbl;
-    };
-
-    
-
-#ifdef COBJMACROS
-
-
-#define ICLRExecutionManager_QueryInterface(This,riid,ppvObject)       \
-    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
-
-#define ICLRExecutionManager_AddRef(This)      \
-    ( (This)->lpVtbl -> AddRef(This) ) 
-
-#define ICLRExecutionManager_Release(This)     \
-    ( (This)->lpVtbl -> Release(This) ) 
-
-
-#define ICLRExecutionManager_Pause(This,dwAppDomainId,dwFlags) \
-    ( (This)->lpVtbl -> Pause(This,dwAppDomainId,dwFlags) ) 
-
-#define ICLRExecutionManager_Resume(This,dwAppDomainId)        \
-    ( (This)->lpVtbl -> Resume(This,dwAppDomainId) ) 
-
-#endif /* COBJMACROS */
-
-
-#endif         /* C style interface */
-
-
-
-
-#endif         /* __ICLRExecutionManager_INTERFACE_DEFINED__ */
-
-
-#ifndef __IHostNetCFDebugControlManager_INTERFACE_DEFINED__
-#define __IHostNetCFDebugControlManager_INTERFACE_DEFINED__
-
-/* interface IHostNetCFDebugControlManager */
-/* [object][local][unique][helpstring][version][uuid] */ 
-
-
-EXTERN_C const IID IID_IHostNetCFDebugControlManager;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-    
-    MIDL_INTERFACE("F2833A0C-F944-48d8-940E-F59425EDBFCF")
-    IHostNetCFDebugControlManager : public IUnknown
-    {
-    public:
-        virtual HRESULT STDMETHODCALLTYPE NotifyPause( 
-            DWORD dwReserved) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE NotifyResume( 
-            DWORD dwReserved) = 0;
-        
-    };
-    
-    
-#else  /* C style interface */
-
-    typedef struct IHostNetCFDebugControlManagerVtbl
-    {
-        BEGIN_INTERFACE
-        
-        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            IHostNetCFDebugControlManager * This,
-            /* [in] */ REFIID riid,
-            /* [annotation][iid_is][out] */ 
-            _COM_Outptr_  void **ppvObject);
-        
-        ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            IHostNetCFDebugControlManager * This);
-        
-        ULONG ( STDMETHODCALLTYPE *Release )( 
-            IHostNetCFDebugControlManager * This);
-        
-        HRESULT ( STDMETHODCALLTYPE *NotifyPause )( 
-            IHostNetCFDebugControlManager * This,
-            DWORD dwReserved);
-        
-        HRESULT ( STDMETHODCALLTYPE *NotifyResume )( 
-            IHostNetCFDebugControlManager * This,
-            DWORD dwReserved);
-        
-        END_INTERFACE
-    } IHostNetCFDebugControlManagerVtbl;
-
-    interface IHostNetCFDebugControlManager
-    {
-        CONST_VTBL struct IHostNetCFDebugControlManagerVtbl *lpVtbl;
-    };
-
-    
-
-#ifdef COBJMACROS
-
-
-#define IHostNetCFDebugControlManager_QueryInterface(This,riid,ppvObject)      \
-    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
-
-#define IHostNetCFDebugControlManager_AddRef(This)     \
-    ( (This)->lpVtbl -> AddRef(This) ) 
-
-#define IHostNetCFDebugControlManager_Release(This)    \
-    ( (This)->lpVtbl -> Release(This) ) 
-
-
-#define IHostNetCFDebugControlManager_NotifyPause(This,dwReserved)     \
-    ( (This)->lpVtbl -> NotifyPause(This,dwReserved) ) 
-
-#define IHostNetCFDebugControlManager_NotifyResume(This,dwReserved)    \
-    ( (This)->lpVtbl -> NotifyResume(This,dwReserved) ) 
-
-#endif /* COBJMACROS */
-
-
-#endif         /* C style interface */
-
-
-
-
-#endif         /* __IHostNetCFDebugControlManager_INTERFACE_DEFINED__ */
-
-
-/* interface __MIDL_itf_mscoree_0000_0013 */
-/* [local] */ 
-
-typedef /* [public] */ 
-enum __MIDL___MIDL_itf_mscoree_0000_0013_0001
-    {
-        eNoChecks      = 0,
-        eSynchronization       = 0x1,
-        eSharedState   = 0x2,
-        eExternalProcessMgmt   = 0x4,
-        eSelfAffectingProcessMgmt      = 0x8,
-        eExternalThreading     = 0x10,
-        eSelfAffectingThreading        = 0x20,
-        eSecurityInfrastructure        = 0x40,
-        eUI    = 0x80,
-        eMayLeakOnAbort        = 0x100,
-        eAll   = 0x1ff
-    }  EApiCategories;
-
-typedef /* [public] */ 
-enum __MIDL___MIDL_itf_mscoree_0000_0013_0002
-    {
-        eInitializeNewDomainFlags_None = 0,
-        eInitializeNewDomainFlags_NoSecurityChanges    = 0x2
-    }  EInitializeNewDomainFlags;
-
-
-
-extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0013_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0013_v0_0_s_ifspec;
-
-
-#ifndef __mscoree_LIBRARY_DEFINED__
-#define __mscoree_LIBRARY_DEFINED__
-
-/* library mscoree */
-/* [helpstring][version][uuid] */ 
-
-#define CCW_PTR int *
-
-EXTERN_C const IID LIBID_mscoree;
-
-#ifndef __ITypeName_INTERFACE_DEFINED__
-#define __ITypeName_INTERFACE_DEFINED__
-
-/* interface ITypeName */
-/* [unique][helpstring][uuid][oleautomation][object] */ 
-
-
-EXTERN_C const IID IID_ITypeName;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-    
-    MIDL_INTERFACE("B81FF171-20F3-11d2-8DCC-00A0C9B00522")
-    ITypeName : public IUnknown
-    {
-    public:
-        virtual HRESULT STDMETHODCALLTYPE GetNameCount( 
-            /* [retval][out] */ DWORD *pCount) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE GetNames( 
-            /* [in] */ DWORD count,
-            /* [out] */ BSTR *rgbszNames,
-            /* [retval][out] */ DWORD *pCount) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE GetTypeArgumentCount( 
-            /* [retval][out] */ DWORD *pCount) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE GetTypeArguments( 
-            /* [in] */ DWORD count,
-            /* [out] */ ITypeName **rgpArguments,
-            /* [retval][out] */ DWORD *pCount) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE GetModifierLength( 
-            /* [retval][out] */ DWORD *pCount) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE GetModifiers( 
-            /* [in] */ DWORD count,
-            /* [out] */ DWORD *rgModifiers,
-            /* [retval][out] */ DWORD *pCount) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE GetAssemblyName( 
-            /* [retval][out] */ BSTR *rgbszAssemblyNames) = 0;
-        
-    };
-    
-    
-#else  /* C style interface */
-
-    typedef struct ITypeNameVtbl
-    {
-        BEGIN_INTERFACE
-        
-        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            ITypeName * This,
-            /* [in] */ REFIID riid,
-            /* [annotation][iid_is][out] */ 
-            _COM_Outptr_  void **ppvObject);
-        
-        ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            ITypeName * This);
-        
-        ULONG ( STDMETHODCALLTYPE *Release )( 
-            ITypeName * This);
-        
-        HRESULT ( STDMETHODCALLTYPE *GetNameCount )( 
-            ITypeName * This,
-            /* [retval][out] */ DWORD *pCount);
-        
-        HRESULT ( STDMETHODCALLTYPE *GetNames )( 
-            ITypeName * This,
-            /* [in] */ DWORD count,
-            /* [out] */ BSTR *rgbszNames,
-            /* [retval][out] */ DWORD *pCount);
-        
-        HRESULT ( STDMETHODCALLTYPE *GetTypeArgumentCount )( 
-            ITypeName * This,
-            /* [retval][out] */ DWORD *pCount);
-        
-        HRESULT ( STDMETHODCALLTYPE *GetTypeArguments )( 
-            ITypeName * This,
-            /* [in] */ DWORD count,
-            /* [out] */ ITypeName **rgpArguments,
-            /* [retval][out] */ DWORD *pCount);
-        
-        HRESULT ( STDMETHODCALLTYPE *GetModifierLength )( 
-            ITypeName * This,
-            /* [retval][out] */ DWORD *pCount);
-        
-        HRESULT ( STDMETHODCALLTYPE *GetModifiers )( 
-            ITypeName * This,
-            /* [in] */ DWORD count,
-            /* [out] */ DWORD *rgModifiers,
-            /* [retval][out] */ DWORD *pCount);
-        
-        HRESULT ( STDMETHODCALLTYPE *GetAssemblyName )( 
-            ITypeName * This,
-            /* [retval][out] */ BSTR *rgbszAssemblyNames);
-        
-        END_INTERFACE
-    } ITypeNameVtbl;
+    }  EClrOperation;
 
-    interface ITypeName
+typedef /* [public] */ 
+enum __MIDL___MIDL_itf_mscoree_0000_0000_0007
     {
-        CONST_VTBL struct ITypeNameVtbl *lpVtbl;
-    };
-
-    
-
-#ifdef COBJMACROS
-
-
-#define ITypeName_QueryInterface(This,riid,ppvObject)  \
-    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
-
-#define ITypeName_AddRef(This) \
-    ( (This)->lpVtbl -> AddRef(This) ) 
-
-#define ITypeName_Release(This)        \
-    ( (This)->lpVtbl -> Release(This) ) 
-
-
-#define ITypeName_GetNameCount(This,pCount)    \
-    ( (This)->lpVtbl -> GetNameCount(This,pCount) ) 
-
-#define ITypeName_GetNames(This,count,rgbszNames,pCount)       \
-    ( (This)->lpVtbl -> GetNames(This,count,rgbszNames,pCount) ) 
-
-#define ITypeName_GetTypeArgumentCount(This,pCount)    \
-    ( (This)->lpVtbl -> GetTypeArgumentCount(This,pCount) ) 
-
-#define ITypeName_GetTypeArguments(This,count,rgpArguments,pCount)     \
-    ( (This)->lpVtbl -> GetTypeArguments(This,count,rgpArguments,pCount) ) 
-
-#define ITypeName_GetModifierLength(This,pCount)       \
-    ( (This)->lpVtbl -> GetModifierLength(This,pCount) ) 
-
-#define ITypeName_GetModifiers(This,count,rgModifiers,pCount)  \
-    ( (This)->lpVtbl -> GetModifiers(This,count,rgModifiers,pCount) ) 
-
-#define ITypeName_GetAssemblyName(This,rgbszAssemblyNames)     \
-    ( (This)->lpVtbl -> GetAssemblyName(This,rgbszAssemblyNames) ) 
-
-#endif /* COBJMACROS */
-
-
-#endif         /* C style interface */
+        FAIL_NonCriticalResource       = 0,
+        FAIL_CriticalResource  = ( FAIL_NonCriticalResource + 1 ) ,
+        FAIL_FatalRuntime      = ( FAIL_CriticalResource + 1 ) ,
+        FAIL_OrphanedLock      = ( FAIL_FatalRuntime + 1 ) ,
+        FAIL_StackOverflow     = ( FAIL_OrphanedLock + 1 ) ,
+        FAIL_AccessViolation   = ( FAIL_StackOverflow + 1 ) ,
+        FAIL_CodeContract      = ( FAIL_AccessViolation + 1 ) ,
+        MaxClrFailure  = ( FAIL_CodeContract + 1 ) 
+    }  EClrFailure;
 
+typedef /* [public] */ 
+enum __MIDL___MIDL_itf_mscoree_0000_0000_0008
+    {
+        eRuntimeDeterminedPolicy       = 0,
+        eHostDeterminedPolicy  = ( eRuntimeDeterminedPolicy + 1 ) 
+    }  EClrUnhandledException;
 
+typedef /* [public] */ 
+enum __MIDL___MIDL_itf_mscoree_0000_0000_0009
+    {
+        eNoAction      = 0,
+        eThrowException        = ( eNoAction + 1 ) ,
+        eAbortThread   = ( eThrowException + 1 ) ,
+        eRudeAbortThread       = ( eAbortThread + 1 ) ,
+        eUnloadAppDomain       = ( eRudeAbortThread + 1 ) ,
+        eRudeUnloadAppDomain   = ( eUnloadAppDomain + 1 ) ,
+        eExitProcess   = ( eRudeUnloadAppDomain + 1 ) ,
+        eFastExitProcess       = ( eExitProcess + 1 ) ,
+        eRudeExitProcess       = ( eFastExitProcess + 1 ) ,
+        MaxPolicyAction        = (eRudeExitProcess + 1 )
+    }  EPolicyAction;
 
 
-#endif         /* __ITypeName_INTERFACE_DEFINED__ */
 
+extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0000_v0_0_c_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0000_v0_0_s_ifspec;
 
-#ifndef __ITypeNameBuilder_INTERFACE_DEFINED__
-#define __ITypeNameBuilder_INTERFACE_DEFINED__
+#ifndef __ICLRRuntimeHost_INTERFACE_DEFINED__
+#define __ICLRRuntimeHost_INTERFACE_DEFINED__
 
-/* interface ITypeNameBuilder */
-/* [unique][helpstring][uuid][oleautomation][object] */ 
+/* interface ICLRRuntimeHost */
+/* [object][local][unique][helpstring][version][uuid] */ 
 
 
-EXTERN_C const IID IID_ITypeNameBuilder;
+EXTERN_C const IID IID_ICLRRuntimeHost;
 
 #if defined(__cplusplus) && !defined(CINTERFACE)
     
-    MIDL_INTERFACE("B81FF171-20F3-11d2-8DCC-00A0C9B00523")
-    ITypeNameBuilder : public IUnknown
+    MIDL_INTERFACE("90F1A06C-7712-4762-86B5-7A5EBA6BDB02")
+    ICLRRuntimeHost : public IUnknown
     {
     public:
-        virtual HRESULT STDMETHODCALLTYPE OpenGenericArguments( void) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE CloseGenericArguments( void) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE OpenGenericArgument( void) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE CloseGenericArgument( void) = 0;
+        virtual HRESULT STDMETHODCALLTYPE Start( void) = 0;
         
-        virtual HRESULT STDMETHODCALLTYPE AddName( 
-            /* [in] */ LPCWSTR szName) = 0;
+        virtual HRESULT STDMETHODCALLTYPE Stop( void) = 0;
         
-        virtual HRESULT STDMETHODCALLTYPE AddPointer( void) = 0;
+        virtual HRESULT STDMETHODCALLTYPE SetHostControl( 
+            /* [in] */ IHostControl *pHostControl) = 0;
         
-        virtual HRESULT STDMETHODCALLTYPE AddByRef( void) = 0;
+        virtual HRESULT STDMETHODCALLTYPE GetCLRControl( 
+            /* [out] */ ICLRControl **pCLRControl) = 0;
         
-        virtual HRESULT STDMETHODCALLTYPE AddSzArray( void) = 0;
+        virtual HRESULT STDMETHODCALLTYPE UnloadAppDomain( 
+            /* [in] */ DWORD dwAppDomainId,
+            /* [in] */ BOOL fWaitUntilDone) = 0;
         
-        virtual HRESULT STDMETHODCALLTYPE AddArray( 
-            /* [in] */ DWORD rank) = 0;
+        virtual HRESULT STDMETHODCALLTYPE ExecuteInAppDomain( 
+            /* [in] */ DWORD dwAppDomainId,
+            /* [in] */ FExecuteInAppDomainCallback pCallback,
+            /* [in] */ void *cookie) = 0;
         
-        virtual HRESULT STDMETHODCALLTYPE AddAssemblySpec
-            /* [in] */ LPCWSTR szAssemblySpec) = 0;
+        virtual HRESULT STDMETHODCALLTYPE GetCurrentAppDomainId
+            /* [out] */ DWORD *pdwAppDomainId) = 0;
         
-        virtual HRESULT STDMETHODCALLTYPE ToString( 
-            /* [retval][out] */ BSTR *pszStringRepresentation) = 0;
+        virtual HRESULT STDMETHODCALLTYPE ExecuteApplication( 
+            /* [in] */ LPCWSTR pwzAppFullName,
+            /* [in] */ DWORD dwManifestPaths,
+            /* [in] */ LPCWSTR *ppwzManifestPaths,
+            /* [in] */ DWORD dwActivationData,
+            /* [in] */ LPCWSTR *ppwzActivationData,
+            /* [out] */ int *pReturnValue) = 0;
         
-        virtual HRESULT STDMETHODCALLTYPE Clear( void) = 0;
+        virtual HRESULT STDMETHODCALLTYPE ExecuteInDefaultAppDomain( 
+            /* [in] */ LPCWSTR pwzAssemblyPath,
+            /* [in] */ LPCWSTR pwzTypeName,
+            /* [in] */ LPCWSTR pwzMethodName,
+            /* [in] */ LPCWSTR pwzArgument,
+            /* [out] */ DWORD *pReturnValue) = 0;
         
     };
     
     
 #else  /* C style interface */
 
-    typedef struct ITypeNameBuilderVtbl
+    typedef struct ICLRRuntimeHostVtbl
     {
         BEGIN_INTERFACE
         
         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            ITypeNameBuilder * This,
+            ICLRRuntimeHost * This,
             /* [in] */ REFIID riid,
             /* [annotation][iid_is][out] */ 
             _COM_Outptr_  void **ppvObject);
         
         ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            ITypeNameBuilder * This);
+            ICLRRuntimeHost * This);
         
         ULONG ( STDMETHODCALLTYPE *Release )( 
-            ITypeNameBuilder * This);
-        
-        HRESULT ( STDMETHODCALLTYPE *OpenGenericArguments )( 
-            ITypeNameBuilder * This);
-        
-        HRESULT ( STDMETHODCALLTYPE *CloseGenericArguments )( 
-            ITypeNameBuilder * This);
-        
-        HRESULT ( STDMETHODCALLTYPE *OpenGenericArgument )( 
-            ITypeNameBuilder * This);
+            ICLRRuntimeHost * This);
         
-        HRESULT ( STDMETHODCALLTYPE *CloseGenericArgument )( 
-            ITypeNameBuilder * This);
+        HRESULT ( STDMETHODCALLTYPE *Start )( 
+            ICLRRuntimeHost * This);
         
-        HRESULT ( STDMETHODCALLTYPE *AddName )( 
-            ITypeNameBuilder * This,
-            /* [in] */ LPCWSTR szName);
+        HRESULT ( STDMETHODCALLTYPE *Stop )( 
+            ICLRRuntimeHost * This);
         
-        HRESULT ( STDMETHODCALLTYPE *AddPointer )( 
-            ITypeNameBuilder * This);
+        HRESULT ( STDMETHODCALLTYPE *SetHostControl )( 
+            ICLRRuntimeHost * This,
+            /* [in] */ IHostControl *pHostControl);
         
-        HRESULT ( STDMETHODCALLTYPE *AddByRef )( 
-            ITypeNameBuilder * This);
+        HRESULT ( STDMETHODCALLTYPE *GetCLRControl )( 
+            ICLRRuntimeHost * This,
+            /* [out] */ ICLRControl **pCLRControl);
         
-        HRESULT ( STDMETHODCALLTYPE *AddSzArray )( 
-            ITypeNameBuilder * This);
+        HRESULT ( STDMETHODCALLTYPE *UnloadAppDomain )( 
+            ICLRRuntimeHost * This,
+            /* [in] */ DWORD dwAppDomainId,
+            /* [in] */ BOOL fWaitUntilDone);
         
-        HRESULT ( STDMETHODCALLTYPE *AddArray )( 
-            ITypeNameBuilder * This,
-            /* [in] */ DWORD rank);
+        HRESULT ( STDMETHODCALLTYPE *ExecuteInAppDomain )( 
+            ICLRRuntimeHost * This,
+            /* [in] */ DWORD dwAppDomainId,
+            /* [in] */ FExecuteInAppDomainCallback pCallback,
+            /* [in] */ void *cookie);
         
-        HRESULT ( STDMETHODCALLTYPE *AddAssemblySpec )( 
-            ITypeNameBuilder * This,
-            /* [in] */ LPCWSTR szAssemblySpec);
+        HRESULT ( STDMETHODCALLTYPE *GetCurrentAppDomainId )( 
+            ICLRRuntimeHost * This,
+            /* [out] */ DWORD *pdwAppDomainId);
         
-        HRESULT ( STDMETHODCALLTYPE *ToString )( 
-            ITypeNameBuilder * This,
-            /* [retval][out] */ BSTR *pszStringRepresentation);
+        HRESULT ( STDMETHODCALLTYPE *ExecuteApplication )( 
+            ICLRRuntimeHost * This,
+            /* [in] */ LPCWSTR pwzAppFullName,
+            /* [in] */ DWORD dwManifestPaths,
+            /* [in] */ LPCWSTR *ppwzManifestPaths,
+            /* [in] */ DWORD dwActivationData,
+            /* [in] */ LPCWSTR *ppwzActivationData,
+            /* [out] */ int *pReturnValue);
         
-        HRESULT ( STDMETHODCALLTYPE *Clear )( 
-            ITypeNameBuilder * This);
+        HRESULT ( STDMETHODCALLTYPE *ExecuteInDefaultAppDomain )( 
+            ICLRRuntimeHost * This,
+            /* [in] */ LPCWSTR pwzAssemblyPath,
+            /* [in] */ LPCWSTR pwzTypeName,
+            /* [in] */ LPCWSTR pwzMethodName,
+            /* [in] */ LPCWSTR pwzArgument,
+            /* [out] */ DWORD *pReturnValue);
         
         END_INTERFACE
-    } ITypeNameBuilderVtbl;
+    } ICLRRuntimeHostVtbl;
 
-    interface ITypeNameBuilder
+    interface ICLRRuntimeHost
     {
-        CONST_VTBL struct ITypeNameBuilderVtbl *lpVtbl;
+        CONST_VTBL struct ICLRRuntimeHostVtbl *lpVtbl;
     };
 
     
@@ -2504,51 +369,42 @@ EXTERN_C const IID IID_ITypeNameBuilder;
 #ifdef COBJMACROS
 
 
-#define ITypeNameBuilder_QueryInterface(This,riid,ppvObject)   \
+#define ICLRRuntimeHost_QueryInterface(This,riid,ppvObject)    \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define ITypeNameBuilder_AddRef(This)  \
+#define ICLRRuntimeHost_AddRef(This)   \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define ITypeNameBuilder_Release(This) \
+#define ICLRRuntimeHost_Release(This)  \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ITypeNameBuilder_OpenGenericArguments(This)    \
-    ( (This)->lpVtbl -> OpenGenericArguments(This) ) 
-
-#define ITypeNameBuilder_CloseGenericArguments(This)   \
-    ( (This)->lpVtbl -> CloseGenericArguments(This) ) 
-
-#define ITypeNameBuilder_OpenGenericArgument(This)     \
-    ( (This)->lpVtbl -> OpenGenericArgument(This) ) 
-
-#define ITypeNameBuilder_CloseGenericArgument(This)    \
-    ( (This)->lpVtbl -> CloseGenericArgument(This) ) 
+#define ICLRRuntimeHost_Start(This)    \
+    ( (This)->lpVtbl -> Start(This) ) 
 
-#define ITypeNameBuilder_AddName(This,szName)  \
-    ( (This)->lpVtbl -> AddName(This,szName) ) 
+#define ICLRRuntimeHost_Stop(This)     \
+    ( (This)->lpVtbl -> Stop(This) ) 
 
-#define ITypeNameBuilder_AddPointer(This)      \
-    ( (This)->lpVtbl -> AddPointer(This) ) 
+#define ICLRRuntimeHost_SetHostControl(This,pHostControl)      \
+    ( (This)->lpVtbl -> SetHostControl(This,pHostControl) ) 
 
-#define ITypeNameBuilder_AddByRef(This)        \
-    ( (This)->lpVtbl -> AddByRef(This) ) 
+#define ICLRRuntimeHost_GetCLRControl(This,pCLRControl)        \
+    ( (This)->lpVtbl -> GetCLRControl(This,pCLRControl) ) 
 
-#define ITypeNameBuilder_AddSzArray(This)      \
-    ( (This)->lpVtbl -> AddSzArray(This) ) 
+#define ICLRRuntimeHost_UnloadAppDomain(This,dwAppDomainId,fWaitUntilDone)     \
+    ( (This)->lpVtbl -> UnloadAppDomain(This,dwAppDomainId,fWaitUntilDone) ) 
 
-#define ITypeNameBuilder_AddArray(This,rank)   \
-    ( (This)->lpVtbl -> AddArray(This,rank) ) 
+#define ICLRRuntimeHost_ExecuteInAppDomain(This,dwAppDomainId,pCallback,cookie)        \
+    ( (This)->lpVtbl -> ExecuteInAppDomain(This,dwAppDomainId,pCallback,cookie) ) 
 
-#define ITypeNameBuilder_AddAssemblySpec(This,szAssemblySpec)  \
-    ( (This)->lpVtbl -> AddAssemblySpec(This,szAssemblySpec) ) 
+#define ICLRRuntimeHost_GetCurrentAppDomainId(This,pdwAppDomainId)     \
+    ( (This)->lpVtbl -> GetCurrentAppDomainId(This,pdwAppDomainId) ) 
 
-#define ITypeNameBuilder_ToString(This,pszStringRepresentation)        \
-    ( (This)->lpVtbl -> ToString(This,pszStringRepresentation) ) 
+#define ICLRRuntimeHost_ExecuteApplication(This,pwzAppFullName,dwManifestPaths,ppwzManifestPaths,dwActivationData,ppwzActivationData,pReturnValue)     \
+    ( (This)->lpVtbl -> ExecuteApplication(This,pwzAppFullName,dwManifestPaths,ppwzManifestPaths,dwActivationData,ppwzActivationData,pReturnValue) ) 
 
-#define ITypeNameBuilder_Clear(This)   \
-    ( (This)->lpVtbl -> Clear(This) ) 
+#define ICLRRuntimeHost_ExecuteInDefaultAppDomain(This,pwzAssemblyPath,pwzTypeName,pwzMethodName,pwzArgument,pReturnValue)     \
+    ( (This)->lpVtbl -> ExecuteInDefaultAppDomain(This,pwzAssemblyPath,pwzTypeName,pwzMethodName,pwzArgument,pReturnValue) ) 
 
 #endif /* COBJMACROS */
 
@@ -2558,163 +414,178 @@ EXTERN_C const IID IID_ITypeNameBuilder;
 
 
 
-#endif         /* __ITypeNameBuilder_INTERFACE_DEFINED__ */
+#endif         /* __ICLRRuntimeHost_INTERFACE_DEFINED__ */
 
 
-#ifndef __ITypeNameFactory_INTERFACE_DEFINED__
-#define __ITypeNameFactory_INTERFACE_DEFINED__
+#ifndef __ICLRRuntimeHost2_INTERFACE_DEFINED__
+#define __ICLRRuntimeHost2_INTERFACE_DEFINED__
 
-/* interface ITypeNameFactory */
-/* [unique][helpstring][uuid][oleautomation][object] */ 
+/* interface ICLRRuntimeHost2 */
+/* [local][unique][helpstring][version][uuid][object] */ 
 
 
-EXTERN_C const IID IID_ITypeNameFactory;
+EXTERN_C const IID IID_ICLRRuntimeHost2;
 
 #if defined(__cplusplus) && !defined(CINTERFACE)
     
-    MIDL_INTERFACE("B81FF171-20F3-11d2-8DCC-00A0C9B00521")
-    ITypeNameFactory : public IUnknown
+    MIDL_INTERFACE("712AB73F-2C22-4807-AD7E-F501D7B72C2D")
+    ICLRRuntimeHost2 : public ICLRRuntimeHost
     {
     public:
-        virtual HRESULT STDMETHODCALLTYPE ParseTypeName( 
-            /* [in] */ LPCWSTR szName,
-            /* [out] */ DWORD *pError,
-            /* [retval][out] */ ITypeName **ppTypeName) = 0;
+        virtual HRESULT STDMETHODCALLTYPE CreateAppDomainWithManager( 
+            /* [in] */ LPCWSTR wszFriendlyName,
+            /* [in] */ DWORD dwFlags,
+            /* [in] */ LPCWSTR wszAppDomainManagerAssemblyName,
+            /* [in] */ LPCWSTR wszAppDomainManagerTypeName,
+            /* [in] */ int nProperties,
+            /* [in] */ LPCWSTR *pPropertyNames,
+            /* [in] */ LPCWSTR *pPropertyValues,
+            /* [out] */ DWORD *pAppDomainID) = 0;
+        
+        virtual HRESULT STDMETHODCALLTYPE CreateDelegate( 
+            /* [in] */ DWORD appDomainID,
+            /* [in] */ LPCWSTR wszAssemblyName,
+            /* [in] */ LPCWSTR wszClassName,
+            /* [in] */ LPCWSTR wszMethodName,
+            /* [out] */ INT_PTR *fnPtr) = 0;
+        
+        virtual HRESULT STDMETHODCALLTYPE Authenticate( 
+            /* [in] */ ULONGLONG authKey) = 0;
+        
+        virtual HRESULT STDMETHODCALLTYPE RegisterMacEHPort( void) = 0;
+        
+        virtual HRESULT STDMETHODCALLTYPE SetStartupFlags( 
+            /* [in] */ STARTUP_FLAGS dwFlags) = 0;
+        
+        virtual HRESULT STDMETHODCALLTYPE DllGetActivationFactory( 
+            /* [in] */ DWORD appDomainID,
+            /* [in] */ LPCWSTR wszTypeName,
+            /* [out] */ IActivationFactory **factory) = 0;
         
-        virtual HRESULT STDMETHODCALLTYPE GetTypeNameBuilder( 
-            /* [retval][out] */ ITypeNameBuilder **ppTypeBuilder) = 0;
+        virtual HRESULT STDMETHODCALLTYPE ExecuteAssembly( 
+            /* [in] */ DWORD dwAppDomainId,
+            /* [in] */ LPCWSTR pwzAssemblyPath,
+            /* [in] */ int argc,
+            /* [in] */ LPCWSTR *argv,
+            /* [out] */ DWORD *pReturnValue) = 0;
         
     };
     
     
 #else  /* C style interface */
 
-    typedef struct ITypeNameFactoryVtbl
+    typedef struct ICLRRuntimeHost2Vtbl
     {
         BEGIN_INTERFACE
         
         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            ITypeNameFactory * This,
+            ICLRRuntimeHost2 * This,
             /* [in] */ REFIID riid,
             /* [annotation][iid_is][out] */ 
             _COM_Outptr_  void **ppvObject);
         
         ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            ITypeNameFactory * This);
+            ICLRRuntimeHost2 * This);
         
         ULONG ( STDMETHODCALLTYPE *Release )( 
-            ITypeNameFactory * This);
+            ICLRRuntimeHost2 * This);
         
-        HRESULT ( STDMETHODCALLTYPE *ParseTypeName )( 
-            ITypeNameFactory * This,
-            /* [in] */ LPCWSTR szName,
-            /* [out] */ DWORD *pError,
-            /* [retval][out] */ ITypeName **ppTypeName);
+        HRESULT ( STDMETHODCALLTYPE *Start )( 
+            ICLRRuntimeHost2 * This);
         
-        HRESULT ( STDMETHODCALLTYPE *GetTypeNameBuilder )( 
-            ITypeNameFactory * This,
-            /* [retval][out] */ ITypeNameBuilder **ppTypeBuilder);
+        HRESULT ( STDMETHODCALLTYPE *Stop )( 
+            ICLRRuntimeHost2 * This);
         
-        END_INTERFACE
-    } ITypeNameFactoryVtbl;
-
-    interface ITypeNameFactory
-    {
-        CONST_VTBL struct ITypeNameFactoryVtbl *lpVtbl;
-    };
-
-    
-
-#ifdef COBJMACROS
-
-
-#define ITypeNameFactory_QueryInterface(This,riid,ppvObject)   \
-    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
-
-#define ITypeNameFactory_AddRef(This)  \
-    ( (This)->lpVtbl -> AddRef(This) ) 
-
-#define ITypeNameFactory_Release(This) \
-    ( (This)->lpVtbl -> Release(This) ) 
-
-
-#define ITypeNameFactory_ParseTypeName(This,szName,pError,ppTypeName)  \
-    ( (This)->lpVtbl -> ParseTypeName(This,szName,pError,ppTypeName) ) 
-
-#define ITypeNameFactory_GetTypeNameBuilder(This,ppTypeBuilder)        \
-    ( (This)->lpVtbl -> GetTypeNameBuilder(This,ppTypeBuilder) ) 
-
-#endif /* COBJMACROS */
-
-
-#endif         /* C style interface */
-
-
-
-
-#endif         /* __ITypeNameFactory_INTERFACE_DEFINED__ */
-
-
-#ifndef __IManagedObject_INTERFACE_DEFINED__
-#define __IManagedObject_INTERFACE_DEFINED__
-
-/* interface IManagedObject */
-/* [proxy][unique][helpstring][uuid][oleautomation][object] */ 
-
-
-EXTERN_C const IID IID_IManagedObject;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-    
-    MIDL_INTERFACE("C3FCC19E-A970-11d2-8B5A-00A0C9B7C9C4")
-    IManagedObject : public IUnknown
-    {
-    public:
-        virtual HRESULT STDMETHODCALLTYPE GetSerializedBuffer( 
-            /* [out] */ BSTR *pBSTR) = 0;
+        HRESULT ( STDMETHODCALLTYPE *SetHostControl )( 
+            ICLRRuntimeHost2 * This,
+            /* [in] */ IHostControl *pHostControl);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetCLRControl )( 
+            ICLRRuntimeHost2 * This,
+            /* [out] */ ICLRControl **pCLRControl);
         
-        virtual HRESULT STDMETHODCALLTYPE GetObjectIdentity
-            /* [out] */ BSTR *pBSTRGUID,
-            /* [out] */ int *AppDomainID,
-            /* [out] */ int *pCCW) = 0;
+        HRESULT ( STDMETHODCALLTYPE *UnloadAppDomain )
+            ICLRRuntimeHost2 * This,
+            /* [in] */ DWORD dwAppDomainId,
+            /* [in] */ BOOL fWaitUntilDone);
         
-    };
-    
-    
-#else  /* C style interface */
-
-    typedef struct IManagedObjectVtbl
-    {
-        BEGIN_INTERFACE
+        HRESULT ( STDMETHODCALLTYPE *ExecuteInAppDomain )( 
+            ICLRRuntimeHost2 * This,
+            /* [in] */ DWORD dwAppDomainId,
+            /* [in] */ FExecuteInAppDomainCallback pCallback,
+            /* [in] */ void *cookie);
         
-        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            IManagedObject * This,
-            /* [in] */ REFIID riid,
-            /* [annotation][iid_is][out] */ 
-            _COM_Outptr_  void **ppvObject);
+        HRESULT ( STDMETHODCALLTYPE *GetCurrentAppDomainId )( 
+            ICLRRuntimeHost2 * This,
+            /* [out] */ DWORD *pdwAppDomainId);
         
-        ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            IManagedObject * This);
+        HRESULT ( STDMETHODCALLTYPE *ExecuteApplication )( 
+            ICLRRuntimeHost2 * This,
+            /* [in] */ LPCWSTR pwzAppFullName,
+            /* [in] */ DWORD dwManifestPaths,
+            /* [in] */ LPCWSTR *ppwzManifestPaths,
+            /* [in] */ DWORD dwActivationData,
+            /* [in] */ LPCWSTR *ppwzActivationData,
+            /* [out] */ int *pReturnValue);
         
-        ULONG ( STDMETHODCALLTYPE *Release )( 
-            IManagedObject * This);
+        HRESULT ( STDMETHODCALLTYPE *ExecuteInDefaultAppDomain )( 
+            ICLRRuntimeHost2 * This,
+            /* [in] */ LPCWSTR pwzAssemblyPath,
+            /* [in] */ LPCWSTR pwzTypeName,
+            /* [in] */ LPCWSTR pwzMethodName,
+            /* [in] */ LPCWSTR pwzArgument,
+            /* [out] */ DWORD *pReturnValue);
+        
+        HRESULT ( STDMETHODCALLTYPE *CreateAppDomainWithManager )( 
+            ICLRRuntimeHost2 * This,
+            /* [in] */ LPCWSTR wszFriendlyName,
+            /* [in] */ DWORD dwFlags,
+            /* [in] */ LPCWSTR wszAppDomainManagerAssemblyName,
+            /* [in] */ LPCWSTR wszAppDomainManagerTypeName,
+            /* [in] */ int nProperties,
+            /* [in] */ LPCWSTR *pPropertyNames,
+            /* [in] */ LPCWSTR *pPropertyValues,
+            /* [out] */ DWORD *pAppDomainID);
+        
+        HRESULT ( STDMETHODCALLTYPE *CreateDelegate )( 
+            ICLRRuntimeHost2 * This,
+            /* [in] */ DWORD appDomainID,
+            /* [in] */ LPCWSTR wszAssemblyName,
+            /* [in] */ LPCWSTR wszClassName,
+            /* [in] */ LPCWSTR wszMethodName,
+            /* [out] */ INT_PTR *fnPtr);
+        
+        HRESULT ( STDMETHODCALLTYPE *Authenticate )( 
+            ICLRRuntimeHost2 * This,
+            /* [in] */ ULONGLONG authKey);
+        
+        HRESULT ( STDMETHODCALLTYPE *RegisterMacEHPort )( 
+            ICLRRuntimeHost2 * This);
+        
+        HRESULT ( STDMETHODCALLTYPE *SetStartupFlags )( 
+            ICLRRuntimeHost2 * This,
+            /* [in] */ STARTUP_FLAGS dwFlags);
         
-        HRESULT ( STDMETHODCALLTYPE *GetSerializedBuffer )( 
-            IManagedObject * This,
-            /* [out] */ BSTR *pBSTR);
+        HRESULT ( STDMETHODCALLTYPE *DllGetActivationFactory )( 
+            ICLRRuntimeHost2 * This,
+            /* [in] */ DWORD appDomainID,
+            /* [in] */ LPCWSTR wszTypeName,
+            /* [out] */ IActivationFactory **factory);
         
-        HRESULT ( STDMETHODCALLTYPE *GetObjectIdentity )( 
-            IManagedObject * This,
-            /* [out] */ BSTR *pBSTRGUID,
-            /* [out] */ int *AppDomainID,
-            /* [out] */ int *pCCW);
+        HRESULT ( STDMETHODCALLTYPE *ExecuteAssembly )( 
+            ICLRRuntimeHost2 * This,
+            /* [in] */ DWORD dwAppDomainId,
+            /* [in] */ LPCWSTR pwzAssemblyPath,
+            /* [in] */ int argc,
+            /* [in] */ LPCWSTR *argv,
+            /* [out] */ DWORD *pReturnValue);
         
         END_INTERFACE
-    } IManagedObjectVtbl;
+    } ICLRRuntimeHost2Vtbl;
 
-    interface IManagedObject
+    interface ICLRRuntimeHost2
     {
-        CONST_VTBL struct IManagedObjectVtbl *lpVtbl;
+        CONST_VTBL struct ICLRRuntimeHost2Vtbl *lpVtbl;
     };
 
     
@@ -2722,152 +593,219 @@ EXTERN_C const IID IID_IManagedObject;
 #ifdef COBJMACROS
 
 
-#define IManagedObject_QueryInterface(This,riid,ppvObject)     \
+#define ICLRRuntimeHost2_QueryInterface(This,riid,ppvObject)   \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define IManagedObject_AddRef(This)    \
+#define ICLRRuntimeHost2_AddRef(This)  \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define IManagedObject_Release(This)   \
+#define ICLRRuntimeHost2_Release(This) \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define IManagedObject_GetSerializedBuffer(This,pBSTR) \
-    ( (This)->lpVtbl -> GetSerializedBuffer(This,pBSTR) ) 
-
-#define IManagedObject_GetObjectIdentity(This,pBSTRGUID,AppDomainID,pCCW)      \
-    ( (This)->lpVtbl -> GetObjectIdentity(This,pBSTRGUID,AppDomainID,pCCW) ) 
-
-#endif /* COBJMACROS */
+#define ICLRRuntimeHost2_Start(This)   \
+    ( (This)->lpVtbl -> Start(This) ) 
 
+#define ICLRRuntimeHost2_Stop(This)    \
+    ( (This)->lpVtbl -> Stop(This) ) 
 
-#endif         /* C style interface */
+#define ICLRRuntimeHost2_SetHostControl(This,pHostControl)     \
+    ( (This)->lpVtbl -> SetHostControl(This,pHostControl) ) 
 
+#define ICLRRuntimeHost2_GetCLRControl(This,pCLRControl)       \
+    ( (This)->lpVtbl -> GetCLRControl(This,pCLRControl) ) 
 
+#define ICLRRuntimeHost2_UnloadAppDomain(This,dwAppDomainId,fWaitUntilDone)    \
+    ( (This)->lpVtbl -> UnloadAppDomain(This,dwAppDomainId,fWaitUntilDone) ) 
 
+#define ICLRRuntimeHost2_ExecuteInAppDomain(This,dwAppDomainId,pCallback,cookie)       \
+    ( (This)->lpVtbl -> ExecuteInAppDomain(This,dwAppDomainId,pCallback,cookie) ) 
 
-#endif         /* __IManagedObject_INTERFACE_DEFINED__ */
+#define ICLRRuntimeHost2_GetCurrentAppDomainId(This,pdwAppDomainId)    \
+    ( (This)->lpVtbl -> GetCurrentAppDomainId(This,pdwAppDomainId) ) 
 
+#define ICLRRuntimeHost2_ExecuteApplication(This,pwzAppFullName,dwManifestPaths,ppwzManifestPaths,dwActivationData,ppwzActivationData,pReturnValue)    \
+    ( (This)->lpVtbl -> ExecuteApplication(This,pwzAppFullName,dwManifestPaths,ppwzManifestPaths,dwActivationData,ppwzActivationData,pReturnValue) ) 
 
-EXTERN_C const CLSID CLSID_ComCallUnmarshal;
+#define ICLRRuntimeHost2_ExecuteInDefaultAppDomain(This,pwzAssemblyPath,pwzTypeName,pwzMethodName,pwzArgument,pReturnValue)    \
+    ( (This)->lpVtbl -> ExecuteInDefaultAppDomain(This,pwzAssemblyPath,pwzTypeName,pwzMethodName,pwzArgument,pReturnValue) ) 
 
-#ifdef __cplusplus
 
-class DECLSPEC_UUID("3F281000-E95A-11d2-886B-00C04F869F04")
-ComCallUnmarshal;
-#endif
+#define ICLRRuntimeHost2_CreateAppDomainWithManager(This,wszFriendlyName,dwFlags,wszAppDomainManagerAssemblyName,wszAppDomainManagerTypeName,nProperties,pPropertyNames,pPropertyValues,pAppDomainID)  \
+    ( (This)->lpVtbl -> CreateAppDomainWithManager(This,wszFriendlyName,dwFlags,wszAppDomainManagerAssemblyName,wszAppDomainManagerTypeName,nProperties,pPropertyNames,pPropertyValues,pAppDomainID) ) 
 
-EXTERN_C const CLSID CLSID_ComCallUnmarshalV4;
+#define ICLRRuntimeHost2_CreateDelegate(This,appDomainID,wszAssemblyName,wszClassName,wszMethodName,fnPtr)     \
+    ( (This)->lpVtbl -> CreateDelegate(This,appDomainID,wszAssemblyName,wszClassName,wszMethodName,fnPtr) ) 
 
-#ifdef __cplusplus
+#define ICLRRuntimeHost2_Authenticate(This,authKey)    \
+    ( (This)->lpVtbl -> Authenticate(This,authKey) ) 
 
-class DECLSPEC_UUID("45FB4600-E6E8-4928-B25E-50476FF79425")
-ComCallUnmarshalV4;
-#endif
+#define ICLRRuntimeHost2_RegisterMacEHPort(This)       \
+    ( (This)->lpVtbl -> RegisterMacEHPort(This) ) 
 
-EXTERN_C const CLSID CLSID_CLRRuntimeHost;
+#define ICLRRuntimeHost2_SetStartupFlags(This,dwFlags) \
+    ( (This)->lpVtbl -> SetStartupFlags(This,dwFlags) ) 
 
-#ifdef __cplusplus
+#define ICLRRuntimeHost2_DllGetActivationFactory(This,appDomainID,wszTypeName,factory) \
+    ( (This)->lpVtbl -> DllGetActivationFactory(This,appDomainID,wszTypeName,factory) ) 
 
-class DECLSPEC_UUID("90F1A06E-7712-4762-86B5-7A5EBA6BDB02")
-CLRRuntimeHost;
-#endif
+#define ICLRRuntimeHost2_ExecuteAssembly(This,dwAppDomainId,pwzAssemblyPath,argc,argv,pReturnValue)    \
+    ( (This)->lpVtbl -> ExecuteAssembly(This,dwAppDomainId,pwzAssemblyPath,argc,argv,pReturnValue) ) 
 
-EXTERN_C const CLSID CLSID_TypeNameFactory;
+#endif /* COBJMACROS */
 
-#ifdef __cplusplus
 
-class DECLSPEC_UUID("B81FF171-20F3-11d2-8DCC-00A0C9B00525")
-TypeNameFactory;
-#endif
-#endif /* __mscoree_LIBRARY_DEFINED__ */
+#endif         /* C style interface */
 
-/* interface __MIDL_itf_mscoree_0000_0014 */
-/* [local] */ 
 
-typedef /* [public] */ 
-enum __MIDL___MIDL_itf_mscoree_0000_0014_0001
-    {
-        eCurrentContext        = 0,
-        eRestrictedContext     = 0x1
-    }  EContextType;
 
 
+#endif         /* __ICLRRuntimeHost2_INTERFACE_DEFINED__ */
 
-extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0014_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0014_v0_0_s_ifspec;
 
-#ifndef __ICLRAppDomainResourceMonitor_INTERFACE_DEFINED__
-#define __ICLRAppDomainResourceMonitor_INTERFACE_DEFINED__
+#ifndef __ICLRRuntimeHost4_INTERFACE_DEFINED__
+#define __ICLRRuntimeHost4_INTERFACE_DEFINED__
 
-/* interface ICLRAppDomainResourceMonitor */
-/* [object][local][unique][helpstring][uuid][version] */ 
+/* interface ICLRRuntimeHost4 */
+/* [local][unique][helpstring][version][uuid][object] */ 
 
 
-EXTERN_C const IID IID_ICLRAppDomainResourceMonitor;
+EXTERN_C const IID IID_ICLRRuntimeHost4;
 
 #if defined(__cplusplus) && !defined(CINTERFACE)
     
-    MIDL_INTERFACE("c62de18c-2e23-4aea-8423-b40c1fc59eae")
-    ICLRAppDomainResourceMonitor : public IUnknown
+    MIDL_INTERFACE("64F6D366-D7C2-4F1F-B4B2-E8160CAC43AF")
+    ICLRRuntimeHost4 : public ICLRRuntimeHost2
     {
     public:
-        virtual HRESULT STDMETHODCALLTYPE GetCurrentAllocated
+        virtual HRESULT STDMETHODCALLTYPE UnloadAppDomain2
             /* [in] */ DWORD dwAppDomainId,
-            /* [out] */ ULONGLONG *pBytesAllocated) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE GetCurrentSurvived( 
-            /* [in] */ DWORD dwAppDomainId,
-            /* [out] */ ULONGLONG *pAppDomainBytesSurvived,
-            /* [out] */ ULONGLONG *pTotalBytesSurvived) = 0;
-        
-        virtual HRESULT STDMETHODCALLTYPE GetCurrentCpuTime( 
-            /* [in] */ DWORD dwAppDomainId,
-            /* [out] */ ULONGLONG *pMilliseconds) = 0;
+            /* [in] */ BOOL fWaitUntilDone,
+            /* [out] */ int *pLatchedExitCode) = 0;
         
     };
     
     
 #else  /* C style interface */
 
-    typedef struct ICLRAppDomainResourceMonitorVtbl
+    typedef struct ICLRRuntimeHost4Vtbl
     {
         BEGIN_INTERFACE
         
         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
-            ICLRAppDomainResourceMonitor * This,
+            ICLRRuntimeHost4 * This,
             /* [in] */ REFIID riid,
             /* [annotation][iid_is][out] */ 
             _COM_Outptr_  void **ppvObject);
         
         ULONG ( STDMETHODCALLTYPE *AddRef )( 
-            ICLRAppDomainResourceMonitor * This);
+            ICLRRuntimeHost4 * This);
         
         ULONG ( STDMETHODCALLTYPE *Release )( 
-            ICLRAppDomainResourceMonitor * This);
+            ICLRRuntimeHost4 * This);
+        
+        HRESULT ( STDMETHODCALLTYPE *Start )( 
+            ICLRRuntimeHost4 * This);
+        
+        HRESULT ( STDMETHODCALLTYPE *Stop )( 
+            ICLRRuntimeHost4 * This);
+        
+        HRESULT ( STDMETHODCALLTYPE *SetHostControl )( 
+            ICLRRuntimeHost4 * This,
+            /* [in] */ IHostControl *pHostControl);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetCLRControl )( 
+            ICLRRuntimeHost4 * This,
+            /* [out] */ ICLRControl **pCLRControl);
         
-        HRESULT ( STDMETHODCALLTYPE *GetCurrentAllocated )( 
-            ICLRAppDomainResourceMonitor * This,
+        HRESULT ( STDMETHODCALLTYPE *UnloadAppDomain )( 
+            ICLRRuntimeHost4 * This,
+            /* [in] */ DWORD dwAppDomainId,
+            /* [in] */ BOOL fWaitUntilDone);
+        
+        HRESULT ( STDMETHODCALLTYPE *ExecuteInAppDomain )( 
+            ICLRRuntimeHost4 * This,
             /* [in] */ DWORD dwAppDomainId,
-            /* [out] */ ULONGLONG *pBytesAllocated);
+            /* [in] */ FExecuteInAppDomainCallback pCallback,
+            /* [in] */ void *cookie);
+        
+        HRESULT ( STDMETHODCALLTYPE *GetCurrentAppDomainId )( 
+            ICLRRuntimeHost4 * This,
+            /* [out] */ DWORD *pdwAppDomainId);
+        
+        HRESULT ( STDMETHODCALLTYPE *ExecuteApplication )( 
+            ICLRRuntimeHost4 * This,
+            /* [in] */ LPCWSTR pwzAppFullName,
+            /* [in] */ DWORD dwManifestPaths,
+            /* [in] */ LPCWSTR *ppwzManifestPaths,
+            /* [in] */ DWORD dwActivationData,
+            /* [in] */ LPCWSTR *ppwzActivationData,
+            /* [out] */ int *pReturnValue);
+        
+        HRESULT ( STDMETHODCALLTYPE *ExecuteInDefaultAppDomain )( 
+            ICLRRuntimeHost4 * This,
+            /* [in] */ LPCWSTR pwzAssemblyPath,
+            /* [in] */ LPCWSTR pwzTypeName,
+            /* [in] */ LPCWSTR pwzMethodName,
+            /* [in] */ LPCWSTR pwzArgument,
+            /* [out] */ DWORD *pReturnValue);
+        
+        HRESULT ( STDMETHODCALLTYPE *CreateAppDomainWithManager )( 
+            ICLRRuntimeHost4 * This,
+            /* [in] */ LPCWSTR wszFriendlyName,
+            /* [in] */ DWORD dwFlags,
+            /* [in] */ LPCWSTR wszAppDomainManagerAssemblyName,
+            /* [in] */ LPCWSTR wszAppDomainManagerTypeName,
+            /* [in] */ int nProperties,
+            /* [in] */ LPCWSTR *pPropertyNames,
+            /* [in] */ LPCWSTR *pPropertyValues,
+            /* [out] */ DWORD *pAppDomainID);
+        
+        HRESULT ( STDMETHODCALLTYPE *CreateDelegate )( 
+            ICLRRuntimeHost4 * This,
+            /* [in] */ DWORD appDomainID,
+            /* [in] */ LPCWSTR wszAssemblyName,
+            /* [in] */ LPCWSTR wszClassName,
+            /* [in] */ LPCWSTR wszMethodName,
+            /* [out] */ INT_PTR *fnPtr);
+        
+        HRESULT ( STDMETHODCALLTYPE *Authenticate )( 
+            ICLRRuntimeHost4 * This,
+            /* [in] */ ULONGLONG authKey);
+        
+        HRESULT ( STDMETHODCALLTYPE *RegisterMacEHPort )( 
+            ICLRRuntimeHost4 * This);
+        
+        HRESULT ( STDMETHODCALLTYPE *SetStartupFlags )( 
+            ICLRRuntimeHost4 * This,
+            /* [in] */ STARTUP_FLAGS dwFlags);
+        
+        HRESULT ( STDMETHODCALLTYPE *DllGetActivationFactory )( 
+            ICLRRuntimeHost4 * This,
+            /* [in] */ DWORD appDomainID,
+            /* [in] */ LPCWSTR wszTypeName,
+            /* [out] */ IActivationFactory **factory);
         
-        HRESULT ( STDMETHODCALLTYPE *GetCurrentSurvived )( 
-            ICLRAppDomainResourceMonitor * This,
+        HRESULT ( STDMETHODCALLTYPE *ExecuteAssembly )( 
+            ICLRRuntimeHost4 * This,
             /* [in] */ DWORD dwAppDomainId,
-            /* [out] */ ULONGLONG *pAppDomainBytesSurvived,
-            /* [out] */ ULONGLONG *pTotalBytesSurvived);
+            /* [in] */ LPCWSTR pwzAssemblyPath,
+            /* [in] */ int argc,
+            /* [in] */ LPCWSTR *argv,
+            /* [out] */ DWORD *pReturnValue);
         
-        HRESULT ( STDMETHODCALLTYPE *GetCurrentCpuTime )( 
-            ICLRAppDomainResourceMonitor * This,
+        HRESULT ( STDMETHODCALLTYPE *UnloadAppDomain2 )( 
+            ICLRRuntimeHost4 * This,
             /* [in] */ DWORD dwAppDomainId,
-            /* [out] */ ULONGLONG *pMilliseconds);
+            /* [in] */ BOOL fWaitUntilDone,
+            /* [out] */ int *pLatchedExitCode);
         
         END_INTERFACE
-    } ICLRAppDomainResourceMonitorVtbl;
+    } ICLRRuntimeHost4Vtbl;
 
-    interface ICLRAppDomainResourceMonitor
+    interface ICLRRuntimeHost4
     {
-        CONST_VTBL struct ICLRAppDomainResourceMonitorVtbl *lpVtbl;
+        CONST_VTBL struct ICLRRuntimeHost4Vtbl *lpVtbl;
     };
 
     
@@ -2875,24 +813,68 @@ EXTERN_C const IID IID_ICLRAppDomainResourceMonitor;
 #ifdef COBJMACROS
 
 
-#define ICLRAppDomainResourceMonitor_QueryInterface(This,riid,ppvObject)       \
+#define ICLRRuntimeHost4_QueryInterface(This,riid,ppvObject)   \
     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
 
-#define ICLRAppDomainResourceMonitor_AddRef(This)      \
+#define ICLRRuntimeHost4_AddRef(This)  \
     ( (This)->lpVtbl -> AddRef(This) ) 
 
-#define ICLRAppDomainResourceMonitor_Release(This)     \
+#define ICLRRuntimeHost4_Release(This) \
     ( (This)->lpVtbl -> Release(This) ) 
 
 
-#define ICLRAppDomainResourceMonitor_GetCurrentAllocated(This,dwAppDomainId,pBytesAllocated)   \
-    ( (This)->lpVtbl -> GetCurrentAllocated(This,dwAppDomainId,pBytesAllocated) ) 
+#define ICLRRuntimeHost4_Start(This)   \
+    ( (This)->lpVtbl -> Start(This) ) 
+
+#define ICLRRuntimeHost4_Stop(This)    \
+    ( (This)->lpVtbl -> Stop(This) ) 
+
+#define ICLRRuntimeHost4_SetHostControl(This,pHostControl)     \
+    ( (This)->lpVtbl -> SetHostControl(This,pHostControl) ) 
+
+#define ICLRRuntimeHost4_GetCLRControl(This,pCLRControl)       \
+    ( (This)->lpVtbl -> GetCLRControl(This,pCLRControl) ) 
+
+#define ICLRRuntimeHost4_UnloadAppDomain(This,dwAppDomainId,fWaitUntilDone)    \
+    ( (This)->lpVtbl -> UnloadAppDomain(This,dwAppDomainId,fWaitUntilDone) ) 
+
+#define ICLRRuntimeHost4_ExecuteInAppDomain(This,dwAppDomainId,pCallback,cookie)       \
+    ( (This)->lpVtbl -> ExecuteInAppDomain(This,dwAppDomainId,pCallback,cookie) ) 
+
+#define ICLRRuntimeHost4_GetCurrentAppDomainId(This,pdwAppDomainId)    \
+    ( (This)->lpVtbl -> GetCurrentAppDomainId(This,pdwAppDomainId) ) 
+
+#define ICLRRuntimeHost4_ExecuteApplication(This,pwzAppFullName,dwManifestPaths,ppwzManifestPaths,dwActivationData,ppwzActivationData,pReturnValue)    \
+    ( (This)->lpVtbl -> ExecuteApplication(This,pwzAppFullName,dwManifestPaths,ppwzManifestPaths,dwActivationData,ppwzActivationData,pReturnValue) ) 
+
+#define ICLRRuntimeHost4_ExecuteInDefaultAppDomain(This,pwzAssemblyPath,pwzTypeName,pwzMethodName,pwzArgument,pReturnValue)    \
+    ( (This)->lpVtbl -> ExecuteInDefaultAppDomain(This,pwzAssemblyPath,pwzTypeName,pwzMethodName,pwzArgument,pReturnValue) ) 
+
+
+#define ICLRRuntimeHost4_CreateAppDomainWithManager(This,wszFriendlyName,dwFlags,wszAppDomainManagerAssemblyName,wszAppDomainManagerTypeName,nProperties,pPropertyNames,pPropertyValues,pAppDomainID)  \
+    ( (This)->lpVtbl -> CreateAppDomainWithManager(This,wszFriendlyName,dwFlags,wszAppDomainManagerAssemblyName,wszAppDomainManagerTypeName,nProperties,pPropertyNames,pPropertyValues,pAppDomainID) ) 
+
+#define ICLRRuntimeHost4_CreateDelegate(This,appDomainID,wszAssemblyName,wszClassName,wszMethodName,fnPtr)     \
+    ( (This)->lpVtbl -> CreateDelegate(This,appDomainID,wszAssemblyName,wszClassName,wszMethodName,fnPtr) ) 
+
+#define ICLRRuntimeHost4_Authenticate(This,authKey)    \
+    ( (This)->lpVtbl -> Authenticate(This,authKey) ) 
+
+#define ICLRRuntimeHost4_RegisterMacEHPort(This)       \
+    ( (This)->lpVtbl -> RegisterMacEHPort(This) ) 
+
+#define ICLRRuntimeHost4_SetStartupFlags(This,dwFlags) \
+    ( (This)->lpVtbl -> SetStartupFlags(This,dwFlags) ) 
+
+#define ICLRRuntimeHost4_DllGetActivationFactory(This,appDomainID,wszTypeName,factory) \
+    ( (This)->lpVtbl -> DllGetActivationFactory(This,appDomainID,wszTypeName,factory) ) 
+
+#define ICLRRuntimeHost4_ExecuteAssembly(This,dwAppDomainId,pwzAssemblyPath,argc,argv,pReturnValue)    \
+    ( (This)->lpVtbl -> ExecuteAssembly(This,dwAppDomainId,pwzAssemblyPath,argc,argv,pReturnValue) ) 
 
-#define ICLRAppDomainResourceMonitor_GetCurrentSurvived(This,dwAppDomainId,pAppDomainBytesSurvived,pTotalBytesSurvived)        \
-    ( (This)->lpVtbl -> GetCurrentSurvived(This,dwAppDomainId,pAppDomainBytesSurvived,pTotalBytesSurvived) ) 
 
-#define ICLRAppDomainResourceMonitor_GetCurrentCpuTime(This,dwAppDomainId,pMilliseconds)       \
-    ( (This)->lpVtbl -> GetCurrentCpuTime(This,dwAppDomainId,pMilliseconds) ) 
+#define ICLRRuntimeHost4_UnloadAppDomain2(This,dwAppDomainId,fWaitUntilDone,pLatchedExitCode)  \
+    ( (This)->lpVtbl -> UnloadAppDomain2(This,dwAppDomainId,fWaitUntilDone,pLatchedExitCode) ) 
 
 #endif /* COBJMACROS */
 
@@ -2902,10 +884,10 @@ EXTERN_C const IID IID_ICLRAppDomainResourceMonitor;
 
 
 
-#endif         /* __ICLRAppDomainResourceMonitor_INTERFACE_DEFINED__ */
+#endif         /* __ICLRRuntimeHost4_INTERFACE_DEFINED__ */
 
 
-/* interface __MIDL_itf_mscoree_0000_0015 */
+/* interface __MIDL_itf_mscoree_0000_0003 */
 /* [local] */ 
 
 #undef DEPRECATED_CLR_STDAPI
@@ -2913,8 +895,8 @@ EXTERN_C const IID IID_ICLRAppDomainResourceMonitor;
 #undef DEPRECATED_CLR_API_MESG
 
 
-extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0015_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0015_v0_0_s_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0003_v0_0_c_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0003_v0_0_s_ifspec;
 
 /* Additional Prototypes for ALL interfaces */
 
index ce4dc07bbc841083f88f762e15c81b7e778e66d4..4160fe5e3ce3386c60a477f3207cd470f8b73bd3 100644 (file)
@@ -1,13 +1,19 @@
-// Licensed to the .NET Foundation under one or more agreements.
-// The .NET Foundation licenses this file to you under the MIT license.
-// See the LICENSE file in the project root for more information.
-
 
 
 /* this ALWAYS GENERATED file contains the definitions for the interfaces */
 
 
- /* File created by MIDL compiler version 8.00.0603 */
+ /* File created by MIDL compiler version 8.01.0622 */
+/* at Mon Jan 18 19:14:07 2038
+ */
+/* Compiler settings for F:/Dev/coreclr/src/inc/xcordebug.idl:
+    Oicf, W1, Zp8, env=Win32 (32b run), target_arch=X86 8.01.0622 
+    protocol : dce , ms_ext, c_ext, robust
+    error checks: allocation ref bounds_check enum stub_data 
+    VC __declspec() decoration level: 
+         __declspec(uuid()), __declspec(selectany), __declspec(novtable)
+         DECLSPEC_UUID(), MIDL_INTERFACE()
+*/
 /* @@MIDL_FILE_HEADING(  ) */
 
 #pragma warning( disable: 4049 )  /* more than 64k source lines */
@@ -23,7 +29,7 @@
 
 #ifndef __RPCNDR_H_VERSION__
 #error this stub requires an updated version of <rpcndr.h>
-#endif // __RPCNDR_H_VERSION__
+#endif /* __RPCNDR_H_VERSION__ */
 
 #ifndef COM_NO_WINDOWS_H
 #include "windows.h"
@@ -45,12 +51,14 @@ typedef interface ICorDebugProcess4 ICorDebugProcess4;
 
 #endif         /* __ICorDebugProcess4_FWD_DEFINED__ */
 
+
 #ifndef __ICorDebugLegacyNetCFHostCallbackInvoker_PrivateWindowsPhoneOnly_FWD_DEFINED__
 #define __ICorDebugLegacyNetCFHostCallbackInvoker_PrivateWindowsPhoneOnly_FWD_DEFINED__
 typedef interface ICorDebugLegacyNetCFHostCallbackInvoker_PrivateWindowsPhoneOnly ICorDebugLegacyNetCFHostCallbackInvoker_PrivateWindowsPhoneOnly;
 
 #endif         /* __ICorDebugLegacyNetCFHostCallbackInvoker_PrivateWindowsPhoneOnly_FWD_DEFINED__ */
 
+
 /* header files for imported files */
 #include "cordebug.h"
 
@@ -160,6 +168,7 @@ EXTERN_C const IID IID_ICorDebugProcess4;
 
 #endif         /* __ICorDebugProcess4_INTERFACE_DEFINED__ */
 
+
 #ifndef __ICorDebugLegacyNetCFHostCallbackInvoker_PrivateWindowsPhoneOnly_INTERFACE_DEFINED__
 #define __ICorDebugLegacyNetCFHostCallbackInvoker_PrivateWindowsPhoneOnly_INTERFACE_DEFINED__