summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Kotas <jkotas@microsoft.com>2019-03-07 07:37:04 -0800
committerGitHub <noreply@github.com>2019-03-07 07:37:04 -0800
commit70300c711b9e507d251f9a31d5c4be9653dd4c8a (patch)
tree207b2405799e4165fe8f3e9d323f4b9858bac0ac
parent724112354c74b67629d58d1f6b9c0007f5a13fc9 (diff)
downloadcoreclr-70300c711b9e507d251f9a31d5c4be9653dd4c8a.tar.gz
coreclr-70300c711b9e507d251f9a31d5c4be9653dd4c8a.tar.bz2
coreclr-70300c711b9e507d251f9a31d5c4be9653dd4c8a.zip
Cleanup unused hosting interfaces (#23091)
-rw-r--r--src/debug/ee/debugger.cpp19
-rw-r--r--src/debug/ee/debugger.h7
-rw-r--r--src/inc/CMakeLists.txt1
-rw-r--r--src/inc/MSCOREE.IDL732
-rw-r--r--src/inc/corhost.h146
-rw-r--r--src/inc/dacvars.h4
-rw-r--r--src/inc/gchost.idl55
-rw-r--r--src/inc/metahost.idl561
-rw-r--r--src/inc/mscoreepriv.h21
-rw-r--r--src/inc/utilcode.h5
-rw-r--r--src/md/compiler/classfactory.cpp2
-rw-r--r--src/pal/prebuilt/idl/gchost_i.cpp73
-rw-r--r--src/pal/prebuilt/inc/gchost.h166
-rw-r--r--src/pal/prebuilt/inc/metahost.h961
-rw-r--r--src/pal/prebuilt/inc/mscoree.h2240
-rw-r--r--src/utilcode/util.cpp15
-rw-r--r--src/vm/ceemain.cpp10
-rw-r--r--src/vm/ceemain.h4
-rw-r--r--src/vm/commtmemberinfomap.cpp62
-rw-r--r--src/vm/corhost.cpp1116
-rw-r--r--src/vm/crossgencompile.cpp4
-rw-r--r--src/vm/dbginterface.h3
-rw-r--r--src/vm/dwbucketmanager.hpp12
-rw-r--r--src/vm/eeconfig.cpp4
-rw-r--r--src/vm/eeconfig.h2
-rw-r--r--src/vm/eepolicy.cpp12
-rw-r--r--src/vm/excep.cpp27
-rw-r--r--src/vm/hosting.cpp196
-rw-r--r--src/vm/jithelpers.cpp11
-rw-r--r--src/vm/stdinterfaces.cpp1
-rw-r--r--src/vm/stdinterfaces.h11
-rw-r--r--src/vm/stdinterfaces_wrapper.cpp1
-rw-r--r--src/vm/tlbexport.h484
-rw-r--r--src/vm/typeparse.cpp263
-rw-r--r--src/vm/typeparse.h45
-rw-r--r--src/vm/typestring.cpp215
-rw-r--r--src/vm/typestring.h34
-rw-r--r--src/vm/util.hpp4
38 files changed, 242 insertions, 7287 deletions
diff --git a/src/debug/ee/debugger.cpp b/src/debug/ee/debugger.cpp
index 86cd547501..63aa8c256c 100644
--- a/src/debug/ee/debugger.cpp
+++ b/src/debug/ee/debugger.cpp
@@ -943,7 +943,6 @@ Debugger::Debugger()
m_pModules(NULL),
m_RSRequestedSync(FALSE),
m_sendExceptionsOutsideOfJMC(TRUE),
- m_pIDbgThreadControl(NULL),
m_forceNonInterceptable(FALSE),
m_pLazyData(NULL),
m_defines(_defines),
@@ -16083,24 +16082,6 @@ HRESULT Debugger::UpdateSpecialThreadList(DWORD cThreadArrayLength,
return (S_OK);
}
-// Updates the pointer for the debugger services
-void Debugger::SetIDbgThreadControl(IDebuggerThreadControl *pIDbgThreadControl)
-{
- CONTRACTL
- {
- NOTHROW;
- GC_NOTRIGGER;
- }
- CONTRACTL_END;
- if (m_pIDbgThreadControl)
- m_pIDbgThreadControl->Release();
-
- m_pIDbgThreadControl = pIDbgThreadControl;
-
- if (m_pIDbgThreadControl)
- m_pIDbgThreadControl->AddRef();
-}
-
//
// If a thread is Win32 suspended right after hitting a breakpoint instruction, but before the OS has transitioned the
// thread over to the user-level exception dispatching logic, then we may see the IP pointing after the breakpoint
diff --git a/src/debug/ee/debugger.h b/src/debug/ee/debugger.h
index 15299c0a38..3d3118e85e 100644
--- a/src/debug/ee/debugger.h
+++ b/src/debug/ee/debugger.h
@@ -2579,9 +2579,6 @@ public:
// Allows the debugger to keep an up to date list of special threads
HRESULT UpdateSpecialThreadList(DWORD cThreadArrayLength, DWORD *rgdwThreadIDArray);
- // Updates the pointer for the debugger services
- void SetIDbgThreadControl(IDebuggerThreadControl *pIDbgThreadControl);
-
#ifndef DACCESS_COMPILE
static void AcquireDebuggerDataLock(Debugger *pDebugger);
@@ -2897,10 +2894,6 @@ private:
public:
-
- IDebuggerThreadControl *m_pIDbgThreadControl;
-
-
// Sometimes we force all exceptions to be non-interceptable.
// There are currently three cases where we set this field to true:
//
diff --git a/src/inc/CMakeLists.txt b/src/inc/CMakeLists.txt
index c54b4f0ec9..517ea8e0f4 100644
--- a/src/inc/CMakeLists.txt
+++ b/src/inc/CMakeLists.txt
@@ -6,7 +6,6 @@ set( CORGUIDS_IDL_SOURCES
xclrdata.idl
corprof.idl
corpub.idl
- gchost.idl
mscorsvc.idl
clrprivappxhosting.idl
clrprivbinding.idl
diff --git a/src/inc/MSCOREE.IDL b/src/inc/MSCOREE.IDL
index cfc0f6b145..93e4042816 100644
--- a/src/inc/MSCOREE.IDL
+++ b/src/inc/MSCOREE.IDL
@@ -19,49 +19,18 @@ cpp_quote("")
// Interface descriptions
//
import "unknwn.idl";
-#if defined(FEATURE_WINDOWSPHONE)
-import "gchost.idl";
-#endif
-
-#include "product_version.h"
cpp_quote("struct IActivationFactory;")
interface IActivationFactory;
-// CLSID TypeNameFactory : uuid{B81FF171-20F3-11d2-8DCC-00A0C9B00525}
-cpp_quote("EXTERN_GUID(CLSID_TypeNameFactory, 0xB81FF171, 0x20F3, 0x11d2, 0x8d, 0xcc, 0x00, 0xa0, 0xc9, 0xb0, 0x05, 0x25);")
-
+cpp_quote("struct IHostControl;")
+interface IHostControl;
-#ifdef FEATURE_COMINTEROP
-// CLSID ComCallUnmarshal
-cpp_quote("EXTERN_GUID(CLSID_ComCallUnmarshal, 0x3F281000,0xE95A,0x11d2,0x88,0x6B,0x00,0xC0,0x4F,0x86,0x9F,0x04);")
+cpp_quote("struct ICLRControl;")
+interface ICLRControl;
// CLSID ComCallUnmarshal2
cpp_quote("EXTERN_GUID(CLSID_ComCallUnmarshalV4, 0x45fb4600,0xe6e8,0x4928,0xb2,0x5e,0x50,0x47,0x6f,0xf7,0x94,0x25);")
-#endif // FEATURE_COMINTEROP
-
-#ifdef FEATURE_APPDOMAIN_RESOURCE_MONITORING
-// IID ICLRAppDomainResourceMonitor: uuid(C62DE18C-2E23-4AEA-8423-B40C1FC59EAE)
-cpp_quote("EXTERN_GUID(IID_ICLRAppDomainResourceMonitor, 0XC62DE18C, 0X2E23, 0X4AEA, 0X84, 0X23, 0XB4, 0X0C, 0X1F, 0XC5, 0X9E, 0XAE);")
-#endif //FEATURE_APPDOMAIN_RESOURCE_MONITORING
-
-// {7D290010-D781-45da-A6F8-AA5D711A730E}
-cpp_quote("EXTERN_GUID(IID_ICLRPolicyManager, 0x7D290010, 0xD781, 0x45da, 0xA6, 0xF8, 0xAA, 0x5D, 0x71, 0x1A, 0x73, 0x0E);")
-
-#if defined (FEATURE_WINDOWSPHONE)
-// IID_ICLRGCManager : uuid(54D9007E-A8E2-4885-B7BF-F998DEEE4F2A)
-cpp_quote("EXTERN_GUID(IID_ICLRGCManager, 0x54D9007E, 0xA8E2, 0x4885, 0xB7, 0xBF, 0xF9, 0x98, 0xDE, 0xEE, 0x4F, 0x2A);")
-// IID_ICLRGCManager2 : uuid(0603B793-A97A-4712-9CB4-0CD1C74C0F7C)
-cpp_quote("EXTERN_GUID(IID_ICLRGCManager2, 0x0603B793, 0xA97A, 0x4712, 0x9C, 0xB4, 0x0C, 0xD1, 0xC7, 0x4C, 0x0F, 0x7C);")
-// IID_ICLRErrorReportingManager : uuid(980D2F1A-BF79-4c08-812A-BB9778928F78)
-cpp_quote("EXTERN_GUID(IID_ICLRErrorReportingManager, 0x980d2f1a, 0xbf79, 0x4c08, 0x81, 0x2a, 0xbb, 0x97, 0x78, 0x92, 0x8f, 0x78);")
-#endif // FEATURE_WINDOWSPHONE
-
-#ifdef FEATURE_WINDOWSPHONE
-// IID_ICLRErrorReportingManager2 : uuid(C68F63B1-4D8B-4E0B-9564-9D2EFE2FA18C)
-cpp_quote("EXTERN_GUID(IID_ICLRErrorReportingManager2, 0xc68f63b1, 0x4d8b, 0x4e0b, 0x95, 0x64, 0x9d, 0x2e, 0xfe, 0x2f, 0xa1, 0x8c);")
-#endif // FEATURE_WINDOWSPHONE
-
// IID ICLRRuntimeHost: uuid(90F1A06C-7712-4762-86B5-7A5EBA6BDB02)
cpp_quote("EXTERN_GUID(IID_ICLRRuntimeHost, 0x90F1A06C, 0x7712, 0x4762, 0x86, 0xB5, 0x7A, 0x5E, 0xBA, 0x6B, 0xDB, 0x02);")
@@ -72,48 +41,8 @@ cpp_quote("EXTERN_GUID(IID_ICLRRuntimeHost2, 0x712AB73F, 0x2C22, 0x4807, 0xAD, 0
// IID ICLRRuntimeHost4: uuid(64F6D366-D7C2-4F1F-B4B2-E8160CAC43AF)
cpp_quote("EXTERN_GUID(IID_ICLRRuntimeHost4, 0x64F6D366, 0xD7C2, 0x4F1F, 0xB4, 0xB2, 0xE8, 0x16, 0x0C, 0xAC, 0x43, 0xAF);")
-
-// IID ITypeName : uuid{B81FF171-20F3-11d2-8DCC-00A0C9B00522}
-cpp_quote("EXTERN_GUID(IID_ITypeName, 0xB81FF171, 0x20F3, 0x11d2, 0x8d, 0xcc, 0x00, 0xa0, 0xc9, 0xb0, 0x05, 0x22);")
-
-
-// IID ITypeNameBuilder : uuid{B81FF171-20F3-11d2-8DCC-00A0C9B00523}
-cpp_quote("EXTERN_GUID(IID_ITypeNameBuilder, 0xB81FF171, 0x20F3, 0x11d2, 0x8d, 0xcc, 0x00, 0xa0, 0xc9, 0xb0, 0x05, 0x23);")
-
-// IID ITypeNameFactory : uuid{B81FF171-20F3-11d2-8DCC-00A0C9B00521}
-cpp_quote("EXTERN_GUID(IID_ITypeNameFactory, 0xB81FF171, 0x20F3, 0x11d2, 0x8d, 0xcc, 0x00, 0xa0, 0xc9, 0xb0, 0x05, 0x21);")
-
-#pragma midl_echo("DEPRECATED_CLR_STDAPI GetCORSystemDirectory(_Out_writes_to_(cchBuffer, *dwLength) LPWSTR pbuffer, DWORD cchBuffer, DWORD* dwLength);")
-#pragma midl_echo("DEPRECATED_CLR_STDAPI GetCORVersion(_Out_writes_to_(cchBuffer, *dwLength) LPWSTR pbBuffer, DWORD cchBuffer, DWORD* dwLength);")
-#pragma midl_echo("DEPRECATED_CLR_STDAPI GetFileVersion(LPCWSTR szFilename, _Out_writes_to_opt_(cchBuffer, *dwLength) LPWSTR szBuffer, DWORD cchBuffer, DWORD* dwLength);")
-#pragma midl_echo("DEPRECATED_CLR_STDAPI GetCORRequiredVersion(_Out_writes_to_(cchBuffer, *dwLength) LPWSTR pbuffer, DWORD cchBuffer, DWORD* dwLength);")
-#pragma midl_echo("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);")
-#pragma midl_echo("DEPRECATED_CLR_STDAPI GetRequestedRuntimeVersion(_In_ LPWSTR pExe, _Out_writes_to_(cchBuffer, *dwLength) LPWSTR pVersion, DWORD cchBuffer, _Out_ DWORD* dwLength);")
-#pragma midl_echo("DEPRECATED_CLR_STDAPI CorBindToRuntimeHost(LPCWSTR pwszVersion, LPCWSTR pwszBuildFlavor, LPCWSTR pwszHostConfigFile, VOID* pReserved, DWORD startupFlags, REFCLSID rclsid, REFIID riid, LPVOID FAR *ppv);")
-#pragma midl_echo("DEPRECATED_CLR_STDAPI CorBindToRuntimeEx(LPCWSTR pwszVersion, LPCWSTR pwszBuildFlavor, DWORD startupFlags, REFCLSID rclsid, REFIID riid, LPVOID FAR *ppv);")
-#pragma midl_echo("DEPRECATED_CLR_STDAPI CorBindToRuntimeByCfg(IStream* pCfgStream, DWORD reserved, DWORD startupFlags, REFCLSID rclsid,REFIID riid, LPVOID FAR* ppv);")
-#pragma midl_echo("DEPRECATED_CLR_STDAPI CorBindToRuntime(LPCWSTR pwszVersion, LPCWSTR pwszBuildFlavor, REFCLSID rclsid, REFIID riid, LPVOID FAR *ppv);")
-#pragma midl_echo("DEPRECATED_CLR_STDAPI CorBindToCurrentRuntime(LPCWSTR pwszFileName, REFCLSID rclsid, REFIID riid, LPVOID FAR *ppv);")
-#pragma midl_echo("DEPRECATED_CLR_STDAPI RunDll32ShimW(HWND hwnd, HINSTANCE hinst, LPCWSTR lpszCmdLine, int nCmdShow);")
-#pragma midl_echo("DEPRECATED_CLR_STDAPI LoadLibraryShim(LPCWSTR szDllName, LPCWSTR szVersion, LPVOID pvReserved, HMODULE *phModDll);")
-#pragma midl_echo("DEPRECATED_CLR_STDAPI CallFunctionShim(LPCWSTR szDllName, LPCSTR szFunctionName, LPVOID lpvArgument1, LPVOID lpvArgument2, LPCWSTR szVersion, LPVOID pvReserved);")
-#pragma midl_echo("DEPRECATED_CLR_STDAPI GetRealProcAddress(LPCSTR pwszProcName, VOID** ppv);")
-#pragma midl_echo("DECLARE_DEPRECATED void STDMETHODCALLTYPE CorExitProcess(int exitCode);")
-#pragma midl_echo("DEPRECATED_CLR_STDAPI LoadStringRC(UINT iResouceID, _Out_writes_z_(iMax) LPWSTR szBuffer, int iMax, int bQuiet);")
-#ifdef FEATURE_USE_LCID
-#pragma midl_echo("DEPRECATED_CLR_STDAPI LoadStringRCEx(LCID lcid, UINT iResouceID, _Out_writes_z_(iMax) LPWSTR szBuffer, int iMax, int bQuiet, int *pcwchUsed);")
-#endif
-
#pragma midl_echo("typedef HRESULT (STDAPICALLTYPE *FnGetCLRRuntimeHost)(REFIID riid, IUnknown **pUnk);")
-typedef enum {
- HOST_TYPE_DEFAULT = 0x0,
- HOST_TYPE_APPLAUNCH = 0x1,
- HOST_TYPE_CORFLAG = 0x2
-} HOST_TYPE;
-
-#pragma midl_echo("STDAPI CorLaunchApplication(HOST_TYPE dwClickOnceHost, LPCWSTR pwzAppFullName, DWORD dwManifestPaths, LPCWSTR* ppwzManifestPaths, DWORD dwActivationData, LPCWSTR* ppwzActivationData, LPPROCESS_INFORMATION lpProcessInformation);")
-
typedef HRESULT (__stdcall *FExecuteInAppDomainCallback) (void* cookie);
// By default GC is concurrent and only the base system library is loaded into the domain-neutral area.
@@ -145,26 +74,6 @@ typedef enum {
STARTUP_DISABLE_RANDOMIZED_STRING_HASHING = 0x2000000 // Disable the randomized string hashing (not supported)
} STARTUP_FLAGS;
-typedef enum {
- CLSID_RESOLUTION_DEFAULT = 0x0, // Standard behavior that interop uses
- CLSID_RESOLUTION_REGISTERED = 0x1, // Searches the registry and applies shim policy
-} CLSID_RESOLUTION_FLAGS;
-
-typedef enum
-{
- RUNTIME_INFO_UPGRADE_VERSION = 0x001, // apply upgrades - i.e RTM->Everett
- RUNTIME_INFO_REQUEST_IA64 = 0x002, // requesting a CLR for ia64
- RUNTIME_INFO_REQUEST_AMD64 = 0x004, // requesting a CLR for amd64
- RUNTIME_INFO_REQUEST_X86 = 0x008, // requesting a CLR for x86
- RUNTIME_INFO_DONT_RETURN_DIRECTORY = 0x010, // don't return directory information
- RUNTIME_INFO_DONT_RETURN_VERSION = 0x020, // don't return version information
- RUNTIME_INFO_DONT_SHOW_ERROR_DIALOG = 0x040, // don't pop up an error dialog on failure
- RUNTIME_INFO_IGNORE_ERROR_MODE = 0x1000,// ignore SEM_FAILCRITICALERRORS
- // (by default the error dialog is not shown if SEM_FAILCRITICALERRORS is set)
- // Reserved values here - see mscoreepriv.h
-} RUNTIME_INFO_FLAGS;
-
-
typedef enum
{
APPDOMAIN_SECURITY_DEFAULT =0x0,
@@ -182,85 +91,12 @@ typedef enum
APPDOMAIN_DISABLE_TRANSPARENCY_ENFORCEMENT = 0x100,
} APPDOMAIN_SECURITY_FLAGS;
-#pragma midl_echo("STDAPI GetRequestedRuntimeVersionForCLSID(REFCLSID rclsid, _Out_writes_opt_(cchBuffer) LPWSTR pVersion, DWORD cchBuffer, _Out_opt_ DWORD* dwLength, CLSID_RESOLUTION_FLAGS dwResolutionFlags);")
-
-
-cpp_quote("EXTERN_GUID(IID_IDebuggerThreadControl, 0x23d86786, 0x0bb5, 0x4774, 0x8f, 0xb5, 0xe3, 0x52, 0x2a, 0xdd, 0x62, 0x46);")
-[
- uuid(23D86786-0BB5-4774-8FB5-E3522ADD6246),
- version(1.0),
- helpstring("Control over threads blocked in debugging services"),
- pointer_default(unique),
- local
-]
-interface IDebuggerThreadControl : IUnknown
-{
- // Notification that the thread making the call is about to
- // block within the debugging services. This gives the host
- // an opportunity to perform another action while the thread
- // blocks. This will always be called on a Runtime thread.
- HRESULT ThreadIsBlockingForDebugger();
-
- // Notification that the debugging services is about to
- // release all threads it has blocked. This will never be
- // called on a Runtime thread. If the host has a Runtime
- // thread blocked in ThreadIsBlockingForDebugger() then it
- // should release it now.
- HRESULT ReleaseAllRuntimeThreads();
-
- // Notification that the debugging services are about to
- // start blocking all threads. This could be called on a
- // Runtime thread. This is the signal to the host to
- // start blocking threads in ThreadIsBlockingForDebugger().
- HRESULT StartBlockingForDebugger(DWORD dwUnused);
-}
-
-cpp_quote("EXTERN_GUID(IID_IDebuggerInfo, 0xbf24142d, 0xa47d, 0x4d24, 0xa6, 0x6d, 0x8c, 0x21, 0x41, 0x94, 0x4e, 0x44);")
-[
- uuid(BF24142D-A47D-4d24-A66D-8C2141944E44),
- version(1.0),
- helpstring("Information on the state of the debugging services"),
- pointer_default(unique),
- local
-]
-interface IDebuggerInfo : IUnknown
-{
- // Indicates whether or not a managed debugger is attached to this process.
- HRESULT IsDebuggerAttached([out] BOOL *pbAttached);
-}
-
-
-//*****************************************************************************
-// Interface for hosting mscoree
-//*****************************************************************************
-typedef void* HDOMAINENUM;
-
-
-typedef enum
-{
- eMemoryAvailableLow = 1,
- eMemoryAvailableNeutral = 2,
- eMemoryAvailableHigh = 3
-} EMemoryAvailable;
-
-typedef enum
-{
- eTaskCritical = 0,
- eAppDomainCritical = 1,
- eProcessCritical = 2
-} EMemoryCriticalLevel;
-
typedef enum {
WAIT_MSGPUMP = 0x1,
WAIT_ALERTABLE = 0x2,
WAIT_NOTINDEADLOCK = 0x4
}WAIT_OPTION;
-
-typedef UINT64 TASKID;
-typedef DWORD CONNID;
-
-
typedef enum ETaskType
{
TT_DEBUGGERHELPER = 0x1,
@@ -277,14 +113,6 @@ typedef enum ETaskType
TT_UNKNOWN = 0x80000000,
} ETaskType;
-
-typedef enum {
- eSymbolReadingNever = 0, // Never read PDBs
- eSymbolReadingAlways = 1, // Always read PDBs
- eSymbolReadingFullTrustOnly = 2 // Only read PDBs that correspond to full-trust assemblies
-} ESymbolReadingPolicy;
-
-
typedef enum {
// Default to minidump
DUMP_FLAVOR_Mini = 0,
@@ -300,26 +128,6 @@ typedef enum {
} ECustomDumpFlavor;
-// reserved for future extension
-typedef enum
-{
- DUMP_ITEM_None = 0
-} ECustomDumpItemKind;
-
-//
-// The CustomDumpItem structure describes an item to be added to a dump.
-// It is defined for future expansion and is not presently used.
-//
-typedef struct
-{
- ECustomDumpItemKind itemKind; //this affects how next fields are interpreted.
- union
- {
- // Union to be expanded later if need be
- UINT_PTR pReserved;
- };
-} CustomDumpItem;
-
const DWORD BucketParamsCount = 10;
const DWORD BucketParamLength = 255;
@@ -345,112 +153,6 @@ typedef struct _BucketParameters
WCHAR pszParams[BucketParamsCount][BucketParamLength]; // Parameter strings.
} BucketParameters;
-#if defined(FEATURE_WINDOWSPHONE)
-[
- uuid(980D2F1A-BF79-4c08-812A-BB9778928F78),
- version(1.0),
- helpstring("CLR error reporting manager"),
- pointer_default(unique),
- local
-]
-interface ICLRErrorReportingManager : IUnknown
-{
- // Get Watson bucket parameters for "current" exception (on calling thread).
- HRESULT GetBucketParametersForCurrentException([out] BucketParameters *pParams);
-
- // The BeginCustomDump function configures the custom dump support
- HRESULT BeginCustomDump( [in] ECustomDumpFlavor dwFlavor,
- [in] DWORD dwNumItems,
- [in, size_is(dwNumItems), length_is(dwNumItems)] CustomDumpItem *items,
- DWORD dwReserved);
-
- // EndCustomDump clears the custom dump configuration
- HRESULT EndCustomDump();
-}
-
-#ifdef FEATURE_WINDOWSPHONE
-typedef enum
-{
- // indicates that the specified value is the Application ID
- ApplicationID = 0x1,
-
- // indicates that the specified value is the application's Instance ID
- InstanceID = 0x2,
-
- // additional values are reserved for future use
-} ApplicationDataKey;
-
-[
- uuid(C68F63B1-4D8B-4E0B-9564-9D2EFE2FA18C),
- version(1.0),
- helpstring("CLR error reporting manager 2"),
- pointer_default(unique),
- local
-]
-interface ICLRErrorReportingManager2 : ICLRErrorReportingManager
-{
- // This API will allow the host to specify key/value pairs of data to be consumed by the CLR.
- //
- // Parameters:
- // [in] key - One of the values specified in the ApplicationDataKey enumerated type.
- //
- // [in] pValue - A NULL-terminated WCHAR string with a maximum length of MAX_PATH containing the corresponding
- // value. Note that the CLR maintains its own copy of the data so this structure does not need
- // to persist after the API call returns.
- //
- // Return values:
- // S_OK upon success.
- //
- // Any other return value indicates that the API did not complete successfully and no value was set.
- //
- // Well-defined errors:
- // E_INVALIDOPERATION if the CLR has already started.
- // E_INVALIDARG for any of the following:
- // key is not within the range of valid values for ApplicationDataKey
- // pValue == NULL
- // length of pValue is greater than MAX_PATH
- HRESULT SetApplicationData([in] ApplicationDataKey key, [in] WCHAR const* pValue);
-
- // This API will allow the host to specify pre-defined Watson bucket data in the event of an unhandled
- // exception, allowing the host to override Watson bucket parameter data that is usually collected and
- // populated by the CLR. It should be called before the CLR has started.
- // The BucketParameters data structure must be properly initialized before calling this API by zeroing
- // out all fields, setting pszParams entries as required, then setting fInited to TRUE.
- // A NULL pszParams entry indicates that the bucket parameter should not be overridden, and if all pszParams
- // entries are NULL then the API call will fail.
- // To override a bucket parameter with an empty string specify a pszParams entry with a blank string (one or
- // more whitespace characters).
- //
- // NOTE: The current implementation allows overriding of the first bucket parameter only (pszParams[0]).
- // Any other non-NULL pszParams entries will be ignored. This is subject to change in future releases.
- //
- // Parameters:
- // [in] pBucketParams - A pointer to an initialized BucketParameters structure which contains the data to be
- // reported in the event of an unhandled exception. Note that the CLR maintains its own
- // copy of the data so this structure does not need to persist after the API call returns.
- //
- // [out] pCountParams - A pointer to a DWORD indicating the number of bucket parameter values that have
- // been overridden by the host. A count of 0 indicates that no parameters were
- // overridden.
- //
- // Return values:
- // S_OK upon success. In this case the value pointed to by pCountParams will be greater than 0.
- //
- // Any other return value indicates that the API did not complete successfully. In this case the value
- // pointed to by pCountParams will be 0.
- //
- // Well-defined errors:
- // E_INVALIDOPERATION if the CLR has already started.
- // E_INVALIDARG for any of the following:
- // pBucketParams or pCountParams is NULL
- // pBucketParams->fInited != TRUE
- // if all BucketParameters.pszParams are NULL
- HRESULT SetBucketParametersForUnhandledException([in] BucketParameters const* pBucketParams, [out] DWORD* pCountParams);
-}
-#endif // FEATURE_WINDOWSPHONE
-
-#endif // defined(FEATURE_WINDOWSPHONE)
-
typedef enum
{
@@ -506,225 +208,6 @@ typedef enum
MaxPolicyAction
} EPolicyAction;
-[
- uuid(7D290010-D781-45da-A6F8-AA5D711A730E),
- version(1.0),
- helpstring("Allow host to specify policy for CLR to follow in abnormal condition"),
- pointer_default(unique),
- local
-]
-interface ICLRPolicyManager: IUnknown
-{
- HRESULT SetDefaultAction(
- [in] EClrOperation operation,
- [in] EPolicyAction action);
-
- HRESULT SetTimeout(
- [in] EClrOperation operation,
- [in] DWORD dwMilliseconds);
-
- HRESULT SetActionOnTimeout(
- [in] EClrOperation operation,
- [in] EPolicyAction action);
-
- HRESULT SetTimeoutAndAction(
- [in] EClrOperation operation,
- [in] DWORD dwMilliseconds,
- [in] EPolicyAction action);
-
- HRESULT SetActionOnFailure(
- [in] EClrFailure failure,
- [in] EPolicyAction action);
-
- HRESULT SetUnhandledExceptionPolicy(
- [in] EClrUnhandledException policy);
-}
-
-
-typedef enum
-{
- Event_DomainUnload,
- Event_ClrDisabled,
- Event_MDAFired,
- Event_StackOverflow,
- MaxClrEvent
- // Do not add anything after this
-} EClrEvent;
-
-// An MDAInfo is passed via OnEvent for Event_MDAFired events.
-typedef struct _MDAInfo
-{
- LPCWSTR lpMDACaption;
- LPCWSTR lpMDAMessage;
- LPCWSTR lpStackTrace;
-} MDAInfo;
-
-// An StackOverflowInfo is passed via OnEvent for Event_StackOverflow events.
-typedef enum
-{
- SO_Managed,
- SO_ClrEngine,
- SO_Other,
-} StackOverflowType;
-
-cpp_quote("typedef struct _StackOverflowInfo")
-cpp_quote("{")
-cpp_quote(" StackOverflowType soType;")
-cpp_quote(" EXCEPTION_POINTERS *pExceptionInfo;")
-cpp_quote("} StackOverflowInfo;")
-
-
-#if defined(FEATURE_WINDOWSPHONE)
-
-/*
- * This interface is used to get information about the GC system and
- * control some aspects of the GC. This interface is for expert usage
- * only, and can severely impact the performance of an application if
- * used improperly!!
- */
-[
- uuid(54D9007E-A8E2-4885-B7BF-F998DEEE4F2A),
- version(1.0),
- pointer_default(unique),
- local
-]
-interface ICLRGCManager : IUnknown
-{
- /*
- * Forces a collection to occur for the given generation, regardless of
- * current GC statistics. A value of -1 means collect all generations.
- */
- HRESULT Collect([in] LONG Generation);
-
- /*
- * Returns a set of current statistics about the state of the GC system.
- * These values can then be used by a smart allocation system to help the
- * GC run, by say adding more memory or forcing a collection.
- */
- HRESULT GetStats([in][out] COR_GC_STATS *pStats);
-
- /*
- * Sets the segment size and gen 0 maximum size. This value may only be
- * specified once and will not change if called later.
- */
- HRESULT SetGCStartupLimits([in] DWORD SegmentSize, [in] DWORD MaxGen0Size);
-}
-
-/*
- * This interface is added to allow users to specify 64-bit numbers on 64-bit OSs
- * for the parameters to SetGCStartupLimits.
- */
-[
- uuid(0603B793-A97A-4712-9CB4-0CD1C74C0F7C),
- version(2.0),
- pointer_default(unique),
- local
-]
-interface ICLRGCManager2 : ICLRGCManager
-{
- /*
- * Sets the segment size and gen 0 maximum size. This value may only be
- * specified once and will not change if called later.
- */
- HRESULT SetGCStartupLimitsEx([in] SIZE_T SegmentSize, [in] SIZE_T MaxGen0Size);
-};
-
-
-#endif // FEATURE_WINDOWSPHONE
-
-///////////////////////////////////////////////////////////////////////////////
-//
-// enum EBindPolicyLevels
-//
-///////////////////////////////////////////////////////////////////////////////
-typedef enum
-{
- ePolicyLevelNone = 0x0,
- ePolicyLevelRetargetable = 0x1,
- ePolicyUnifiedToCLR = 0x2,
- ePolicyLevelApp = 0x4,
- ePolicyLevelPublisher = 0x8,
- ePolicyLevelHost = 0x10,
- ePolicyLevelAdmin = 0x20,
- ePolicyPortability = 0x40,
-} EBindPolicyLevels;
-///////////////////////////////////////////////////////////////////////////////
-//
-// struct AssemblyBindInfo
-//
-///////////////////////////////////////////////////////////////////////////////
-typedef struct _AssemblyBindInfo
-{
- DWORD dwAppDomainId;
- LPCWSTR lpReferencedIdentity;
- LPCWSTR lpPostPolicyIdentity;
- DWORD ePolicyLevel;
-}AssemblyBindInfo;
-///////////////////////////////////////////////////////////////////////////////
-//
-// struct ModuleBindInfo
-//
-///////////////////////////////////////////////////////////////////////////////
-typedef struct _ModuleBindInfo
-{
- DWORD dwAppDomainId;
- LPCWSTR lpAssemblyIdentity;
- LPCWSTR lpModuleName;
-} ModuleBindInfo;
-
-
-typedef enum _HostApplicationPolicy
-{
- HOST_APPLICATION_BINDING_POLICY = 1
-}EHostApplicationPolicy;
-
-
-
-// Implemented in mscorwks.dll, use mscoree!GetRealProcAddress to get
-// a function pointer of this API.
-#pragma midl_echo("STDAPI GetCLRIdentityManager(REFIID riid, IUnknown **ppManager);")
-
-// {02CA073D-7079-4860-880A-C2F7A449C991}
-cpp_quote("EXTERN_GUID(IID_IHostControl, 0x02CA073C, 0x7079, 0x4860, 0x88, 0x0A, 0xC2, 0xF7, 0xA4, 0x49, 0xC9, 0x91);")
-[
- uuid(02CA073C-7079-4860-880A-C2F7A449C991),
- version(1.0),
- helpstring("Common Language Runtime Host Control Interface"),
- pointer_default(unique),
- local
-]
-interface IHostControl : IUnknown
-{
- HRESULT GetHostManager(
- [in] REFIID riid,
- [out] void **ppObject);
-
- /* Notify Host with IUnknown with the pointer to AppDomainManager */
- HRESULT SetAppDomainManager(
- [in] DWORD dwAppDomainID,
- [in] IUnknown* pUnkAppDomainManager);
-}
-
-cpp_quote("EXTERN_GUID(IID_ICLRControl, 0x9065597E, 0xD1A1, 0x4fb2, 0xB6, 0xBA, 0x7E, 0x1F, 0xCE, 0x23, 0x0F, 0x61);")
-[
- uuid(9065597E-D1A1-4fb2-B6BA-7E1FCE230F61),
- version(1.0),
- helpstring("Common Language Runtime Control Interface"),
- pointer_default(unique),
- local
-]
-interface ICLRControl : IUnknown
-{
- HRESULT GetCLRManager(
- [in] REFIID riid,
- [out] void **ppObject);
-
- HRESULT SetAppDomainManagerType(
- [in] LPCWSTR pwzAppDomainManagerAssembly,
- [in] LPCWSTR pwzAppDomainManagerType);
-}
-
-
//*****************************************************************************
// New interface for hosting mscoree
@@ -774,10 +257,6 @@ interface ICLRRuntimeHost : IUnknown
[out] DWORD *pReturnValue);
};
-// Keys for ICLRRuntmeHost2::Authenticate. No longer required.
-cpp_quote("#define CORECLR_HOST_AUTHENTICATION_KEY 0x1C6CA6F94025800LL")
-cpp_quote("#define CORECLR_HOST_AUTHENTICATION_KEY_NONGEN 0x1C6CA6F94025801LL")
-
//*****************************************************************************
// New interface for hosting mscoree
//*****************************************************************************
@@ -843,209 +322,6 @@ interface ICLRRuntimeHost4 : ICLRRuntimeHost2
[out] int *pLatchedExitCode);
};
-//*****************************************************************************
-// Interface to utilize HostProtection
-//*****************************************************************************
-typedef enum
-{
- eNoChecks = 0,
- //---------------------------------
- eSynchronization = 0x1,
- eSharedState = 0x2,
- eExternalProcessMgmt = 0x4,
- eSelfAffectingProcessMgmt = 0x8,
- eExternalThreading = 0x10,
- eSelfAffectingThreading = 0x20,
- eSecurityInfrastructure = 0x40,
- eUI = 0x80,
- eMayLeakOnAbort = 0x100,
- //----------------------------------
- eAll = 0x1ff
-} EApiCategories;
-
-
-//
-// Interface for configuring the default AppDomain
-//
-
-typedef enum
-{
- eInitializeNewDomainFlags_None = 0x0000,
-
- // InitializeNewDomain will not make changes to the security state of the AppDomain
- eInitializeNewDomainFlags_NoSecurityChanges = 0x0002
-}
-EInitializeNewDomainFlags;
-
-
-//*****************************************************************************
-// mscoree typelib definition
-//*****************************************************************************
-
-[
- uuid(5477469e-83b1-11d2-8b49-00a0c9b7c9c4),
- version(2.4),
- helpstring("Common Language Runtime Execution Engine 2.4 Library")
-]
-library mscoree
-{
- importlib("stdole32.tlb");
-
- //*****************************************************************************
- //
- //*****************************************************************************
- [
- object,
- oleautomation,
- uuid(B81FF171-20F3-11d2-8DCC-00A0C9B00522),
- helpstring("Type name parser"),
- pointer_default(unique)
- ]
- interface ITypeName : IUnknown
- {
- HRESULT GetNameCount([out, retval] DWORD* pCount);
- HRESULT GetNames([in] DWORD count, [out] BSTR* rgbszNames, [out, retval] DWORD* pCount);
- HRESULT GetTypeArgumentCount([out, retval] DWORD* pCount);
- HRESULT GetTypeArguments([in] DWORD count, [out] ITypeName** rgpArguments, [out, retval] DWORD* pCount);
- HRESULT GetModifierLength([out, retval] DWORD* pCount);
- HRESULT GetModifiers([in] DWORD count, [out] DWORD* rgModifiers, [out, retval] DWORD* pCount);
- HRESULT GetAssemblyName([out, retval] BSTR* rgbszAssemblyNames);
- };
-
- //*****************************************************************************
- //
- //*****************************************************************************
- [
- object,
- oleautomation,
- uuid(B81FF171-20F3-11d2-8DCC-00A0C9B00523),
- helpstring("Type name builder"),
- pointer_default(unique)
- ]
- interface ITypeNameBuilder : IUnknown
- {
- HRESULT OpenGenericArguments();
- HRESULT CloseGenericArguments();
- HRESULT OpenGenericArgument();
- HRESULT CloseGenericArgument();
- HRESULT AddName([in] LPCWSTR szName);
- HRESULT AddPointer();
- HRESULT AddByRef();
- HRESULT AddSzArray();
- HRESULT AddArray([in] DWORD rank);
- HRESULT AddAssemblySpec([in] LPCWSTR szAssemblySpec);
- HRESULT ToString([out, retval] BSTR* pszStringRepresentation);
- HRESULT Clear();
- };
-
- //*****************************************************************************
- //
- //*****************************************************************************
- [
- object,
- oleautomation,
- uuid(B81FF171-20F3-11d2-8DCC-00A0C9B00521),
- helpstring("Type name builder and parser factory"),
- pointer_default(unique)
- ]
- interface ITypeNameFactory : IUnknown
- {
- HRESULT ParseTypeName([in] LPCWSTR szName, [out] DWORD* pError, [out, retval] ITypeName** ppTypeName);
- HRESULT GetTypeNameBuilder([out, retval] ITypeNameBuilder** ppTypeBuilder);
- };
-
-
-#ifdef _WIN64
- #define CCW_PTR __int64 *
- cpp_quote("#define CCW_PTR __int64 *")
-#else // WIN64
- #define CCW_PTR int *
- cpp_quote("#define CCW_PTR int *")
-#endif // WIN64
-
-#ifdef FEATURE_COMINTEROP
- //*****************************************************************************
- // IMarshal implementation for 1.0, 1.1, and 2.0 COM callable wrappers
- //*****************************************************************************
- [
- uuid(3F281000-E95A-11d2-886B-00C04F869F04),
- helpstring("Com Call Wrapper Unmarshalling Class")
- ]
- coclass ComCallUnmarshal
- {
- [default] interface IMarshal;
- };
-
- //*****************************************************************************
- // IMarshal implementation for 4.0 COM callable wrappers
- //*****************************************************************************
- [
- uuid(45FB4600-E6E8-4928-B25E-50476FF79425),
- helpstring("Com Call Wrapper Unmarshalling Class 4.0")
- ]
- coclass ComCallUnmarshalV4
- {
- [default] interface IMarshal;
- };
-#endif // FEATURE_COMINTEROP
-
-
- [
- uuid(90F1A06E-7712-4762-86B5-7A5EBA6BDB02),
- helpstring("CLR Runtime Hosting Class V2")
- ]
- coclass CLRRuntimeHost
- {
- [default] interface ICLRRuntimeHost;
- interface ICLRValidator;
- };
-
- [
- uuid(B81FF171-20F3-11d2-8DCC-00A0C9B00525),
- helpstring("TypeName parser and builder")
- ]
- coclass TypeNameFactory
- {
- [default] interface ITypeNameFactory;
- };
-};
-
-typedef enum
-{
- eCurrentContext=0x00,
- eRestrictedContext=0x01
-} EContextType;
-
-
-#ifdef FEATURE_APPDOMAIN_RESOURCE_MONITORING
-///////////////////////////////////////////////////////////////////////////////
-//
-// ICLRAppDomainResourceMonitor
-//
-///////////////////////////////////////////////////////////////////////////////
-[
- version(1.0),
- uuid(c62de18c-2e23-4aea-8423-b40c1fc59eae),
- helpstring("ARM interface"),
- pointer_default(unique),
- local
-]
-interface ICLRAppDomainResourceMonitor: IUnknown
-{
- HRESULT GetCurrentAllocated([in] DWORD dwAppDomainId,
- [out] ULONGLONG* pBytesAllocated);
-
- HRESULT GetCurrentSurvived([in] DWORD dwAppDomainId,
- [out] ULONGLONG* pAppDomainBytesSurvived,
- [out] ULONGLONG* pTotalBytesSurvived);
-
- HRESULT GetCurrentCpuTime([in] DWORD dwAppDomainId,
- [out] ULONGLONG* pMilliseconds);
-
-
-};
-#endif //FEATURE_APPDOMAIN_RESOURCE_MONITORING
-
cpp_quote("#undef DEPRECATED_CLR_STDAPI")
cpp_quote("#undef DECLARE_DEPRECATED")
cpp_quote("#undef DEPRECATED_CLR_API_MESG")
diff --git a/src/inc/corhost.h b/src/inc/corhost.h
index 3045decd7c..09ea994b59 100644
--- a/src/inc/corhost.h
+++ b/src/inc/corhost.h
@@ -55,47 +55,6 @@ protected:
// Starts the runtime. This is equivalent to CoInitializeCor()
STDMETHODIMP Start();
-#ifdef FEATURE_COMINTEROP
- // Creates a domain in the runtime. The identity array is
- // a pointer to an array TYPE containing IIdentity objects defining
- // the security identity.
- STDMETHODIMP CreateDomain(LPCWSTR pwzFriendlyName, // Optional
- IUnknown* pIdentityArray, // Optional
- IUnknown ** pAppDomain);
-
- // Returns the default domain.
- STDMETHODIMP GetDefaultDomain(IUnknown ** pAppDomain);
-
- // Enumerate currently existing domains.
- STDMETHODIMP EnumDomains(HDOMAINENUM *hEnum);
-
- // Returns S_FALSE when there are no more domains. A domain
- // is passed out only when S_OK is returned.
- STDMETHODIMP NextDomain(HDOMAINENUM hEnum,
- IUnknown** pAppDomain);
-
- // Close the enumeration releasing resources
- STDMETHODIMP CloseEnum(HDOMAINENUM hEnum);
-
- STDMETHODIMP CreateDomainEx(LPCWSTR pwzFriendlyName,
- IUnknown* pSetup, // Optional
- IUnknown* pEvidence, // Optional
- IUnknown ** pAppDomain);
-
- // Create appdomain setup object that can be passed into CreateDomainEx
- STDMETHODIMP CreateDomainSetup(IUnknown** pAppDomainSetup);
-
- // Create Evidence object that can be passed into CreateDomainEx
- STDMETHODIMP CreateEvidence(IUnknown** pEvidence);
-
- // Unload a domain, releasing the reference will only release the
- // the wrapper to the domain not unload the domain.
- STDMETHODIMP UnloadDomain(IUnknown* pAppDomain);
-
- // Returns the threads domain if there is one.
- STDMETHODIMP CurrentDomain(IUnknown ** pAppDomain);
-#endif // FEATURE_COMINTEROP
-
STDMETHODIMP MapFile( // Return code.
HANDLE hFile, // [in] Handle for file
HMODULE *hMapAddress // [out] HINSTANCE for mapped file
@@ -142,79 +101,6 @@ enum ESymbolReadingSetBy
eSymbolReadingSetBy_COUNT
};
-
-#if defined(FEATURE_WINDOWSPHONE)
-class CCLRErrorReportingManager :
-#ifdef FEATURE_WINDOWSPHONE
- public ICLRErrorReportingManager2
-#else
- public ICLRErrorReportingManager
-#endif // FEATURE_WINDOWSPHONE
-{
- friend class ClrDataAccess;
- friend struct _DacGlobals;
-
- SVAL_DECL(ECustomDumpFlavor, g_ECustomDumpFlavor);
-
-#ifdef FEATURE_WINDOWSPHONE
- WCHAR* m_pApplicationId;
- WCHAR* m_pInstanceId;
-
- class BucketParamsCache
- {
- private:
- WCHAR** m_pParams;
- DWORD const m_cMaxParams;
- public:
- BucketParamsCache(DWORD maxNumParams);
- ~BucketParamsCache();
-
- WCHAR const* GetAt(BucketParameterIndex index);
- HRESULT SetAt(BucketParameterIndex index, WCHAR const* val);
- };
-
- BucketParamsCache* m_pBucketParamsCache;
-
- HRESULT CopyToDataCache(_In_ WCHAR** pTarget, WCHAR const* pSource);
-#endif // FEATURE_WINDOWSPHONE
-
-public:
- CCLRErrorReportingManager();
- ~CCLRErrorReportingManager();
-
- STDMETHODIMP QueryInterface(REFIID riid, void** ppv);
- STDMETHODIMP_(ULONG) AddRef(void);
- STDMETHODIMP_(ULONG) Release(void);
-
- // ICLRErrorReportingManager APIs //
-
- // Get Watson bucket parameters for "current" exception (on calling thread).
- STDMETHODIMP GetBucketParametersForCurrentException(BucketParameters *pParams);
- STDMETHODIMP BeginCustomDump( ECustomDumpFlavor dwFlavor,
- DWORD dwNumItems,
- CustomDumpItem items[],
- DWORD dwReserved);
- STDMETHODIMP EndCustomDump();
-
-#ifdef FEATURE_WINDOWSPHONE
- // ICLRErrorReportingManager2 APIs //
-
- STDMETHODIMP SetApplicationData(ApplicationDataKey key, WCHAR const* pValue);
- STDMETHODIMP SetBucketParametersForUnhandledException(BucketParameters const* pBucketParams, DWORD* pCountParams);
-
- // internal APIs
-
- // returns the application data for the specified key if available, else returns NULL.
- WCHAR const* GetApplicationData(ApplicationDataKey key);
-
- // returns bucket parameter override data if available, else returns NULL.
- WCHAR const* GetBucketParamOverride(BucketParameterIndex bucketParamId);
-#endif // FEATURE_WINDOWSPHONE
-};
-
-extern CCLRErrorReportingManager g_CLRErrorReportingManager;
-#endif // defined(FEATURE_WINDOWSPHONE)
-
class CorHost2 :
public CorRuntimeHostBase
#ifndef FEATURE_PAL
@@ -334,8 +220,6 @@ public:
static STARTUP_FLAGS GetStartupFlags();
- static EInitializeNewDomainFlags GetAppDomainManagerInitializeNewDomainFlags();
-
static BOOL HasStarted()
{
return m_RefCount != 0;
@@ -372,39 +256,9 @@ private:
static LONG m_RefCount;
- static IHostControl *m_HostControl;
-
SVAL_DECL(STARTUP_FLAGS, m_dwStartupFlags);
};
-class CorHostProtectionManager
-{
-private:
- EApiCategories m_eProtectedCategories;
- bool m_fEagerSerializeGrantSet;
- bool m_fFrozen;
-
-public:
- CorHostProtectionManager();
-
- // IUnknown methods
- HRESULT STDMETHODCALLTYPE QueryInterface(
- REFIID id,
- void **pInterface);
- ULONG STDMETHODCALLTYPE AddRef();
- ULONG STDMETHODCALLTYPE Release();
-
- // Interface methods
- virtual HRESULT STDMETHODCALLTYPE SetProtectedCategories(/* [in] */ EApiCategories eFullTrustOnlyResources);
- virtual HRESULT STDMETHODCALLTYPE SetEagerSerializeGrantSets();
-
- // Getters
- EApiCategories GetProtectedCategories();
- bool GetEagerSerializeGrantSets() const;
-
- void Freeze();
-};
-
#ifdef FEATURE_COMINTEROP
extern "C"
HRESULT STDMETHODCALLTYPE DllGetActivationFactoryImpl(
diff --git a/src/inc/dacvars.h b/src/inc/dacvars.h
index f4a04b2f19..fc5be15590 100644
--- a/src/inc/dacvars.h
+++ b/src/inc/dacvars.h
@@ -131,10 +131,6 @@ DEFINE_DACVAR(ULONG, DWORD, dac__g_debuggerWordTLSIndex, g_debuggerWordTLSIndex)
#endif
DEFINE_DACVAR(ULONG, DWORD, dac__g_TlsIndex, g_TlsIndex)
-#if defined(FEATURE_WINDOWSPHONE)
-DEFINE_DACVAR(ULONG, int, CCLRErrorReportingManager__g_ECustomDumpFlavor, CCLRErrorReportingManager::g_ECustomDumpFlavor)
-#endif
-
DEFINE_DACVAR(ULONG, PTR_SString, SString__s_Empty, SString::s_Empty)
#ifdef FEATURE_APPX
diff --git a/src/inc/gchost.idl b/src/inc/gchost.idl
deleted file mode 100644
index 6d85f91513..0000000000
--- a/src/inc/gchost.idl
+++ /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
-{
-}
diff --git a/src/inc/metahost.idl b/src/inc/metahost.idl
index 83f711ae54..b7c2e0ba67 100644
--- a/src/inc/metahost.idl
+++ b/src/inc/metahost.idl
@@ -37,32 +37,15 @@ import "ocidl.idl";
import "mscoree.idl";
cpp_quote("#include <winapifamily.h>")
-cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
-/**************************************************************************************
- ** This should be the only flat public API exposed from mscoree going forward. **
- ** The returned interface is likely to be implemented in a separate versioned DLL **
- ** (mscorhst.dll living in the versioned directory for instance). Acceptable values **
- ** for riid in v4.0 are IID_ICLRMetaHost, IID_ICLRMetaHostPolicy and **
- ** IID_ICLRDebugging. **
- **************************************************************************************/
cpp_quote("STDAPI CLRCreateInstance(REFCLSID clsid, REFIID riid, /*iid_is(riid)*/ LPVOID *ppInterface);")
-// CLSID CLRStrongName : uuid(B79B0ACD-F5CD-409b-B5A5-A16244610B92)
-cpp_quote("EXTERN_GUID(CLSID_CLRStrongName, 0xB79B0ACD, 0xF5CD, 0x409b, 0xB5, 0xA5, 0xA1, 0x62, 0x44, 0x61, 0x0B, 0x92);")
-
// IID ICLRMetaHost : uuid(D332DB9E-B9B3-4125-8207-A14884F53216)
cpp_quote("EXTERN_GUID(IID_ICLRMetaHost, 0xD332DB9E, 0xB9B3, 0x4125, 0x82, 0x07, 0xA1, 0x48, 0x84, 0xF5, 0x32, 0x16);")
// CLSID_CLRMetaHost : uuid(9280188D-0E8E-4867-B30C-7FA83884E8DE)
cpp_quote("EXTERN_GUID(CLSID_CLRMetaHost, 0x9280188d, 0xe8e, 0x4867, 0xb3, 0xc, 0x7f, 0xa8, 0x38, 0x84, 0xe8, 0xde);")
-// IID ICLRMetaHostPolicy : uuid(E2190695-77B2-492e-8E14-C4B3A7FDD593)
-cpp_quote("EXTERN_GUID(IID_ICLRMetaHostPolicy, 0xE2190695, 0x77B2, 0x492e, 0x8E, 0x14, 0xC4, 0xB3, 0xA7, 0xFD, 0xD5, 0x93);")
-
-// CLSID_CLRMetaHostPolicy : uuid(2EBCD49A-1B47-4a61-B13A-4A03701E594B)
-cpp_quote("EXTERN_GUID(CLSID_CLRMetaHostPolicy, 0x2ebcd49a, 0x1b47, 0x4a61, 0xb1, 0x3a, 0x4a, 0x3, 0x70, 0x1e, 0x59, 0x4b);")
-
// IID ICLRDebugging : uuid(D28F3C5A-9634-4206-A509-477552EEFB10)
cpp_quote("EXTERN_GUID(IID_ICLRDebugging, 0xd28f3c5a, 0x9634, 0x4206, 0xa5, 0x9, 0x47, 0x75, 0x52, 0xee, 0xfb, 0x10);")
@@ -72,37 +55,12 @@ cpp_quote("EXTERN_GUID(CLSID_CLRDebugging, 0xbacc578d, 0xfbdd, 0x48a4, 0x96, 0x9
// IID ICLRRuntimeInfo : uuid(BD39D1D2-BA2F-486a-89B0-B4B0CB466891)
cpp_quote("EXTERN_GUID(IID_ICLRRuntimeInfo, 0xBD39D1D2, 0xBA2F, 0x486a, 0x89, 0xB0, 0xB4, 0xB0, 0xCB, 0x46, 0x68, 0x91);")
-// IID ICLRStrongName : uuid(9FD93CCF-3280-4391-B3A9-96E1CDE77C8D)
-cpp_quote("EXTERN_GUID(IID_ICLRStrongName, 0x9FD93CCF, 0x3280, 0x4391, 0xB3, 0xA9, 0x96, 0xE1, 0xCD, 0xE7, 0x7C, 0x8D);")
-
-// IID ICLRStrongName2 : uuid(C22ED5C5-4B59-4975-90EB-85EA55C0069B)
-cpp_quote("EXTERN_GUID(IID_ICLRStrongName2, 0xC22ED5C5, 0x4B59, 0x4975, 0x90, 0xEB, 0x85, 0xEA, 0x55, 0xC0, 0x06, 0x9B);")
-
-// IID ICLRStrongName3 : uuid(22c7089b-bbd3-414a-b698-210f263f1fed)
-cpp_quote("EXTERN_GUID(IID_ICLRStrongName3, 0x22c7089b, 0xbbd3, 0x414a, 0xb6, 0x98, 0x21, 0x0f, 0x26, 0x3f, 0x1f, 0xed);")
-
-// CLSID for legacy debugging interface : uuid(DF8395B5-A4BA-450b-A77C-A9A47762C520}
-cpp_quote("EXTERN_GUID(CLSID_CLRDebuggingLegacy, 0xDF8395B5, 0xA4BA, 0x450b, 0xA7, 0x7C, 0xA9, 0xA4, 0x77, 0x62, 0xC5, 0x20);")
-
-// CLSID CLRProfiling interface : uuid{BD097ED8-733E-43fe-8ED7-A95FF9A8448C}
-cpp_quote("EXTERN_GUID(CLSID_CLRProfiling, 0xbd097ed8, 0x733e, 0x43fe, 0x8e, 0xd7, 0xa9, 0x5f, 0xf9, 0xa8, 0x44, 0x8c);")
-
// IID ICLRDebuggingLibraryProvider interface : uuid{3151C08D-4D09-4f9b-8838-2880BF18FE51}
cpp_quote("EXTERN_GUID(IID_ICLRDebuggingLibraryProvider, 0x3151c08d, 0x4d09, 0x4f9b, 0x88, 0x38, 0x28, 0x80, 0xbf, 0x18, 0xfe, 0x51);")
// IID ICLRDebuggingLibraryProvider2 interface : uuid{E04E2FF1-DCFD-45D5-BCD1-16FFF2FAF7BA}
cpp_quote("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);
-
// For use in ICLRMetaHost::RequestRuntimeLoadedNotification
interface ICLRRuntimeInfo;
@@ -211,125 +169,6 @@ interface ICLRMetaHost : IUnknown
[in] INT32 iExitCode);
} // interface ICLRMetaHost
-typedef enum
-{
- /**********************************************************************************
- ** Functions will not take into account runtimes already loaded into the **
- ** process (thus guaranteed to give the same answer regardless of load order). **
- **********************************************************************************/
- METAHOST_POLICY_HIGHCOMPAT = 0x00000000,
-
- /**********************************************************************************
- ** 0x00000000 - 0x00000004 reserved for future policies. **
- **********************************************************************************/
-
- /**********************************************************************************
- ** Applies upgrade policy when an exact match is not found. **
- **********************************************************************************/
- METAHOST_POLICY_APPLY_UPGRADE_POLICY = 0x00000008,
-
- /**********************************************************************************
- ** Binds as if the provided information were being use in a new process. This **
- ** allows a host to determine what runtime an EXE will bind to when launched. **
- **********************************************************************************/
- METAHOST_POLICY_EMULATE_EXE_LAUNCH = 0x00000010,
-
- /**********************************************************************************
- ** Produces an error dialog if GetRequestedRuntime is unable to find a runtime **
- ** compatible with the input parameters. This error dialog can take the form **
- ** of a dialog box that takes a user to an fwlink, or as a Windows feature **
- ** dialog asking if the user would like to enable the appropriate feature (when **
- ** available, this dialog is preferred over the fwlink dialog). **
- **********************************************************************************/
- METAHOST_POLICY_SHOW_ERROR_DIALOG = 0x00000020,
-
- /**********************************************************************************
- ** By default, GetRequestedRuntime will not fall back to the process image path **
- ** (typically the EXE that was used to launch the process) when determining the **
- ** runtime to bind to. Specify this flag to have GetRequestedRuntime implicitly **
- ** use the process image (and any corresponding configuration file) as **
- ** additional input to the binding process. **
- **********************************************************************************/
- METAHOST_POLICY_USE_PROCESS_IMAGE_PATH = 0x00000040,
-
- /**********************************************************************************
- ** By default, we will not check whether the appropriate SKU is installed **
- ** unless SKU is specified in the config file entry. **
- ** Setting this flag forces the check when no information is available in the **
- ** config file, allowing applications without config files to fail gracefully **
- ** on smaller SKUs than the default install of .NET **
- **********************************************************************************/
- METAHOST_POLICY_ENSURE_SKU_SUPPORTED = 0x00000080,
-
- /**********************************************************************************
- ** By default, we ignore METAHOST_POLICY_SHOW_ERROR_DIALOG if **
- ** SEM_FAILCRITICALERRORS is set **
- ** This flag tell us that a silent failure would be so undesirable that **
- ** the METAHOST_POLICY_SHOW_ERROR_DIALOG should be honored, even if for some **
- ** reason (e.g. inheritance from another process) SEM_FAILCRITICALERRORS is set **
- **********************************************************************************/
- METAHOST_POLICY_IGNORE_ERROR_MODE = 0x00001000,
-
-}
-METAHOST_POLICY_FLAGS;
-
-/**************************************************************************************
- ** This enum describes the possible flags returned in GetRequestedRuntinme's **
- ** pdwConfigFlags out parameter.
- **************************************************************************************/
-typedef enum
-{
- /**********************************************************************************
- ** If a config file is used during GetRequestedRuntime's binding process, these **
- ** values indicate whether or not the startup tag has the **
- ** useLegacyV2RuntimeActivationPolicy attribute set, and if so to what value. **
- **********************************************************************************/
-
- // Indicates presence and value of useLegacyV2RuntimeActivationPolicy <startup> attr
- METAHOST_CONFIG_FLAGS_LEGACY_V2_ACTIVATION_POLICY_UNSET = 0x00000000,
- METAHOST_CONFIG_FLAGS_LEGACY_V2_ACTIVATION_POLICY_TRUE = 0x00000001,
- METAHOST_CONFIG_FLAGS_LEGACY_V2_ACTIVATION_POLICY_FALSE = 0x00000002,
- METAHOST_CONFIG_FLAGS_LEGACY_V2_ACTIVATION_POLICY_MASK = 0x00000003,
-}
-METAHOST_CONFIG_FLAGS;
-
-/**************************************************************************************
- ** ICLRMetaHostPolicy **
- ** Activated using mscoree!CLRCreateInstance. Implements a policy for determining **
- ** a runtime based on various inputs (metadata, config stream, ...). **
- **************************************************************************************/
-[
- uuid(E2190695-77B2-492e-8E14-C4B3A7FDD593),
- version(1.0),
- helpstring("CLR meta hosting policy"),
- local
-]
-interface ICLRMetaHostPolicy : IUnknown
-{
- /**********************************************************************************
- ** Returns requested runtime version and runtime (not necessarily of that **
- ** version) based on a managed binary, version, and config file. **
- ** The return value is S_OK if a compatible runtime was found and S_FALSE if **
- ** not. *ppRuntime will be NULL in the latter case. **
- ** Supersedes: GetRequestedRuntimeInfo, GetRequestedRuntimeVersion, **
- ** CorBindToRuntimeHost, CorBindToRuntimeByCfg, **
- ** GetCORRequiredVersion **
- **********************************************************************************/
- HRESULT GetRequestedRuntime(
- [in] METAHOST_POLICY_FLAGS dwPolicyFlags,
- [in] LPCWSTR pwzBinary, // optional
- [in] IStream *pCfgStream, // optional
- [in, out, size_is(*pcchVersion), annotation("_Inout_updates_all_opt_(*pcchVersion)")]
- LPWSTR pwzVersion, // optional
- [in, out] DWORD *pcchVersion,
- [out, size_is(*pcchImageVersion), annotation("_Out_writes_all_opt_(*pcchImageVersion)")]
- LPWSTR pwzImageVersion, // image version to be used by compilers
- [in, out] DWORD *pcchImageVersion,
- [out] DWORD *pdwConfigFlags,
- [in] REFIID riid, // IID_ICLRRuntimeInfo
- [out, iid_is(riid), retval] LPVOID *ppRuntime);
-} // interface ICLRMetaHostPolicy
-
/*************************************************************************************
** This structure defines the version of a CLR for debugging purposes. **
** The wStructVersion field allows for future revisions to this structure to be **
@@ -708,403 +547,3 @@ interface ICLRRuntimeInfo : IUnknown
[out] BOOL *pbStarted,
[out] DWORD *pdwStartupFlags);
};
-
-/**************************************************************************************
- ** ICLRStrongName **
- ** These are the strong name APIs exposed by mscoree refactored into an interface. **
- ** The only change is the omission of StrongNameErrorInfo and having all methods **
- ** return the COM standard HRESULT. TODO (low-pri): **
- ** ideas what could be done here - we have an opportunity to make breaking changes, **
- ** cleanup etc.
- **************************************************************************************/
-[
- uuid(9FD93CCF-3280-4391-B3A9-96E1CDE77C8D),
- version(1.0),
- helpstring("CLR strong name interface"),
- local
-]
-interface ICLRStrongName : IUnknown
-{
- /**********************************************************************************
- ** Gets a hash of the specified assembly file, using the specified hash **
- ** algorithm. **
- ** Supersedes: GetHashFromAssemblyFile **
- **********************************************************************************/
- HRESULT GetHashFromAssemblyFile(
- [in] LPCSTR pszFilePath,
- [in, out] unsigned int *piHashAlg,
- [out, size_is(cchHash), length_is(*pchHash)] BYTE *pbHash,
- [in] DWORD cchHash,
- [out] DWORD *pchHash);
-
- /**********************************************************************************
- ** Gets a hash of the specified assembly file, using the specified hash **
- ** algorithm (Unicode version). **
- ** Supersedes: GetHashFromAssemblyFileW **
- **********************************************************************************/
- HRESULT GetHashFromAssemblyFileW(
- [in] LPCWSTR pwzFilePath,
- [in, out] unsigned int *piHashAlg,
- [out, size_is(cchHash), length_is(*pchHash)] BYTE *pbHash,
- [in] DWORD cchHash,
- [out] DWORD *pchHash);
-
- /**********************************************************************************
- ** Gets a hash of the assembly at the specified memory address, using the **
- ** specified hash algorithm. **
- ** Supersedes: GetHashFromBlob **
- **********************************************************************************/
- HRESULT GetHashFromBlob(
- [in] BYTE *pbBlob,
- [in] DWORD cchBlob,
- [in, out] unsigned int *piHashAlg,
- [out, size_is(cchHash), length_is(*pchHash)] BYTE *pbHash,
- [in] DWORD cchHash,
- [out] DWORD *pchHash);
-
- /**********************************************************************************
- ** Generates a hash over the contents of the specified file. **
- ** Supersedes: GetHashFromFile **
- **********************************************************************************/
- HRESULT GetHashFromFile(
- [in] LPCSTR pszFilePath,
- [in, out] unsigned int *piHashAlg,
- [out, size_is(cchHash), length_is(*pchHash)] BYTE *pbHash,
- [in] DWORD cchHash,
- [out] DWORD *pchHash);
-
- /**********************************************************************************
- ** Generates a hash over the contents of the specified file (Unicode version). **
- ** Supersedes: GetHashFromFileW **
- **********************************************************************************/
- HRESULT GetHashFromFileW(
- [in] LPCWSTR pwzFilePath,
- [in, out] unsigned int *piHashAlg,
- [out, size_is(cchHash), length_is(*pchHash)] BYTE *pbHash,
- [in] DWORD cchHash,
- [out] DWORD *pchHash);
-
- /**********************************************************************************
- ** Generates a hash over the contents of the file with the specified file **
- ** handle, using the specified hash algorithm. **
- ** Supersedes: GetHashFromHandle **
- **********************************************************************************/
- HRESULT GetHashFromHandle(
- [in] HANDLE hFile,
- [in, out] unsigned int *piHashAlg,
- [out, size_is(cchHash), length_is(*pchHash)] BYTE *pbHash,
- [in] DWORD cchHash,
- [out] DWORD *pchHash);
-
- /**********************************************************************************
- ** Determines whether two assemblies differ only by their strong name **
- ** signatures. **
- ** Supersedes: StrongNameCompareAssemblies **
- **********************************************************************************/
- HRESULT StrongNameCompareAssemblies(
- [in] LPCWSTR pwzAssembly1,
- [in] LPCWSTR pwzAssembly2,
- [out, retval] DWORD *pdwResult);
-
- /**********************************************************************************
- ** Frees memory that was allocated with a previous call to a strong name **
- ** function such as StrongNameGetPublicKey, StrongNameTokenFromPublicKey, or **
- ** StrongNameSignatureGeneration. **
- ** Supersedes: StrongNameFreeBuffer **
- **********************************************************************************/
- HRESULT StrongNameFreeBuffer(
- [in] BYTE *pbMemory);
-
- /**********************************************************************************
- ** Fills the specified buffer with the binary representation of the executable. **
- ** Supersedes: StrongNameGetBlob **
- **********************************************************************************/
- HRESULT StrongNameGetBlob(
- [in] LPCWSTR pwzFilePath,
- [in, out, size_is(*pcbBlob), length_is(*pcbBlob)] BYTE *pbBlob,
- [in, out] DWORD *pcbBlob);
-
- /**********************************************************************************
- ** Gets a binary representation of the assembly image at the specified memory **
- ** address. **
- ** Supersedes: StrongNameGetBlobFromImage **
- **********************************************************************************/
- HRESULT StrongNameGetBlobFromImage(
- [in, size_is(dwLength)] BYTE *pbBase,
- [in] DWORD dwLength,
- [out, size_is(*pcbBlob), length_is(*pcbBlob)] BYTE *pbBlob,
- [in, out] DWORD *pcbBlob);
-
- /**********************************************************************************
- ** Gets the public key from a private/public key pair. **
- ** Supersedes: StrongNameGetPublicKey **
- **********************************************************************************/
- HRESULT StrongNameGetPublicKey(
- [in] LPCWSTR pwzKeyContainer,
- [in] BYTE *pbKeyBlob,
- [in] ULONG cbKeyBlob,
- [out] BYTE **ppbPublicKeyBlob,
- [out] ULONG *pcbPublicKeyBlob);
-
- /**********************************************************************************
- ** Gets the buffer size required for a hash, using the specified hash **
- ** algorithm. **
- ** Supersedes: StrongNameHashSize **
- **********************************************************************************/
- HRESULT StrongNameHashSize(
- [in] ULONG ulHashAlg,
- [out, retval] DWORD *pcbSize);
-
- /**********************************************************************************
- ** Deletes the specified key container. **
- ** Supersedes: StrongNameKeyDelete **
- **********************************************************************************/
- HRESULT StrongNameKeyDelete(
- [in] LPCWSTR pwzKeyContainer);
-
- /**********************************************************************************
- ** Creates a new public/private key pair for strong name use. **
- ** Supersedes: StrongNameKeyGen **
- **********************************************************************************/
- HRESULT StrongNameKeyGen(
- [in] LPCWSTR pwzKeyContainer,
- [in] DWORD dwFlags,
- [out] BYTE **ppbKeyBlob,
- [out] ULONG *pcbKeyBlob);
-
- /**********************************************************************************
- ** Generates a new public/private key pair with the specified key size, for **
- ** strong name use. **
- ** Supersedes: StrongNameKeyGenEx **
- **********************************************************************************/
- HRESULT StrongNameKeyGenEx(
- [in] LPCWSTR pwzKeyContainer,
- [in] DWORD dwFlags,
- [in] DWORD dwKeySize,
- [out] BYTE **ppbKeyBlob,
- [out] ULONG *pcbKeyBlob);
-
- /**********************************************************************************
- ** Imports a public/private key pair into a container. **
- ** Supersedes: StrongNameKeyInstall **
- **********************************************************************************/
- HRESULT StrongNameKeyInstall(
- [in] LPCWSTR pwzKeyContainer,
- [in] BYTE *pbKeyBlob,
- [in] ULONG cbKeyBlob);
-
- /**********************************************************************************
- ** Generates a strong name signature for the specified assembly. **
- ** Supersedes: StrongNameSignatureGeneration **
- **********************************************************************************/
- HRESULT StrongNameSignatureGeneration(
- [in] LPCWSTR pwzFilePath,
- [in] LPCWSTR pwzKeyContainer,
- [in] BYTE *pbKeyBlob,
- [in] ULONG cbKeyBlob,
- [out] BYTE **ppbSignatureBlob,
- [out] ULONG *pcbSignatureBlob);
-
- /**********************************************************************************
- ** Generates a strong name signature for the specified assembly, according to **
- ** the specified flags. **
- ** Supersedes: StrongNameSignatureGenerationEx **
- **********************************************************************************/
- HRESULT StrongNameSignatureGenerationEx(
- [in] LPCWSTR wszFilePath,
- [in] LPCWSTR wszKeyContainer,
- [in] BYTE *pbKeyBlob,
- [in] ULONG cbKeyBlob,
- [out] BYTE **ppbSignatureBlob,
- [out] ULONG *pcbSignatureBlob,
- [in] DWORD dwFlags);
-
- /**********************************************************************************
- ** Returns the size of the strong name signature. **
- ** Supersedes: StrongNameSignatureSize **
- **********************************************************************************/
- HRESULT StrongNameSignatureSize(
- [in] BYTE *pbPublicKeyBlob,
- [in] ULONG cbPublicKeyBlob,
- [in] DWORD *pcbSize);
-
- /**********************************************************************************
- ** Gets a value indicating whether the assembly manifest at the supplied path **
- ** contains a strong name signature, which is verified according to the **
- ** specified flags. **
- ** Supersedes: StrongNameSignatureVerification **
- **********************************************************************************/
- HRESULT StrongNameSignatureVerification(
- [in] LPCWSTR pwzFilePath,
- [in] DWORD dwInFlags,
- [out, retval] DWORD *pdwOutFlags);
-
- /**********************************************************************************
- ** Gets a value indicating whether the assembly manifest at the supplied path **
- ** contains a strong name signature. **
- ** Supersedes: StrongNameSignatureVerificationEx **
- **********************************************************************************/
- HRESULT StrongNameSignatureVerificationEx(
- [in] LPCWSTR pwzFilePath,
- [in] BOOLEAN fForceVerification,
- [out, retval] BOOLEAN *pfWasVerified);
-
- /**********************************************************************************
- ** Verifies that an assembly that has already been mapped to memory is valid **
- ** for the associated public key. **
- ** Supersedes: StrongNameSignatureVerificationFromImage **
- **********************************************************************************/
- HRESULT StrongNameSignatureVerificationFromImage(
- [in] BYTE *pbBase,
- [in] DWORD dwLength,
- [in] DWORD dwInFlags,
- [out, retval] DWORD *pdwOutFlags);
-
- /**********************************************************************************
- ** Creates a strong name token from the specified assembly file. **
- ** Supersedes: StrongNameTokenFromAssembly **
- **********************************************************************************/
- HRESULT StrongNameTokenFromAssembly(
- [in] LPCWSTR pwzFilePath,
- [out] BYTE **ppbStrongNameToken,
- [out] ULONG *pcbStrongNameToken);
-
- /**********************************************************************************
- ** Creates a strong name token from the specified assembly file, and returns **
- ** the public key that the token represents. **
- ** Supersedes: StrongNameTokenFromAssemblyEx **
- **********************************************************************************/
- HRESULT StrongNameTokenFromAssemblyEx(
- [in] LPCWSTR pwzFilePath,
- [out] BYTE **ppbStrongNameToken,
- [out] ULONG *pcbStrongNameToken,
- [out] BYTE **ppbPublicKeyBlob,
- [out] ULONG *pcbPublicKeyBlob);
- /**********************************************************************************
- ** Gets a token representing a public key. A strong name token is the shortened **
- ** form of a public key. **
- ** Supersedes: StrongNameTokenFromPublicKey **
- **********************************************************************************/
- HRESULT StrongNameTokenFromPublicKey(
- [in] BYTE *pbPublicKeyBlob,
- [in] ULONG cbPublicKeyBlob,
- [out] BYTE **ppbStrongNameToken,
- [out] ULONG *pcbStrongNameToken);
-}; // interface ICLRStrongName
-
-/**************************************************************************************
- ** ICLRStrongName2 **
- ** Strongname Api's **
- **************************************************************************************/
-[
- uuid(C22ED5C5-4B59-4975-90EB-85EA55C0069B),
- version(1.0),
- helpstring("CLR strong name interface 2"),
- local
-]
-interface ICLRStrongName2 : IUnknown
-{
- /**********************************************************************************
- ** Gets the public key from a private/public key pair, specifying a hash **
- ** algorithm and a signature algorithm. **
- **********************************************************************************/
- HRESULT StrongNameGetPublicKeyEx(
- [in] LPCWSTR pwzKeyContainer,
- [in] BYTE *pbKeyBlob,
- [in] ULONG cbKeyBlob,
- [out] BYTE **ppbPublicKeyBlob,
- [out] ULONG *pcbPublicKeyBlob,
- [in] ULONG uHashAlgId, // specify algorithm, or set to 0 for default
- [in] ULONG uReserved); // reserved for future use, always set to 0
-
- /**********************************************************************************
- ** Verify the signature of a strongly named assembly, providing a mapping from **
- ** the ECMA key to a real key **
- **********************************************************************************/
- HRESULT StrongNameSignatureVerificationEx2(
- [in] LPCWSTR wszFilePath,
- [in] BOOLEAN fForceVerification,
- [in] BYTE *pbEcmaPublicKey,
- [in] DWORD cbEcmaPublicKey,
- [out] BOOLEAN *pfWasVerified);
-}; // interface ICLRStrongName2
-
-/*************************************************************************************
-** ICLRStrongName3 **
-** StrongName digest signing APIs **
-**************************************************************************************/
-[
- uuid(22c7089b-bbd3-414a-b698-210f263f1fed),
- version(1.0),
- helpstring("CLR strong name digest signing interface"),
- local
-]
-interface ICLRStrongName3 : IUnknown
-{
- // Generate the digest of an input assembly, which can be signed with StrongNameDigestSign
- HRESULT StrongNameDigestGenerate(
- [in] LPCWSTR wszFilePath,
- [out] BYTE** ppbDigestBlob,
- [out] ULONG* pcbDigestBlob,
- [in] DWORD dwFlags);
-
- // Sign an the digest of an assembly calculated by StrongNameDigestGenerate
- HRESULT StrongNameDigestSign(
- [in] LPCWSTR wszKeyContainer,
- [in, size_is(cbKeyBlob)] BYTE* pbKeyBlob,
- [in] ULONG cbKeyBlob,
- [in, size_is(cbDigestBlob)] BYTE* pbDigestBlob,
- [in] ULONG cbDigestBlob,
- [in] DWORD hashAlgId,
- [out] BYTE** ppbSignatureBlob,
- [out] ULONG* pcbSignatureBlob,
- [in] DWORD dwFlags);
-
- // Embed a digest signature generated with StrongNameDigestSign into an assembly
- HRESULT StrongNameDigestEmbed(
- [in] LPCWSTR wszFilePath,
- [in, size_is(cbSignatureBlob)] BYTE* pbSignatureBlob,
- [in] ULONG cbSignatureBlob);
-};
-
-[
- uuid(5288DA6A-A8D3-43a1-8365-37DB0E7D5943),
- version(1.0),
-]
-library CLRMetaHost
-{
- interface ICLRMetaHost;
- interface ICLRMetaHostPolicy;
- interface ICLRDebuggingLibraryProvider;
- interface ICLRDebugging;
- interface ICLRRuntimeInfo;
- interface ICLRStrongName;
-
- // Scenario: EXE activation
- // 1. ICLRMetaHostPolicy::GetRequestedRuntime
- // 2. ICLRRuntimeInfo::GetProcAddress("ExeMain")
- // 3. ExeMain() - TODO: Add a hosting API to execute an EXE?
-
- // Scenario: Hosting with custom policy
- // 1. ICLRMetaHost::GetFileVersion
- // 2. ICLRMetaHost::EnumerateInstalledRuntimes
- // 3. ICLRRuntimeInfo::IsLoaded/IsStarted
- // ...
-
- // Scenario: Debugger attach for v1.0 to v4 using v2 lookalike interface
- // ICLRMetaHost::EnumerateLoadedRuntimes
- // ICLRRuntimeInfo::GetInterface(CLSID_CLRDebuggingLegacy, IID_ICorDebug)
-
- // Scenario: Profiler attach for v4
- // ICLRMetaHost::EnumerateLoadedRuntimes
-
- // Scenario: An installer needs to modify configuration of supported runtimes
- // 1. ICLRMetaHost::EnumerateInstalledRuntimes
- // 2. ICLRRuntimeInfo::GetVersionString
- // 3. <policy>
- // 4. ICLRRuntimeInfo::GetRuntimeDirectory
- // 5. <modify the config file under the runtime dir>
-
-}; // library CLRMetaHost
-
-cpp_quote("#endif // WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
diff --git a/src/inc/mscoreepriv.h b/src/inc/mscoreepriv.h
deleted file mode 100644
index df07612010..0000000000
--- a/src/inc/mscoreepriv.h
+++ /dev/null
@@ -1,21 +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.
-//
-
-#ifndef __MSCOREEPRIV_H__
-#define __MSCOREEPRIV_H__
-
-
-typedef enum
-{
- RUNTIME_INFO_CONSIDER_POST_2_0 = 0x80, // consider v4.0+ versions
- RUNTIME_INFO_EMULATE_EXE_LAUNCH = 0x100, // Binds as if the provided information were being use in a new process
- RUNTIME_INFO_APPEND_FORCE_PERFORMANCE_COUNTER_UNIQUE_SHARED_MEMORY_READS_SETTING_TO_VERSION // appends either !0 (false), !1 (true) or !2 (unset) depending on the value of forcePerformanceCounterUniqueSharedMemoryReads in the runtime section of the config
- = 0x200,
-} RUNTIME_INFO_FLAGS_FOR_SHARED_COMPONENTS;
-
-
-
-#endif //__MSCOREEPRIV_H__
-
diff --git a/src/inc/utilcode.h b/src/inc/utilcode.h
index cd847366d5..a3123efa84 100644
--- a/src/inc/utilcode.h
+++ b/src/inc/utilcode.h
@@ -4200,7 +4200,7 @@ void TrimWhiteSpace(__inout_ecount(*pcch) LPCWSTR *pwsz, __inout LPDWORD pcch);
HRESULT Utf2Quick(
LPCUTF8 pStr, // The string to convert.
CQuickArray<WCHAR> &rStr, // The QuickArray<WCHAR> to convert it into.
- int iCurLen); // Inital characters in the array to leave (default 0).
+ int iCurLen = 0); // Initial characters in the array to leave (default 0).
//*****************************************************************************
// Extract the movl 64-bit unsigned immediate from an IA64 bundle
@@ -5186,9 +5186,6 @@ HMODULE LoadLocalizedResourceDLLForSDK(_In_z_ LPCWSTR wzResourceDllName, _In_opt
typedef void* (__cdecl *LocalizedFileHandler)(LPCWSTR);
void* FindLocalizedFile(_In_z_ LPCWSTR wzResourceDllName, LocalizedFileHandler lfh, _In_opt_z_ LPCWSTR modulePath=NULL);
-BOOL IsClrHostedLegacyComObject(REFCLSID rclsid);
-
-
// Helper to support termination due to heap corruption
diff --git a/src/md/compiler/classfactory.cpp b/src/md/compiler/classfactory.cpp
index 338095add3..af34970d59 100644
--- a/src/md/compiler/classfactory.cpp
+++ b/src/md/compiler/classfactory.cpp
@@ -26,8 +26,6 @@
#include "clrprivhosting.h"
-extern HRESULT TypeNameFactoryCreateObject(REFIID riid, void **ppUnk);
-
#include <ndpversion.h>
diff --git a/src/pal/prebuilt/idl/gchost_i.cpp b/src/pal/prebuilt/idl/gchost_i.cpp
deleted file mode 100644
index 32ecfbe9d5..0000000000
--- a/src/pal/prebuilt/idl/gchost_i.cpp
+++ /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
-
-
-
diff --git a/src/pal/prebuilt/inc/gchost.h b/src/pal/prebuilt/inc/gchost.h
deleted file mode 100644
index c9e4fffa18..0000000000
--- a/src/pal/prebuilt/inc/gchost.h
+++ /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
-
-
diff --git a/src/pal/prebuilt/inc/metahost.h b/src/pal/prebuilt/inc/metahost.h
index aa6c78c944..aae25d70db 100644
--- a/src/pal/prebuilt/inc/metahost.h
+++ b/src/pal/prebuilt/inc/metahost.h
@@ -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 */
diff --git a/src/pal/prebuilt/inc/mscoree.h b/src/pal/prebuilt/inc/mscoree.h
index 13aab94494..42a97c0096 100644
--- a/src/pal/prebuilt/inc/mscoree.h
+++ b/src/pal/prebuilt/inc/mscoree.h
@@ -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"
@@ -38,69 +38,6 @@
/* 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;
@@ -119,102 +56,11 @@ typedef interface ICLRRuntimeHost2 ICLRRuntimeHost2;
#define __ICLRRuntimeHost4_FWD_DEFINED__
typedef interface ICLRRuntimeHost4 ICLRRuntimeHost4;
-#endif /* __ICLRRuntimeHost4_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"{
@@ -229,54 +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_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 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 ) ,
@@ -296,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,
@@ -328,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
{
@@ -576,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,
@@ -592,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 ) ,
@@ -633,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 ) ,
@@ -891,8 +197,8 @@ enum __MIDL___MIDL_itf_mscoree_0000_0004_0001
MaxClrOperation = ( OPR_FinalizerRun + 1 )
} EClrOperation;
-typedef /* [public][public] */
-enum __MIDL___MIDL_itf_mscoree_0000_0004_0002
+typedef /* [public] */
+enum __MIDL___MIDL_itf_mscoree_0000_0000_0007
{
FAIL_NonCriticalResource = 0,
FAIL_CriticalResource = ( FAIL_NonCriticalResource + 1 ) ,
@@ -904,15 +210,15 @@ enum __MIDL___MIDL_itf_mscoree_0000_0004_0002
MaxClrFailure = ( FAIL_CodeContract + 1 )
} EClrFailure;
-typedef /* [public][public] */
-enum __MIDL___MIDL_itf_mscoree_0000_0004_0003
+typedef /* [public] */
+enum __MIDL___MIDL_itf_mscoree_0000_0000_0008
{
eRuntimeDeterminedPolicy = 0,
eHostDeterminedPolicy = ( eRuntimeDeterminedPolicy + 1 )
} EClrUnhandledException;
-typedef /* [public][public][public][public][public] */
-enum __MIDL___MIDL_itf_mscoree_0000_0004_0004
+typedef /* [public] */
+enum __MIDL___MIDL_itf_mscoree_0000_0000_0009
{
eNoAction = 0,
eThrowException = ( eNoAction + 1 ) ,
@@ -929,636 +235,8 @@ enum __MIDL___MIDL_itf_mscoree_0000_0004_0004
-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__ */
-
+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 __ICLRRuntimeHost_INTERFACE_DEFINED__
#define __ICLRRuntimeHost_INTERFACE_DEFINED__
@@ -1740,16 +418,6 @@ EXTERN_C const IID IID_ICLRRuntimeHost;
#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__
@@ -1804,16 +472,6 @@ EXTERN_C const IID IID_ICLRRuntimeHost2;
};
- 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 */
@@ -2006,618 +664,149 @@ EXTERN_C const IID IID_ICLRRuntimeHost2;
#endif /* __ICLRRuntimeHost2_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 __ICLRRuntimeHost4_INTERFACE_DEFINED__
+#define __ICLRRuntimeHost4_INTERFACE_DEFINED__
-#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;
-
- interface ITypeName
- {
- 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 */
-
-
-
-
-#endif /* __ITypeName_INTERFACE_DEFINED__ */
-
-
-#ifndef __ITypeNameBuilder_INTERFACE_DEFINED__
-#define __ITypeNameBuilder_INTERFACE_DEFINED__
-
-/* interface ITypeNameBuilder */
-/* [unique][helpstring][uuid][oleautomation][object] */
+/* interface ICLRRuntimeHost4 */
+/* [local][unique][helpstring][version][uuid][object] */
-EXTERN_C const IID IID_ITypeNameBuilder;
+EXTERN_C const IID IID_ICLRRuntimeHost4;
#if defined(__cplusplus) && !defined(CINTERFACE)
- MIDL_INTERFACE("B81FF171-20F3-11d2-8DCC-00A0C9B00523")
- ITypeNameBuilder : public IUnknown
+ MIDL_INTERFACE("64F6D366-D7C2-4F1F-B4B2-E8160CAC43AF")
+ ICLRRuntimeHost4 : public ICLRRuntimeHost2
{
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 AddName(
- /* [in] */ LPCWSTR szName) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE AddPointer( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE AddByRef( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE AddSzArray( void) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE AddArray(
- /* [in] */ DWORD rank) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE AddAssemblySpec(
- /* [in] */ LPCWSTR szAssemblySpec) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE ToString(
- /* [retval][out] */ BSTR *pszStringRepresentation) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Clear( void) = 0;
+ virtual HRESULT STDMETHODCALLTYPE UnloadAppDomain2(
+ /* [in] */ DWORD dwAppDomainId,
+ /* [in] */ BOOL fWaitUntilDone,
+ /* [out] */ int *pLatchedExitCode) = 0;
};
#else /* C style interface */
- typedef struct ITypeNameBuilderVtbl
+ typedef struct ICLRRuntimeHost4Vtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- ITypeNameBuilder * This,
+ ICLRRuntimeHost4 * This,
/* [in] */ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
- ITypeNameBuilder * This);
+ ICLRRuntimeHost4 * This);
ULONG ( STDMETHODCALLTYPE *Release )(
- ITypeNameBuilder * This);
-
- HRESULT ( STDMETHODCALLTYPE *OpenGenericArguments )(
- ITypeNameBuilder * This);
-
- HRESULT ( STDMETHODCALLTYPE *CloseGenericArguments )(
- ITypeNameBuilder * This);
-
- HRESULT ( STDMETHODCALLTYPE *OpenGenericArgument )(
- ITypeNameBuilder * This);
-
- HRESULT ( STDMETHODCALLTYPE *CloseGenericArgument )(
- ITypeNameBuilder * This);
+ ICLRRuntimeHost4 * This);
- HRESULT ( STDMETHODCALLTYPE *AddName )(
- ITypeNameBuilder * This,
- /* [in] */ LPCWSTR szName);
-
- HRESULT ( STDMETHODCALLTYPE *AddPointer )(
- ITypeNameBuilder * This);
-
- HRESULT ( STDMETHODCALLTYPE *AddByRef )(
- ITypeNameBuilder * This);
-
- HRESULT ( STDMETHODCALLTYPE *AddSzArray )(
- ITypeNameBuilder * This);
-
- HRESULT ( STDMETHODCALLTYPE *AddArray )(
- ITypeNameBuilder * This,
- /* [in] */ DWORD rank);
-
- HRESULT ( STDMETHODCALLTYPE *AddAssemblySpec )(
- ITypeNameBuilder * This,
- /* [in] */ LPCWSTR szAssemblySpec);
-
- HRESULT ( STDMETHODCALLTYPE *ToString )(
- ITypeNameBuilder * This,
- /* [retval][out] */ BSTR *pszStringRepresentation);
-
- HRESULT ( STDMETHODCALLTYPE *Clear )(
- ITypeNameBuilder * This);
+ HRESULT ( STDMETHODCALLTYPE *Start )(
+ ICLRRuntimeHost4 * This);
- END_INTERFACE
- } ITypeNameBuilderVtbl;
-
- interface ITypeNameBuilder
- {
- CONST_VTBL struct ITypeNameBuilderVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define ITypeNameBuilder_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define ITypeNameBuilder_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define ITypeNameBuilder_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 ITypeNameBuilder_AddName(This,szName) \
- ( (This)->lpVtbl -> AddName(This,szName) )
-
-#define ITypeNameBuilder_AddPointer(This) \
- ( (This)->lpVtbl -> AddPointer(This) )
-
-#define ITypeNameBuilder_AddByRef(This) \
- ( (This)->lpVtbl -> AddByRef(This) )
-
-#define ITypeNameBuilder_AddSzArray(This) \
- ( (This)->lpVtbl -> AddSzArray(This) )
-
-#define ITypeNameBuilder_AddArray(This,rank) \
- ( (This)->lpVtbl -> AddArray(This,rank) )
-
-#define ITypeNameBuilder_AddAssemblySpec(This,szAssemblySpec) \
- ( (This)->lpVtbl -> AddAssemblySpec(This,szAssemblySpec) )
-
-#define ITypeNameBuilder_ToString(This,pszStringRepresentation) \
- ( (This)->lpVtbl -> ToString(This,pszStringRepresentation) )
-
-#define ITypeNameBuilder_Clear(This) \
- ( (This)->lpVtbl -> Clear(This) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __ITypeNameBuilder_INTERFACE_DEFINED__ */
-
-
-#ifndef __ITypeNameFactory_INTERFACE_DEFINED__
-#define __ITypeNameFactory_INTERFACE_DEFINED__
-
-/* interface ITypeNameFactory */
-/* [unique][helpstring][uuid][oleautomation][object] */
-
-
-EXTERN_C const IID IID_ITypeNameFactory;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("B81FF171-20F3-11d2-8DCC-00A0C9B00521")
- ITypeNameFactory : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE ParseTypeName(
- /* [in] */ LPCWSTR szName,
- /* [out] */ DWORD *pError,
- /* [retval][out] */ ITypeName **ppTypeName) = 0;
+ HRESULT ( STDMETHODCALLTYPE *Stop )(
+ ICLRRuntimeHost4 * This);
- virtual HRESULT STDMETHODCALLTYPE GetTypeNameBuilder(
- /* [retval][out] */ ITypeNameBuilder **ppTypeBuilder) = 0;
+ HRESULT ( STDMETHODCALLTYPE *SetHostControl )(
+ ICLRRuntimeHost4 * This,
+ /* [in] */ IHostControl *pHostControl);
- };
-
-
-#else /* C style interface */
-
- typedef struct ITypeNameFactoryVtbl
- {
- BEGIN_INTERFACE
+ HRESULT ( STDMETHODCALLTYPE *GetCLRControl )(
+ ICLRRuntimeHost4 * This,
+ /* [out] */ ICLRControl **pCLRControl);
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- ITypeNameFactory * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
+ HRESULT ( STDMETHODCALLTYPE *UnloadAppDomain )(
+ ICLRRuntimeHost4 * This,
+ /* [in] */ DWORD dwAppDomainId,
+ /* [in] */ BOOL fWaitUntilDone);
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- ITypeNameFactory * This);
+ HRESULT ( STDMETHODCALLTYPE *ExecuteInAppDomain )(
+ ICLRRuntimeHost4 * This,
+ /* [in] */ DWORD dwAppDomainId,
+ /* [in] */ FExecuteInAppDomainCallback pCallback,
+ /* [in] */ void *cookie);
- ULONG ( STDMETHODCALLTYPE *Release )(
- ITypeNameFactory * This);
+ HRESULT ( STDMETHODCALLTYPE *GetCurrentAppDomainId )(
+ ICLRRuntimeHost4 * This,
+ /* [out] */ DWORD *pdwAppDomainId);
- HRESULT ( STDMETHODCALLTYPE *ParseTypeName )(
- ITypeNameFactory * This,
- /* [in] */ LPCWSTR szName,
- /* [out] */ DWORD *pError,
- /* [retval][out] */ ITypeName **ppTypeName);
+ 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 *GetTypeNameBuilder )(
- ITypeNameFactory * This,
- /* [retval][out] */ ITypeNameBuilder **ppTypeBuilder);
+ HRESULT ( STDMETHODCALLTYPE *ExecuteInDefaultAppDomain )(
+ ICLRRuntimeHost4 * This,
+ /* [in] */ LPCWSTR pwzAssemblyPath,
+ /* [in] */ LPCWSTR pwzTypeName,
+ /* [in] */ LPCWSTR pwzMethodName,
+ /* [in] */ LPCWSTR pwzArgument,
+ /* [out] */ DWORD *pReturnValue);
- 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 *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);
- virtual HRESULT STDMETHODCALLTYPE GetObjectIdentity(
- /* [out] */ BSTR *pBSTRGUID,
- /* [out] */ int *AppDomainID,
- /* [out] */ int *pCCW) = 0;
+ HRESULT ( STDMETHODCALLTYPE *CreateDelegate )(
+ ICLRRuntimeHost4 * This,
+ /* [in] */ DWORD appDomainID,
+ /* [in] */ LPCWSTR wszAssemblyName,
+ /* [in] */ LPCWSTR wszClassName,
+ /* [in] */ LPCWSTR wszMethodName,
+ /* [out] */ INT_PTR *fnPtr);
- };
-
-
-#else /* C style interface */
-
- typedef struct IManagedObjectVtbl
- {
- BEGIN_INTERFACE
+ HRESULT ( STDMETHODCALLTYPE *Authenticate )(
+ ICLRRuntimeHost4 * This,
+ /* [in] */ ULONGLONG authKey);
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- IManagedObject * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
+ HRESULT ( STDMETHODCALLTYPE *RegisterMacEHPort )(
+ ICLRRuntimeHost4 * This);
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- IManagedObject * This);
+ HRESULT ( STDMETHODCALLTYPE *SetStartupFlags )(
+ ICLRRuntimeHost4 * This,
+ /* [in] */ STARTUP_FLAGS dwFlags);
- ULONG ( STDMETHODCALLTYPE *Release )(
- IManagedObject * This);
+ HRESULT ( STDMETHODCALLTYPE *DllGetActivationFactory )(
+ ICLRRuntimeHost4 * This,
+ /* [in] */ DWORD appDomainID,
+ /* [in] */ LPCWSTR wszTypeName,
+ /* [out] */ IActivationFactory **factory);
- HRESULT ( STDMETHODCALLTYPE *GetSerializedBuffer )(
- IManagedObject * This,
- /* [out] */ BSTR *pBSTR);
+ HRESULT ( STDMETHODCALLTYPE *ExecuteAssembly )(
+ ICLRRuntimeHost4 * This,
+ /* [in] */ DWORD dwAppDomainId,
+ /* [in] */ LPCWSTR pwzAssemblyPath,
+ /* [in] */ int argc,
+ /* [in] */ LPCWSTR *argv,
+ /* [out] */ DWORD *pReturnValue);
- HRESULT ( STDMETHODCALLTYPE *GetObjectIdentity )(
- IManagedObject * This,
- /* [out] */ BSTR *pBSTRGUID,
- /* [out] */ int *AppDomainID,
- /* [out] */ int *pCCW);
+ HRESULT ( STDMETHODCALLTYPE *UnloadAppDomain2 )(
+ ICLRRuntimeHost4 * This,
+ /* [in] */ DWORD dwAppDomainId,
+ /* [in] */ BOOL fWaitUntilDone,
+ /* [out] */ int *pLatchedExitCode);
END_INTERFACE
- } IManagedObjectVtbl;
+ } ICLRRuntimeHost4Vtbl;
- interface IManagedObject
+ interface ICLRRuntimeHost4
{
- CONST_VTBL struct IManagedObjectVtbl *lpVtbl;
+ CONST_VTBL struct ICLRRuntimeHost4Vtbl *lpVtbl;
};
@@ -2625,177 +814,68 @@ EXTERN_C const IID IID_IManagedObject;
#ifdef COBJMACROS
-#define IManagedObject_QueryInterface(This,riid,ppvObject) \
+#define ICLRRuntimeHost4_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-#define IManagedObject_AddRef(This) \
+#define ICLRRuntimeHost4_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
-#define IManagedObject_Release(This) \
+#define ICLRRuntimeHost4_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 */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __IManagedObject_INTERFACE_DEFINED__ */
-
-
-EXTERN_C const CLSID CLSID_ComCallUnmarshal;
-
-#ifdef __cplusplus
-
-class DECLSPEC_UUID("3F281000-E95A-11d2-886B-00C04F869F04")
-ComCallUnmarshal;
-#endif
-
-EXTERN_C const CLSID CLSID_ComCallUnmarshalV4;
-
-#ifdef __cplusplus
-
-class DECLSPEC_UUID("45FB4600-E6E8-4928-B25E-50476FF79425")
-ComCallUnmarshalV4;
-#endif
-
-EXTERN_C const CLSID CLSID_CLRRuntimeHost;
-
-#ifdef __cplusplus
-
-class DECLSPEC_UUID("90F1A06E-7712-4762-86B5-7A5EBA6BDB02")
-CLRRuntimeHost;
-#endif
-
-EXTERN_C const CLSID CLSID_TypeNameFactory;
-
-#ifdef __cplusplus
-
-class DECLSPEC_UUID("B81FF171-20F3-11d2-8DCC-00A0C9B00525")
-TypeNameFactory;
-#endif
-#endif /* __mscoree_LIBRARY_DEFINED__ */
-
-/* interface __MIDL_itf_mscoree_0000_0014 */
-/* [local] */
-
-typedef /* [public] */
-enum __MIDL___MIDL_itf_mscoree_0000_0014_0001
- {
- eCurrentContext = 0,
- eRestrictedContext = 0x1
- } EContextType;
-
-
+#define ICLRRuntimeHost4_Start(This) \
+ ( (This)->lpVtbl -> Start(This) )
-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;
+#define ICLRRuntimeHost4_Stop(This) \
+ ( (This)->lpVtbl -> Stop(This) )
-#ifndef __ICLRAppDomainResourceMonitor_INTERFACE_DEFINED__
-#define __ICLRAppDomainResourceMonitor_INTERFACE_DEFINED__
+#define ICLRRuntimeHost4_SetHostControl(This,pHostControl) \
+ ( (This)->lpVtbl -> SetHostControl(This,pHostControl) )
-/* interface ICLRAppDomainResourceMonitor */
-/* [object][local][unique][helpstring][uuid][version] */
+#define ICLRRuntimeHost4_GetCLRControl(This,pCLRControl) \
+ ( (This)->lpVtbl -> GetCLRControl(This,pCLRControl) )
+#define ICLRRuntimeHost4_UnloadAppDomain(This,dwAppDomainId,fWaitUntilDone) \
+ ( (This)->lpVtbl -> UnloadAppDomain(This,dwAppDomainId,fWaitUntilDone) )
-EXTERN_C const IID IID_ICLRAppDomainResourceMonitor;
+#define ICLRRuntimeHost4_ExecuteInAppDomain(This,dwAppDomainId,pCallback,cookie) \
+ ( (This)->lpVtbl -> ExecuteInAppDomain(This,dwAppDomainId,pCallback,cookie) )
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("c62de18c-2e23-4aea-8423-b40c1fc59eae")
- ICLRAppDomainResourceMonitor : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE GetCurrentAllocated(
- /* [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;
-
- };
-
-
-#else /* C style interface */
+#define ICLRRuntimeHost4_GetCurrentAppDomainId(This,pdwAppDomainId) \
+ ( (This)->lpVtbl -> GetCurrentAppDomainId(This,pdwAppDomainId) )
- typedef struct ICLRAppDomainResourceMonitorVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- ICLRAppDomainResourceMonitor * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- ICLRAppDomainResourceMonitor * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- ICLRAppDomainResourceMonitor * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetCurrentAllocated )(
- ICLRAppDomainResourceMonitor * This,
- /* [in] */ DWORD dwAppDomainId,
- /* [out] */ ULONGLONG *pBytesAllocated);
-
- HRESULT ( STDMETHODCALLTYPE *GetCurrentSurvived )(
- ICLRAppDomainResourceMonitor * This,
- /* [in] */ DWORD dwAppDomainId,
- /* [out] */ ULONGLONG *pAppDomainBytesSurvived,
- /* [out] */ ULONGLONG *pTotalBytesSurvived);
-
- HRESULT ( STDMETHODCALLTYPE *GetCurrentCpuTime )(
- ICLRAppDomainResourceMonitor * This,
- /* [in] */ DWORD dwAppDomainId,
- /* [out] */ ULONGLONG *pMilliseconds);
-
- END_INTERFACE
- } ICLRAppDomainResourceMonitorVtbl;
+#define ICLRRuntimeHost4_ExecuteApplication(This,pwzAppFullName,dwManifestPaths,ppwzManifestPaths,dwActivationData,ppwzActivationData,pReturnValue) \
+ ( (This)->lpVtbl -> ExecuteApplication(This,pwzAppFullName,dwManifestPaths,ppwzManifestPaths,dwActivationData,ppwzActivationData,pReturnValue) )
- interface ICLRAppDomainResourceMonitor
- {
- CONST_VTBL struct ICLRAppDomainResourceMonitorVtbl *lpVtbl;
- };
+#define ICLRRuntimeHost4_ExecuteInDefaultAppDomain(This,pwzAssemblyPath,pwzTypeName,pwzMethodName,pwzArgument,pReturnValue) \
+ ( (This)->lpVtbl -> ExecuteInDefaultAppDomain(This,pwzAssemblyPath,pwzTypeName,pwzMethodName,pwzArgument,pReturnValue) )
-
-#ifdef COBJMACROS
+#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 ICLRAppDomainResourceMonitor_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
+#define ICLRRuntimeHost4_Authenticate(This,authKey) \
+ ( (This)->lpVtbl -> Authenticate(This,authKey) )
-#define ICLRAppDomainResourceMonitor_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
+#define ICLRRuntimeHost4_RegisterMacEHPort(This) \
+ ( (This)->lpVtbl -> RegisterMacEHPort(This) )
-#define ICLRAppDomainResourceMonitor_Release(This) \
- ( (This)->lpVtbl -> Release(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 ICLRAppDomainResourceMonitor_GetCurrentAllocated(This,dwAppDomainId,pBytesAllocated) \
- ( (This)->lpVtbl -> GetCurrentAllocated(This,dwAppDomainId,pBytesAllocated) )
+#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 */
@@ -2805,10 +885,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
@@ -2816,8 +896,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 */
diff --git a/src/utilcode/util.cpp b/src/utilcode/util.cpp
index 9ebc401db4..d0a6035318 100644
--- a/src/utilcode/util.cpp
+++ b/src/utilcode/util.cpp
@@ -3035,21 +3035,6 @@ void EnableTerminationOnHeapCorruption()
HeapSetInformation(NULL, HeapEnableTerminationOnCorruption, NULL, 0);
}
-#ifdef FEATURE_COMINTEROP
-BOOL IsClrHostedLegacyComObject(REFCLSID rclsid)
-{
- // let's simply check for all CLSIDs that are known to be runtime implemented and capped to 2.0
- return (
- rclsid == CLSID_ComCallUnmarshal ||
- rclsid == CLSID_CorMetaDataDispenser ||
- rclsid == CLSID_CorMetaDataDispenserRuntime ||
- rclsid == CLSID_TypeNameFactory);
-}
-#endif // FEATURE_COMINTEROP
-
-
-
-
namespace Clr
{
namespace Util
diff --git a/src/vm/ceemain.cpp b/src/vm/ceemain.cpp
index 41b6fe0b6f..e5267cf131 100644
--- a/src/vm/ceemain.cpp
+++ b/src/vm/ceemain.cpp
@@ -632,10 +632,6 @@ void EEStartupHelper(COINITIEE fFlags)
#ifndef CROSSGEN_COMPILE
-#ifdef _DEBUG
- DisableGlobalAllocStore();
-#endif //_DEBUG
-
#ifndef FEATURE_PAL
::SetConsoleCtrlHandler(DbgCtrlCHandler, TRUE/*add*/);
#endif
@@ -1519,11 +1515,7 @@ void STDMETHODCALLTYPE EEShutDownHelper(BOOL fIsDllUnloading)
{
ClrFlsSetThreadType(ThreadType_Shutdown);
- if (!fIsDllUnloading)
- {
- ProcessEventForHost(Event_ClrDisabled, NULL);
- }
- else if (g_fEEShutDown)
+ if (fIsDllUnloading && g_fEEShutDown)
{
// I'm in the final shutdown and the first part has already been run.
goto part2;
diff --git a/src/vm/ceemain.h b/src/vm/ceemain.h
index 451bbc58b1..25152564c0 100644
--- a/src/vm/ceemain.h
+++ b/src/vm/ceemain.h
@@ -181,10 +181,6 @@ private:
};
-#ifdef _DEBUG
-extern void DisableGlobalAllocStore ();
-#endif //_DEBUG
-
void SetLatchedExitCode (INT32 code);
INT32 GetLatchedExitCode (void);
diff --git a/src/vm/commtmemberinfomap.cpp b/src/vm/commtmemberinfomap.cpp
index 01904ef212..e53cd2f525 100644
--- a/src/vm/commtmemberinfomap.cpp
+++ b/src/vm/commtmemberinfomap.cpp
@@ -13,7 +13,6 @@
#include "commtmemberinfomap.h"
#include "comcallablewrapper.h"
-#include "tlbexport.h"
#include "field.h"
#include "caparser.h"
@@ -1381,6 +1380,67 @@ void ComMTMemberInfoMap::AssignNewEnumMember(
}
} // void ComMTMemberInfoMap::AssignNewEnumMember()
+//*****************************************************************************
+// Signature utilities.
+//*****************************************************************************
+class MetaSigExport : public MetaSig
+{
+public:
+ MetaSigExport(MethodDesc *pMD) :
+ MetaSig(pMD)
+ {
+ WRAPPER_NO_CONTRACT;
+ }
+
+ BOOL IsVbRefType()
+ {
+ CONTRACT(BOOL)
+ {
+ NOTHROW;
+ GC_NOTRIGGER;
+ MODE_ANY;
+ }
+ CONTRACT_END;
+
+ // Get the arg, and skip decorations.
+ SigPointer pt = GetArgProps();
+ CorElementType mt;
+ if (FAILED(pt.PeekElemType(&mt)))
+ return FALSE;
+
+ while (mt == ELEMENT_TYPE_BYREF || mt == ELEMENT_TYPE_PTR)
+ {
+ // Eat the one just examined, and peek at the next one.
+ if (FAILED(pt.GetElemType(NULL)) || FAILED(pt.PeekElemType(&mt)))
+ return FALSE;
+ }
+
+ // Is it just Object?
+ if (mt == ELEMENT_TYPE_OBJECT)
+ RETURN TRUE;
+
+ // A particular class?
+ if (mt == ELEMENT_TYPE_CLASS)
+ {
+ // Exclude "string".
+ if (pt.IsStringType(m_pModule, GetSigTypeContext()))
+ RETURN FALSE;
+ RETURN TRUE;
+ }
+
+ // A particular valuetype?
+ if (mt == ELEMENT_TYPE_VALUETYPE)
+ {
+ // Include "variant".
+ if (pt.IsClass(m_pModule, g_VariantClassName, GetSigTypeContext()))
+ RETURN TRUE;
+ RETURN FALSE;
+ }
+
+ // An array, a string, or POD.
+ RETURN FALSE;
+ }
+}; // class MetaSigExport : public MetaSig
// ============================================================================
// For each property set and let functions, determine PROPERTYPUT and
diff --git a/src/vm/corhost.cpp b/src/vm/corhost.cpp
index 703e3a3384..1a376f0918 100644
--- a/src/vm/corhost.cpp
+++ b/src/vm/corhost.cpp
@@ -62,10 +62,6 @@ EXTERN_C UINT32 _tls_index;
UINT32 _tls_index = 0;
#endif // FEATURE_PAL
-#if defined(FEATURE_WINDOWSPHONE)
-SVAL_IMPL_INIT(ECustomDumpFlavor, CCLRErrorReportingManager, g_ECustomDumpFlavor, DUMP_FLAVOR_Default);
-#endif
-
#ifndef DACCESS_COMPILE
extern void STDMETHODCALLTYPE EEShutDown(BOOL fIsDllUnloading);
@@ -78,11 +74,6 @@ extern BOOL g_fEEHostedStartup;
ULONG CorRuntimeHostBase::m_Version = 0;
-
-#if defined(FEATURE_WINDOWSPHONE)
-CCLRErrorReportingManager g_CLRErrorReportingManager;
-#endif // defined(FEATURE_WINDOWSPHONE)
-
#endif // !DAC
typedef DPTR(CONNID) PTR_CONNID;
@@ -979,48 +970,6 @@ STARTUP_FLAGS CorHost2::GetStartupFlags()
#ifndef DACCESS_COMPILE
-#ifdef FEATURE_COMINTEROP
-
-// Enumerate currently existing domains.
-HRESULT CorRuntimeHostBase::EnumDomains(HDOMAINENUM *hEnum)
-{
- CONTRACTL
- {
- NOTHROW;
- MODE_PREEMPTIVE;
- WRAPPER(GC_TRIGGERS);
- ENTRY_POINT;
- }
- CONTRACTL_END;
-
- if(hEnum == NULL) return E_POINTER;
-
- // Thread setup happens in BEGIN_EXTERNAL_ENTRYPOINT below.
- // If the runtime has not started, we have nothing to do.
- if (!g_fEEStarted)
- {
- return HOST_E_CLRNOTAVAILABLE;
- }
-
- HRESULT hr = E_OUTOFMEMORY;
- *hEnum = NULL;
- BEGIN_ENTRYPOINT_NOTHROW;
-
- BEGIN_EXTERNAL_ENTRYPOINT(&hr)
-
- AppDomainIterator *pEnum = new (nothrow) AppDomainIterator(FALSE);
- if(pEnum) {
- *hEnum = (HDOMAINENUM) pEnum;
- hr = S_OK;
- }
- END_EXTERNAL_ENTRYPOINT;
- END_ENTRYPOINT_NOTHROW;
-
- return hr;
-}
-
-#endif // FEATURE_COMINTEROP
-
extern "C"
DLLEXPORT
HRESULT GetCLRRuntimeHost(REFIID riid, IUnknown **ppUnk)
@@ -1341,17 +1290,8 @@ HRESULT CorRuntimeHostBase::MapFile(HANDLE hFile, HMODULE* phHandle)
return hr;
}
-///////////////////////////////////////////////////////////////////////////////
-// IDebuggerInfo::IsDebuggerAttached
-
LONG CorHost2::m_RefCount = 0;
-IHostControl *CorHost2::m_HostControl = NULL;
-
-#ifdef _DEBUG
-extern void ValidateHostInterface();
-#endif
-
static Volatile<BOOL> fOneOnly = 0;
///////////////////////////////////////////////////////////////////////////////
@@ -1359,1068 +1299,16 @@ static Volatile<BOOL> fOneOnly = 0;
///////////////////////////////////////////////////////////////////////////////
HRESULT CorHost2::SetHostControl(IHostControl* pHostControl)
{
- CONTRACTL
- {
- NOTHROW;
- GC_NOTRIGGER;
- ENTRY_POINT;
- }
- CONTRACTL_END;
- if (m_Version < 2)
- // CLR is hosted with v1 hosting interface. Some part of v2 hosting API are disabled.
- return HOST_E_INVALIDOPERATION;
-
- if (pHostControl == 0)
- return E_INVALIDARG;
-
- // If Runtime has been started, do not allow setting HostMemoryManager
- if (g_fEEStarted)
- return E_ACCESSDENIED;
-
- HRESULT hr = S_OK;
-
- BEGIN_ENTRYPOINT_NOTHROW;
-
- DWORD dwSwitchCount = 0;
-
- while (FastInterlockExchange((LONG*)&fOneOnly, 1) == 1)
- {
- __SwitchToThread(0, ++dwSwitchCount);
- }
-
-
- if (m_HostControl == NULL)
- {
- m_HostControl = pHostControl;
- m_HostControl->AddRef();
- }
-
- goto ErrExit;
-
-ErrExit:
- fOneOnly = 0;
-
- END_ENTRYPOINT_NOTHROW;
-
- return hr;
-}
-
-class CCLRPolicyManager: public ICLRPolicyManager
-{
-public:
- virtual HRESULT STDMETHODCALLTYPE SetDefaultAction(EClrOperation operation,
- EPolicyAction action)
- {
- LIMITED_METHOD_CONTRACT;
- return E_NOTIMPL;
- }
-
- virtual HRESULT STDMETHODCALLTYPE SetTimeout(EClrOperation operation,
- DWORD dwMilliseconds)
- {
- LIMITED_METHOD_CONTRACT;
- return E_NOTIMPL;
- }
-
- virtual HRESULT STDMETHODCALLTYPE SetActionOnTimeout(EClrOperation operation,
- EPolicyAction action)
- {
- LIMITED_METHOD_CONTRACT;
- return E_NOTIMPL;
- }
-
- virtual HRESULT STDMETHODCALLTYPE SetTimeoutAndAction(EClrOperation operation, DWORD dwMilliseconds,
- EPolicyAction action)
- {
- LIMITED_METHOD_CONTRACT;
- return E_NOTIMPL;
- }
-
- virtual HRESULT STDMETHODCALLTYPE SetActionOnFailure(EClrFailure failure,
- EPolicyAction action)
- {
- // This is enabled for CoreCLR since a host can use this to
- // specify action for handling AV.
- STATIC_CONTRACT_ENTRY_POINT;
- LIMITED_METHOD_CONTRACT;
- HRESULT hr;
- // For CoreCLR, this method just supports FAIL_AccessViolation as a valid
- // failure input arg. The validation of the specified action for the failure
- // will be done in EEPolicy::IsValidActionForFailure.
- if (failure != FAIL_AccessViolation)
- {
- return E_INVALIDARG;
- }
- BEGIN_ENTRYPOINT_NOTHROW;
- hr = GetEEPolicy()->SetActionOnFailure(failure,action);
- END_ENTRYPOINT_NOTHROW;
- return hr;
- }
-
- virtual HRESULT STDMETHODCALLTYPE SetUnhandledExceptionPolicy(EClrUnhandledException policy)
- {
- LIMITED_METHOD_CONTRACT;
- return E_NOTIMPL;
- }
-
- virtual ULONG STDMETHODCALLTYPE AddRef(void)
- {
- LIMITED_METHOD_CONTRACT;
- return 1;
- }
-
- virtual ULONG STDMETHODCALLTYPE Release(void)
- {
- LIMITED_METHOD_CONTRACT;
- return 1;
- }
-
- BEGIN_INTERFACE HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid,
- void **ppvObject)
- {
- LIMITED_METHOD_CONTRACT;
- if (riid != IID_ICLRPolicyManager && riid != IID_IUnknown)
- return (E_NOINTERFACE);
-
- // Ensure that the out going pointer is not null
- if (ppvObject == NULL)
- return E_POINTER;
-
- *ppvObject = this;
- return S_OK;
- }
-};
-
-static CCLRPolicyManager s_PolicyManager;
-
-
-
-void ProcessEventForHost(EClrEvent event, void *data)
-{
-}
-
-// We do not call ProcessEventForHost for stack overflow, since we have limit stack
-// and we should avoid calling GCX_PREEMPT
-void ProcessSOEventForHost(EXCEPTION_POINTERS *pExceptionInfo, BOOL fInSoTolerant)
-{
-}
-
-BOOL IsHostRegisteredForEvent(EClrEvent event)
-{
- WRAPPER_NO_CONTRACT;
- return FALSE;
-}
-
-inline size_t SizeInKBytes(size_t cbSize)
-{
- LIMITED_METHOD_CONTRACT;
- size_t cb = (cbSize % 1024) ? 1 : 0;
- return ((cbSize / 1024) + cb);
-}
-
-SIZE_T Host_SegmentSize = 0;
-SIZE_T Host_MaxGen0Size = 0;
-BOOL Host_fSegmentSizeSet = FALSE;
-BOOL Host_fMaxGen0SizeSet = FALSE;
-
-void UpdateGCSettingFromHost ()
-{
- WRAPPER_NO_CONTRACT;
- _ASSERTE (g_pConfig);
- if (Host_fSegmentSizeSet)
- {
- g_pConfig->SetSegmentSize(Host_SegmentSize);
- }
- if (Host_fMaxGen0SizeSet)
- {
- g_pConfig->SetGCgen0size(Host_MaxGen0Size);
- }
-}
-
-#if defined(FEATURE_WINDOWSPHONE)
-class CCLRGCManager: public ICLRGCManager2
-{
-public:
- virtual HRESULT STDMETHODCALLTYPE Collect(LONG Generation)
- {
- CONTRACTL
- {
- NOTHROW;
- GC_TRIGGERS;
- ENTRY_POINT;
- }
- CONTRACTL_END;
-
- HRESULT hr = S_OK;
-
- if (Generation > (int) GCHeapUtilities::GetGCHeap()->GetMaxGeneration())
- hr = E_INVALIDARG;
-
- if (SUCCEEDED(hr))
- {
- // Set up a Thread object if this is called on a native thread.
- Thread *pThread;
- pThread = GetThread();
- if (pThread == NULL)
- pThread = SetupThreadNoThrow(&hr);
- if (pThread != NULL)
- {
- BEGIN_ENTRYPOINT_NOTHROW_WITH_THREAD(pThread);
- GCX_COOP();
-
- EX_TRY
- {
- STRESS_LOG0(LF_GC, LL_INFO100, "Host triggers GC\n");
- hr = GCHeapUtilities::GetGCHeap()->GarbageCollect(Generation);
- }
- EX_CATCH
- {
- hr = GET_EXCEPTION()->GetHR();
- }
- EX_END_CATCH(SwallowAllExceptions);
-
- END_ENTRYPOINT_NOTHROW_WITH_THREAD;
- }
- }
-
- return (hr);
- }
-
- virtual HRESULT STDMETHODCALLTYPE GetStats(COR_GC_STATS *pStats)
- {
- CONTRACTL
- {
- NOTHROW;
- GC_NOTRIGGER;
- ENTRY_POINT;
- }
- CONTRACTL_END;
-
- return E_NOTIMPL;
- }
- virtual HRESULT STDMETHODCALLTYPE SetGCStartupLimits(
- DWORD SegmentSize,
- DWORD MaxGen0Size)
- {
- CONTRACTL
- {
- NOTHROW;
- GC_NOTRIGGER;
- ENTRY_POINT;
-
- }
- CONTRACTL_END;
-
- HRESULT hr = S_OK;
- BEGIN_ENTRYPOINT_NOTHROW;
-
- // Set default overrides if specified by caller.
- if (SegmentSize != (DWORD) ~0 && SegmentSize > 0)
- {
- hr = _SetGCSegmentSize(SegmentSize);
- }
-
- if (SUCCEEDED(hr) && MaxGen0Size != (DWORD) ~0 && MaxGen0Size > 0)
- {
- hr = _SetGCMaxGen0Size(MaxGen0Size);
- }
-
- END_ENTRYPOINT_NOTHROW;
-
- return (hr);
- }
-
- virtual HRESULT STDMETHODCALLTYPE SetGCStartupLimitsEx(
- SIZE_T SegmentSize,
- SIZE_T MaxGen0Size)
- {
- CONTRACTL
- {
- NOTHROW;
- GC_NOTRIGGER;
- ENTRY_POINT;
-
- }
- CONTRACTL_END;
-
- HRESULT hr = S_OK;
- BEGIN_ENTRYPOINT_NOTHROW;
-
- // Set default overrides if specified by caller.
- if (SegmentSize != (SIZE_T) ~0 && SegmentSize > 0)
- {
- hr = _SetGCSegmentSize(SegmentSize);
- }
-
- if (SUCCEEDED(hr) && MaxGen0Size != (SIZE_T) ~0 && MaxGen0Size > 0)
- {
- hr = _SetGCMaxGen0Size(MaxGen0Size);
- }
-
- END_ENTRYPOINT_NOTHROW;
-
- return (hr);
- }
-
- virtual ULONG STDMETHODCALLTYPE AddRef(void)
- {
- LIMITED_METHOD_CONTRACT;
- return 1;
- }
-
- virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, OUT PVOID *ppUnk)
- {
- LIMITED_METHOD_CONTRACT;
- if (riid != IID_ICLRGCManager && riid != IID_ICLRGCManager2 && riid != IID_IUnknown)
- return (E_NOINTERFACE);
- *ppUnk = this;
- return S_OK;
- }
-
- virtual ULONG STDMETHODCALLTYPE Release(void)
- {
- LIMITED_METHOD_CONTRACT;
- return 1;
- }
-private:
- HRESULT _SetGCSegmentSize(SIZE_T SegmentSize);
- HRESULT _SetGCMaxGen0Size(SIZE_T MaxGen0Size);
-};
-
-
-HRESULT CCLRGCManager::_SetGCSegmentSize(SIZE_T SegmentSize)
-{
- CONTRACTL
- {
- NOTHROW;
- GC_NOTRIGGER;
- }
- CONTRACTL_END;
-
- HRESULT hr = S_OK;
-
- // Sanity check the value, it must be a power of two and big enough.
- if (!GCHeapUtilities::GetGCHeap()->IsValidSegmentSize(SegmentSize))
- {
- hr = E_INVALIDARG;
- }
- else
- {
- Host_SegmentSize = SegmentSize;
- Host_fSegmentSizeSet = TRUE;
- }
-
- return (hr);
-}
-
-HRESULT CCLRGCManager::_SetGCMaxGen0Size(SIZE_T MaxGen0Size)
-{
- CONTRACTL
- {
- NOTHROW;
- GC_NOTRIGGER;
- }
- CONTRACTL_END;
-
- HRESULT hr = S_OK;
-
- // Sanity check the value is at least large enough.
- if (!GCHeapUtilities::GetGCHeap()->IsValidGen0MaxSize(MaxGen0Size))
- {
- hr = E_INVALIDARG;
- }
- else
- {
- Host_MaxGen0Size = MaxGen0Size;
- Host_fMaxGen0SizeSet = TRUE;
- }
-
- return (hr);
+ return E_NOTIMPL;
}
-static CCLRGCManager s_GCManager;
-#endif //FEATURE_WINDOWSPHONE
-
-#ifdef FEATURE_APPDOMAIN_RESOURCE_MONITORING
-class CCLRAppDomainResourceMonitor : public ICLRAppDomainResourceMonitor
-{
-public:
- virtual HRESULT STDMETHODCALLTYPE GetCurrentAllocated(DWORD dwAppDomainId,
- ULONGLONG* pBytesAllocated)
- {
- CONTRACTL
- {
- NOTHROW;
- GC_NOTRIGGER;
- ENTRY_POINT;
- }
- CONTRACTL_END;
-
- HRESULT hr = S_OK;
-
- BEGIN_ENTRYPOINT_NOTHROW;
-
- SystemDomain::LockHolder lh;
-
- AppDomain* pAppDomain = SystemDomain::GetAppDomainFromId((ADID)dwAppDomainId, ADV_CURRENTAD);
- if (pBytesAllocated)
- {
- *pBytesAllocated = pAppDomain->GetAllocBytes();
- }
-
- END_ENTRYPOINT_NOTHROW;
-
- return (hr);
- }
-
- virtual HRESULT STDMETHODCALLTYPE GetCurrentSurvived(DWORD dwAppDomainId,
- ULONGLONG* pAppDomainBytesSurvived,
- ULONGLONG* pTotalBytesSurvived)
- {
- CONTRACTL
- {
- NOTHROW;
- GC_NOTRIGGER;
- ENTRY_POINT;
- }
- CONTRACTL_END;
-
- HRESULT hr = S_OK;
- BEGIN_ENTRYPOINT_NOTHROW;
-
- SystemDomain::LockHolder lh;
-
- AppDomain* pAppDomain = SystemDomain::GetAppDomainFromId((ADID)dwAppDomainId, ADV_CURRENTAD);
- if (pAppDomainBytesSurvived)
- {
- *pAppDomainBytesSurvived = pAppDomain->GetSurvivedBytes();
- }
- if (pTotalBytesSurvived)
- {
- *pTotalBytesSurvived = SystemDomain::GetTotalSurvivedBytes();
- }
-
- END_ENTRYPOINT_NOTHROW;
-
- return (hr);
- }
-
- virtual HRESULT STDMETHODCALLTYPE GetCurrentCpuTime(DWORD dwAppDomainId,
- ULONGLONG* pMilliseconds)
- {
- CONTRACTL
- {
- NOTHROW;
- GC_TRIGGERS;
- ENTRY_POINT;
- }
- CONTRACTL_END;
-
- HRESULT hr = S_OK;
-
- BEGIN_ENTRYPOINT_NOTHROW;
-
- {
- SystemDomain::LockHolder lh;
-
- AppDomain* pAppDomain = SystemDomain::GetAppDomainFromId((ADID)dwAppDomainId, ADV_CURRENTAD);
- if (pMilliseconds)
- {
- *pMilliseconds = pAppDomain->QueryProcessorUsage() / 10000;
- }
- }
-
- END_ENTRYPOINT_NOTHROW;
-
- return hr;
- }
-
- virtual ULONG STDMETHODCALLTYPE AddRef(void)
- {
- LIMITED_METHOD_CONTRACT;
- return 1;
- }
-
- virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, OUT PVOID *ppUnk)
- {
- LIMITED_METHOD_CONTRACT;
- *ppUnk = NULL;
- if (riid == IID_IUnknown)
- *ppUnk = (IUnknown*)this;
- else if (riid == IID_ICLRAppDomainResourceMonitor)
- *ppUnk = (ICLRAppDomainResourceMonitor*)this;
- else
- return E_NOINTERFACE;
- return S_OK;
- }
-
- virtual ULONG STDMETHODCALLTYPE Release(void)
- {
- LIMITED_METHOD_CONTRACT;
- return 1;
- }
-};
-static CCLRAppDomainResourceMonitor s_Arm;
-#endif //FEATURE_APPDOMAIN_RESOURCE_MONITORING
-
-
-BOOL g_CLRPolicyRequested = FALSE;
-
-class CCorCLRControl: public ICLRControl
-{
-public:
- virtual HRESULT STDMETHODCALLTYPE GetCLRManager(REFIID riid, void **ppObject)
- {
- CONTRACTL
- {
- NOTHROW;
- GC_NOTRIGGER;
- }
- CONTRACTL_END;
-
- // Sanity check.
- if (ppObject == NULL)
- return E_INVALIDARG;
-
-#if defined(FEATURE_WINDOWSPHONE)
- if (riid == IID_ICLRErrorReportingManager2)
- {
- *ppObject = &g_CLRErrorReportingManager;
- return S_OK;
- }
- else
-#endif //defined(FEATURE_WINDOWSPHONE)
- if (g_fEEStarted && !m_fFullAccess)
- {
- // If runtime has been started, do not allow user to obtain CLR managers.
- return HOST_E_INVALIDOPERATION;
- }
-
- // CoreCLR supports ICLRPolicyManager since it allows the host
- // to specify the policy for AccessViolation.
- else if (riid == IID_ICLRPolicyManager) {
- *ppObject = &s_PolicyManager;
- FastInterlockExchange((LONG*)&g_CLRPolicyRequested, TRUE);
- return S_OK;
- }
-
-#if defined(FEATURE_WINDOWSPHONE)
- else if ((riid == IID_ICLRGCManager) || (riid == IID_ICLRGCManager2))
- {
- *ppObject = &s_GCManager;
- return S_OK;
- }
-#endif //FEATURE_WINDOWSPHONE
-
-#ifdef FEATURE_APPDOMAIN_RESOURCE_MONITORING
- else if (riid == IID_ICLRAppDomainResourceMonitor)
- {
- EnableARM();
- *ppObject = &s_Arm;
- return S_OK;
- }
-#endif //FEATURE_APPDOMAIN_RESOURCE_MONITORING
- else
- return (E_NOINTERFACE);
- }
-
- virtual HRESULT STDMETHODCALLTYPE SetAppDomainManagerType(
- LPCWSTR pwzAppDomainManagerAssembly,
- LPCWSTR pwzAppDomainManagerType)
- {
-
- // CoreCLR does not support this method
- return E_NOTIMPL;
- }
-
- virtual ULONG STDMETHODCALLTYPE AddRef(void)
- {
- LIMITED_METHOD_CONTRACT;
- return 1;
- }
-
- virtual ULONG STDMETHODCALLTYPE Release(void)
- {
- LIMITED_METHOD_CONTRACT;
- return 1;
- }
-
- BEGIN_INTERFACE HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid,
- void **ppvObject)
- {
- LIMITED_METHOD_CONTRACT;
- if (riid != IID_ICLRControl && riid != IID_IUnknown)
- return (E_NOINTERFACE);
-
- // Ensure that the out going pointer is not null
- if (ppvObject == NULL)
- return E_POINTER;
-
- *ppvObject = this;
- return S_OK;
- }
-
- // This is to avoid having ctor. We have static objects, and it is
- // difficult to support ctor on certain platform.
- void SetAccess(BOOL fFullAccess)
- {
- LIMITED_METHOD_CONTRACT;
- m_fFullAccess = fFullAccess;
- }
-private:
- BOOL m_fFullAccess;
-};
-
-// Before CLR starts, we give out s_CorCLRControl which has full access to all managers.
-// After CLR starts, we give out s_CorCLRControlLimited which allows limited access to managers.
-static CCorCLRControl s_CorCLRControl;
-
-
///////////////////////////////////////////////////////////////////////////////
// ICLRRuntimeHost::GetCLRControl
HRESULT CorHost2::GetCLRControl(ICLRControl** pCLRControl)
{
- LIMITED_METHOD_CONTRACT;
-
- // Ensure that we have a valid pointer
- if (pCLRControl == NULL)
- {
- return E_POINTER;
- }
-
- HRESULT hr = S_OK;
-
- STATIC_CONTRACT_ENTRY_POINT;
- BEGIN_ENTRYPOINT_NOTHROW;
- if (!g_fEEStarted && m_Version >= 2)
- {
- s_CorCLRControl.SetAccess(TRUE);
- *pCLRControl = &s_CorCLRControl;
- }
- else
- {
- // If :
- // 1) request comes for interface other than ICLRControl*, OR
- // 2) runtime has already started, OR
- // 3) version is not 2
- //
- // we will return failure and set the out pointer to NULL
- *pCLRControl = NULL;
- if (g_fEEStarted)
- {
- // Return HOST_E_INVALIDOPERATION as per MSDN if runtime has already started
- hr = HOST_E_INVALIDOPERATION;
- }
- else
- {
- hr = E_NOTIMPL;
- }
- }
- END_ENTRYPOINT_NOTHROW;
-
- return hr;
-}
-
-// static
-EInitializeNewDomainFlags CorHost2::GetAppDomainManagerInitializeNewDomainFlags()
-{
- LIMITED_METHOD_CONTRACT;
- return eInitializeNewDomainFlags_None;
-}
-
-
-#endif // !DAC
-
-
-#ifdef DACCESS_COMPILE
-
-
-#endif //DACCESS_COMPILE
-
-#ifndef DACCESS_COMPILE
-
-
-#if defined(FEATURE_WINDOWSPHONE)
-
-HRESULT CCLRErrorReportingManager::QueryInterface(REFIID riid, void** ppUnk)
-{
- if (!ppUnk)
- return E_POINTER;
-
- CONTRACTL
- {
- NOTHROW;
- GC_NOTRIGGER;
- }
- CONTRACTL_END;
-
- HRESULT hr = S_OK;
-
- if (ppUnk == NULL)
- {
- return E_POINTER;
- }
-
- *ppUnk = 0;
-
- // Deliberately do NOT hand out ICorConfiguration. They must explicitly call
- // GetConfiguration to obtain that interface.
- if (riid == IID_IUnknown)
- {
- *ppUnk = (IUnknown *) this;
- }
- else if (riid == IID_ICLRErrorReportingManager)
- {
- *ppUnk = (ICLRErrorReportingManager *) this;
- }
-#ifdef FEATURE_WINDOWSPHONE
- else if (riid == IID_ICLRErrorReportingManager2)
- {
- *ppUnk = (ICLRErrorReportingManager2 *) this;
- }
-#endif // FEATURE_WINDOWSPHONE
- else
- {
- hr = E_NOINTERFACE;
- }
-
- return hr;
-
-} // HRESULT CCLRErrorReportingManager::QueryInterface()
-
-ULONG CCLRErrorReportingManager::AddRef()
-{
- LIMITED_METHOD_CONTRACT;
- return 1;
-} // HRESULT CCLRErrorReportingManager::AddRef()
-
-ULONG CCLRErrorReportingManager::Release()
-{
- LIMITED_METHOD_CONTRACT;
- return 1;
-} // HRESULT CCLRErrorReportingManager::Release()
-
-// Get Watson bucket parameters for "current" exception (on calling thread).
-HRESULT CCLRErrorReportingManager::GetBucketParametersForCurrentException(
- BucketParameters *pParams)
-{
- CONTRACTL
- {
- WRAPPER(THROWS);
- WRAPPER(GC_TRIGGERS);
- ENTRY_POINT;
- }
- CONTRACTL_END;
-
- HRESULT hr = S_OK;
- BEGIN_ENTRYPOINT_NOTHROW;
-
- // To avoid confusion, clear the buckets.
- memset(pParams, 0, sizeof(BucketParameters));
-
-#ifndef FEATURE_PAL
- // Defer to Watson helper.
- hr = ::GetBucketParametersForCurrentException(pParams);
- #else
- // Watson doesn't exist on non-windows platforms
- hr = E_NOTIMPL;
-#endif // !FEATURE_PAL
-
- END_ENTRYPOINT_NOTHROW;
-
- return hr;
-
-} // HRESULT CCLRErrorReportingManager::GetBucketParametersForCurrentException()
-
-//
-// The BeginCustomDump function configures the custom dump support
-//
-// Parameters -
-// dwFlavor - The flavor of the dump
-// dwNumItems - The number of items in the CustomDumpItem array.
-// Should always be zero today, since no custom items are defined
-// items - Array of CustomDumpItem structs specifying items to be added to the dump.
-// Should always be NULL today, since no custom items are defined.
-// dwReserved - reserved for future use. Must be zero today
-//
-HRESULT CCLRErrorReportingManager::BeginCustomDump( ECustomDumpFlavor dwFlavor,
- DWORD dwNumItems,
- CustomDumpItem items[],
- DWORD dwReserved)
-{
- STATIC_CONTRACT_ENTRY_POINT;
- HRESULT hr = S_OK;
-
- BEGIN_ENTRYPOINT_NOTHROW;
-
- if (dwNumItems != 0 || items != NULL || dwReserved != 0)
- {
- IfFailGo(E_INVALIDARG);
- }
- if (g_ECustomDumpFlavor != DUMP_FLAVOR_Default)
- {
- // BeginCustomDump is called without matching EndCustomDump
- IfFailGo(E_INVALIDARG);
- }
- g_ECustomDumpFlavor = dwFlavor;
-
-ErrExit:
- END_ENTRYPOINT_NOTHROW;
-
- return hr;
-}
-
-//
-// EndCustomDump clears the custom dump configuration
-//
-HRESULT CCLRErrorReportingManager::EndCustomDump()
-{
- STATIC_CONTRACT_ENTRY_POINT;
- // NOT IMPLEMENTED YET
- BEGIN_ENTRYPOINT_NOTHROW;
- g_ECustomDumpFlavor = DUMP_FLAVOR_Default;
- END_ENTRYPOINT_NOTHROW;
-
- return S_OK;
-}
-
-#ifdef FEATURE_WINDOWSPHONE
-HRESULT CopyStringWorker(_Out_ WCHAR** pTarget, WCHAR const* pSource)
-{
- LIMITED_METHOD_CONTRACT;
-
- if (pTarget == NULL || pSource == NULL)
- return E_INVALIDARG;
-
- if (*pTarget)
- delete[] (*pTarget);
-
- // allocate space for the data plus one wchar for NULL
- size_t sourceLen = wcslen(pSource);
- *pTarget = new (nothrow) WCHAR[sourceLen + 1];
-
- if (!(*pTarget))
- return E_OUTOFMEMORY;
-
- errno_t result = wcsncpy_s(*pTarget, sourceLen + 1, pSource, sourceLen);
- _ASSERTE(result == 0);
-
- if (result != 0)
- {
- delete[] (*pTarget);
- *pTarget = NULL;
-
- return E_FAIL;
- }
-
- return S_OK;
-}
-
-CCLRErrorReportingManager::BucketParamsCache::BucketParamsCache(DWORD maxNumParams) : m_pParams(NULL), m_cMaxParams(maxNumParams)
-{
- LIMITED_METHOD_CONTRACT;
-}
-
-CCLRErrorReportingManager::BucketParamsCache::~BucketParamsCache()
-{
- LIMITED_METHOD_CONTRACT;
-
- if (m_pParams)
- {
- for (DWORD i = 0; i < m_cMaxParams; ++i)
- if (m_pParams[i]) delete[] m_pParams[i];
- }
-}
-
-WCHAR const* CCLRErrorReportingManager::BucketParamsCache::GetAt(BucketParameterIndex index)
-{
- LIMITED_METHOD_CONTRACT;
-
- if (index >= InvalidBucketParamIndex)
- {
- _ASSERTE(!"bad bucket parameter index");
- return NULL;
- }
-
- if (!m_pParams)
- return NULL;
-
- return m_pParams[index];
-}
-
-HRESULT CCLRErrorReportingManager::BucketParamsCache::SetAt(BucketParameterIndex index, WCHAR const* val)
-{
- LIMITED_METHOD_CONTRACT;
-
- if (index < 0 || index >= InvalidBucketParamIndex)
- {
- _ASSERTE(!"bad bucket parameter index");
- return E_INVALIDARG;
- }
-
- if (!val)
- return E_INVALIDARG;
-
- if (!m_pParams)
- {
- m_pParams = new (nothrow) WCHAR*[m_cMaxParams];
- if (!m_pParams)
- return E_OUTOFMEMORY;
-
- for (DWORD i = 0; i < m_cMaxParams; ++i)
- m_pParams[i] = NULL;
- }
-
- return CopyStringWorker(&m_pParams[index], val);
-}
-
-HRESULT CCLRErrorReportingManager::CopyToDataCache(_Out_ WCHAR** pTarget, WCHAR const* pSource)
-{
- LIMITED_METHOD_CONTRACT;
-
- return CopyStringWorker(pTarget, pSource);
-}
-
-HRESULT CCLRErrorReportingManager::SetApplicationData(ApplicationDataKey key, WCHAR const* pValue)
-{
- STATIC_CONTRACT_ENTRY_POINT;
-
- BEGIN_ENTRYPOINT_NOTHROW;
-
- if(g_fEEStarted)
- return HOST_E_INVALIDOPERATION;
-
- if (pValue == NULL || wcslen(pValue) > MAX_LONGPATH)
- return E_INVALIDARG;
-
- HRESULT hr = S_OK;
-
- switch (key)
- {
- case ApplicationID:
- hr = CopyToDataCache(&m_pApplicationId, pValue);
- break;
-
- case InstanceID:
- hr = CopyToDataCache(&m_pInstanceId, pValue);
- break;
-
- default:
- hr = E_INVALIDARG;
- }
-
- END_ENTRYPOINT_NOTHROW;
-
- return hr;
-}
-
-HRESULT CCLRErrorReportingManager::SetBucketParametersForUnhandledException(BucketParameters const* pBucketParams, DWORD* pCountParams)
-{
- STATIC_CONTRACT_ENTRY_POINT;
-
- BEGIN_ENTRYPOINT_NOTHROW;
-
- if(g_fEEStarted)
- return HOST_E_INVALIDOPERATION;
-
- if (pBucketParams == NULL || pCountParams == NULL || pBucketParams->fInited != TRUE)
- return E_INVALIDARG;
-
- *pCountParams = 0;
-
- if (!m_pBucketParamsCache)
- {
- m_pBucketParamsCache = new (nothrow) BucketParamsCache(InvalidBucketParamIndex);
- if (!m_pBucketParamsCache)
- return E_OUTOFMEMORY;
- }
-
- HRESULT hr = S_OK;
- bool hasOverride = false;
-
- for (DWORD i = 0; i < InvalidBucketParamIndex; ++i)
- {
- if (pBucketParams->pszParams[i][0] != W('\0'))
- {
- hasOverride = true;
- hr = m_pBucketParamsCache->SetAt(static_cast<BucketParameterIndex>(i), pBucketParams->pszParams[i]);
- if (SUCCEEDED(hr))
- *pCountParams += 1;
- else
- break;
- }
- }
-
- if (!hasOverride)
- return E_INVALIDARG;
-
- END_ENTRYPOINT_NOTHROW;
-
- return hr;
-}
-
-WCHAR const* CCLRErrorReportingManager::GetApplicationData(ApplicationDataKey key)
-{
- LIMITED_METHOD_CONTRACT;
-
- WCHAR* pValue = NULL;
-
- switch (key)
- {
- case ApplicationID:
- pValue = m_pApplicationId;
- break;
-
- case InstanceID:
- pValue = m_pInstanceId;
- break;
-
- default:
- _ASSERTE(!"invalid key specified");
- }
-
- return pValue;
-}
-
-WCHAR const* CCLRErrorReportingManager::GetBucketParamOverride(BucketParameterIndex bucketParamId)
-{
- LIMITED_METHOD_CONTRACT;
-
- if (!m_pBucketParamsCache)
- return NULL;
-
- return m_pBucketParamsCache->GetAt(bucketParamId);
-}
-
-#endif // FEATURE_WINDOWSPHONE
-
-CCLRErrorReportingManager::CCLRErrorReportingManager()
-{
- LIMITED_METHOD_CONTRACT;
-#ifdef FEATURE_WINDOWSPHONE
- m_pApplicationId = NULL;
- m_pInstanceId = NULL;
- m_pBucketParamsCache = NULL;
-#endif
-}
-
-CCLRErrorReportingManager::~CCLRErrorReportingManager()
-{
- LIMITED_METHOD_CONTRACT;
-#ifdef FEATURE_WINDOWSPHONE
- if (m_pApplicationId)
- delete[] m_pApplicationId;
-
- if (m_pInstanceId)
- delete[] m_pInstanceId;
-
- if (m_pBucketParamsCache)
- delete m_pBucketParamsCache;
-#endif
+ return E_NOTIMPL;
}
-#endif // defined(FEATURE_WINDOWSPHONE)
-
void GetProcessMemoryLoad(LPMEMORYSTATUSEX pMSEX)
{
CONTRACTL
diff --git a/src/vm/crossgencompile.cpp b/src/vm/crossgencompile.cpp
index 1380c1fe77..d357bd7622 100644
--- a/src/vm/crossgencompile.cpp
+++ b/src/vm/crossgencompile.cpp
@@ -113,10 +113,6 @@ GVAL_IMPL_INIT(DWORD, g_fHostConfig, 0);
GVAL_IMPL_INIT(GCHeapType, g_heap_type, GC_HEAP_WKS);
-void UpdateGCSettingFromHost()
-{
-}
-
HRESULT GetExceptionHResult(OBJECTREF throwable)
{
return E_FAIL;
diff --git a/src/vm/dbginterface.h b/src/vm/dbginterface.h
index a75974a600..13231c0f5f 100644
--- a/src/vm/dbginterface.h
+++ b/src/vm/dbginterface.h
@@ -343,9 +343,6 @@ public:
virtual HRESULT UpdateSpecialThreadList(DWORD cThreadArrayLength,
DWORD *rgdwThreadIDArray) = 0;
- // Updates the pointer for the debugger services
- virtual void SetIDbgThreadControl(IDebuggerThreadControl *pIDbgThreadControl) = 0;
-
virtual DWORD GetRCThreadId(void) = 0;
virtual HRESULT GetVariablesFromOffset(MethodDesc *pMD,
diff --git a/src/vm/dwbucketmanager.hpp b/src/vm/dwbucketmanager.hpp
index 2e37e1be5e..0095eb6a1c 100644
--- a/src/vm/dwbucketmanager.hpp
+++ b/src/vm/dwbucketmanager.hpp
@@ -458,17 +458,7 @@ void BaseBucketParamsManager::PopulateBucketParameter(BucketParameterIndex param
// verify that we haven't already written data to this param
_ASSERTE(targetParam && targetParam[0] == W('\0'));
-#ifdef FEATURE_WINDOWSPHONE
- WCHAR const* overrideParam = g_CLRErrorReportingManager.GetBucketParamOverride(paramIndex);
- if (overrideParam != NULL)
- {
- CopyStringToBucket(targetParam, maxLength, overrideParam, false);
- }
- else
-#endif // FEATURE_WINDOWSPHONE
- {
- (this->*pFnDataPopulator)(targetParam, maxLength);
- }
+ (this->*pFnDataPopulator)(targetParam, maxLength);
LogParam(targetParam, paramIndex);
}
diff --git a/src/vm/eeconfig.cpp b/src/vm/eeconfig.cpp
index a44f439687..b5da7def9b 100644
--- a/src/vm/eeconfig.cpp
+++ b/src/vm/eeconfig.cpp
@@ -122,8 +122,6 @@ LPUTF8 NarrowWideChar(__inout_z LPWSTR str)
RETURN NULL;
}
-extern void UpdateGCSettingFromHost ();
-
HRESULT EEConfig::Setup()
{
STANDARD_VM_CONTRACT;
@@ -144,8 +142,6 @@ HRESULT EEConfig::Setup()
_ASSERTE(pConfigOld == NULL && "EEConfig::Setup called multiple times!");
- UpdateGCSettingFromHost();
-
return S_OK;
}
diff --git a/src/vm/eeconfig.h b/src/vm/eeconfig.h
index a63204fe23..dc6725fb44 100644
--- a/src/vm/eeconfig.h
+++ b/src/vm/eeconfig.h
@@ -1141,8 +1141,6 @@ public:
#endif
-extern BOOL g_CLRPolicyRequested;
-
// NGENImagesAllowed is the safe way to determine if NGEN Images are allowed to be loaded. (Defined as
// a macro instead of an inlined function to avoid compilation errors due to dependent
// definitions not being available to this header.)
diff --git a/src/vm/eepolicy.cpp b/src/vm/eepolicy.cpp
index ff61677520..bba511a275 100644
--- a/src/vm/eepolicy.cpp
+++ b/src/vm/eepolicy.cpp
@@ -455,9 +455,7 @@ void SafeExitProcess(UINT exitCode, BOOL fAbort = FALSE, ShutdownCompleteAction
GCX_PREEMP_NO_DTOR();
FastInterlockExchange((LONG*)&g_fForbidEnterEE, TRUE);
-
- ProcessEventForHost(Event_ClrDisabled, NULL);
-
+
// Note that for free and retail builds StressLog must also be enabled
if (g_pConfig && g_pConfig->StressLog())
{
@@ -580,7 +578,6 @@ void DisableRuntime(ShutdownCompleteAction sca)
GCX_PREEMP_NO_DTOR();
- ProcessEventForHost(Event_ClrDisabled, NULL);
ClrFlsClearThreadType(ThreadType_Shutdown);
if (g_pDebugInterface != NULL)
@@ -757,12 +754,7 @@ void EEPolicy::HandleStackOverflow(StackOverflowDetector detector, void * pLimit
if (pThread == NULL)
{
- //_ASSERTE (detector != SOD_ManagedFrameHandler);
- // ProcessSOEventForHost(NULL, FALSE);
-
// For security reason, it is not safe to continue execution if stack overflow happens
- // unless a host tells us to do something different.
- // EEPolicy::HandleFatalStackOverflow(NULL);
return;
}
@@ -771,8 +763,6 @@ void EEPolicy::HandleStackOverflow(StackOverflowDetector detector, void * pLimit
_ASSERTE(exceptionInfo.ExceptionRecord);
- ProcessSOEventForHost(&exceptionInfo, false /* fInSoTolerant */);
-
EEPolicy::HandleFatalStackOverflow(&exceptionInfo);
}
diff --git a/src/vm/excep.cpp b/src/vm/excep.cpp
index f0b282b3d8..8f5cc089c3 100644
--- a/src/vm/excep.cpp
+++ b/src/vm/excep.cpp
@@ -2755,13 +2755,6 @@ VOID DECLSPEC_NORETURN RaiseTheException(OBJECTREF throwable, BOOL rethrow
EEPOLICY_HANDLE_FATAL_ERROR(COR_E_EXECUTIONENGINE);
}
- if (g_CLRPolicyRequested &&
- throwable->GetMethodTable() == g_pOutOfMemoryExceptionClass)
- {
- // We depends on UNINSTALL_UNWIND_AND_CONTINUE_HANDLER to handle out of memory escalation.
- // We should throw c++ exception instead.
- ThrowOutOfMemory();
- }
_ASSERTE(throwable != CLRException::GetPreallocatedStackOverflowException());
#ifdef FEATURE_CORRUPTING_EXCEPTIONS
@@ -3007,13 +3000,6 @@ static VOID DECLSPEC_NORETURN RealCOMPlusThrowWorker(OBJECTREF throwable, BOOL r
// Unfortunately, COMPlusFrameHandler installed here, will try to create managed exception object.
// We may hit a recursion.
- if (g_CLRPolicyRequested &&
- throwable->GetMethodTable() == g_pOutOfMemoryExceptionClass)
- {
- // We depends on UNINSTALL_UNWIND_AND_CONTINUE_HANDLER to handle out of memory escalation.
- // We should throw c++ exception instead.
- ThrowOutOfMemory();
- }
_ASSERTE(throwable != CLRException::GetPreallocatedStackOverflowException());
// TODO: Do we need to install COMPlusFrameHandler here?
@@ -8287,19 +8273,6 @@ VOID DECLSPEC_NORETURN UnwindAndContinueRethrowHelperAfterCatch(Frame* pEntryFra
Exception::Delete(pException);
- if (orThrowable != NULL && g_CLRPolicyRequested)
- {
- if (orThrowable->GetMethodTable() == g_pOutOfMemoryExceptionClass)
- {
- EEPolicy::HandleOutOfMemory();
- }
- else if (orThrowable->GetMethodTable() == g_pStackOverflowExceptionClass)
- {
- /* The parameters of the function do not matter here */
- EEPolicy::HandleStackOverflow(SOD_UnmanagedFrameHandler, NULL);
- }
- }
-
RaiseTheExceptionInternalOnly(orThrowable, FALSE);
}
diff --git a/src/vm/hosting.cpp b/src/vm/hosting.cpp
index 720a691478..5b447221bd 100644
--- a/src/vm/hosting.cpp
+++ b/src/vm/hosting.cpp
@@ -10,189 +10,12 @@
#include "hosting.h"
#include "mscoree.h"
-#include "mscoreepriv.h"
#include "corhost.h"
#include "threads.h"
#define countof(x) (sizeof(x) / sizeof(x[0]))
-//Copied from winbase.h
-#ifndef STARTF_TITLEISAPPID
-#define STARTF_TITLEISAPPID 0x00001000
-#endif
-#ifndef STARTF_PREVENTPINNING
-#define STARTF_PREVENTPINNING 0x00002000
-#endif
-
-//Flags encoded in the first parameter of CorLaunchApplication.
-#define MASK_NOTPINNABLE 0x80000000
-#define MASK_HOSTTYPE 0x00000003
-#define MASK_DONT_SHOW_INSTALL_DIALOG 0x00000100
-
-#ifdef _DEBUG
-// This function adds a static annotation read by SCAN to indicate HOST_CALLS. Its
-// purpose is to be called from the BEGIN_SO_TOLERANT_CODE_CALLING_HOST macro, to
-// effectively mark all functions that use BEGIN_SO_TOLERANT_CODE_CALLING_HOST as being
-// HOST_CALLS. If you hit a SCAN violation that references AddHostCallsStaticMarker, then
-// you have a function marked as HOST_NOCALLS that eventually calls into a function that
-// uses BEGIN_SO_TOLERANT_CODE_CALLING_HOST.
-DEBUG_NOINLINE void AddHostCallsStaticMarker()
-{
- STATIC_CONTRACT_NOTHROW;
- STATIC_CONTRACT_CANNOT_TAKE_LOCK;
- STATIC_CONTRACT_GC_NOTRIGGER;
- STATIC_CONTRACT_HOST_CALLS;
-
- METHOD_CANNOT_BE_FOLDED_DEBUG;
-}
-#endif //_DEBUG
-
-//
-// memory management functions
-//
-
-// global debug only tracking utilities
-#ifdef _DEBUG
-
-static const LONG MaxGlobalAllocCount = 8;
-
-class GlobalAllocStore {
-public:
- static void AddAlloc (LPVOID p)
- {
- LIMITED_METHOD_CONTRACT;
-
- if (!p) {
- return;
- }
- if (m_Disabled) {
- return;
- }
-
- //InterlockedIncrement (&numMemWriter);
- //if (CheckMemFree) {
- // goto Return;
- //}
-
- //m_Count is number of allocation we've ever tried, it's OK to be bigger than
- //size of m_Alloc[]
- InterlockedIncrement (&m_Count);
-
- //this is by no means an accurate record of heap allocation.
- //the algorithm used here can't guarantee an allocation is saved in
- //m_Alloc[] even there's enough free space. However this is only used
- //for debugging purpose and most importantly, m_Count is accurate.
- for (size_t n = 0; n < countof(m_Alloc); n ++) {
- if (m_Alloc[n] == 0) {
- if (InterlockedCompareExchangeT(&m_Alloc[n],p,0) == 0) {
- return;
- }
- }
- }
-
- //InterlockedDecrement (&numMemWriter);
- }
-
- //this is called in non-host case where we don't care the free after
- //alloc store is disabled
- static BOOL RemoveAlloc (LPVOID p)
- {
- LIMITED_METHOD_CONTRACT;
-
- if (m_Disabled)
- {
- return TRUE;
- }
- //decrement the counter even we might not find the allocation
- //in m_Alloc. Because it's possible for an allocation not to be saved
- //in the array
- InterlockedDecrement (&m_Count);
- // Binary search
- for (size_t n = 0; n < countof(m_Alloc); n ++) {
- if (m_Alloc[n] == p) {
- m_Alloc[n] = 0;
- return TRUE;
- }
- }
- return FALSE;
- }
-
- //this is called in host case where if the store is disabled, we want to
- //guarantee we don't try to free anything the host doesn't know about
- static void ValidateFree(LPVOID p)
- {
- LIMITED_METHOD_CONTRACT;
-
- if (p == 0) {
- return;
- }
- if (m_Disabled) {
- for (size_t n = 0; n < countof(m_Alloc); n ++) {
- //there could be miss, because an allocation might not be saved
- //in the array
- if (m_Alloc[n] == p) {
- _ASSERTE (!"Free a memory that host interface does not know");
- return;
- }
- }
- }
- }
-
- static void Validate()
- {
- LIMITED_METHOD_CONTRACT;
-
- if (m_Count > MaxGlobalAllocCount) {
- _ASSERTE (!"Using too many memory allocator before Host Interface is set up");
- }
-
- //while (numMemWriter != 0) {
- // Sleep(5);
- //}
- //qsort (GlobalMemAddr, (MemAllocCount>MaxAllocCount)?MaxAllocCount:MemAllocCount, sizeof(LPVOID), MemAddrCompare);
- }
-
- static void Disable ()
- {
- LIMITED_METHOD_CONTRACT;
- if (!m_Disabled)
- {
- // Let all threads know
- InterlockedIncrement((LONG*)&m_Disabled);
- }
- }
-
-private:
- static BOOL m_Disabled;
- static LPVOID m_Alloc[MaxGlobalAllocCount];
- //m_Count is number of allocation we tried, it's legal to be bigger than
- //size of m_Alloc[]
- static LONG m_Count;
- // static LONG numMemWriter = 0;
-};
-
-// used from corhost.cpp
-void ValidateHostInterface()
-{
- WRAPPER_NO_CONTRACT;
-
- GlobalAllocStore::Validate();
- GlobalAllocStore::Disable();
-}
-
-void DisableGlobalAllocStore ()
-{
- WRAPPER_NO_CONTRACT;
- GlobalAllocStore::Disable();
-}
-LPVOID GlobalAllocStore::m_Alloc[MaxGlobalAllocCount];
-LONG GlobalAllocStore::m_Count = 0;
-BOOL GlobalAllocStore::m_Disabled = FALSE;
-
-#endif
-
-
HANDLE g_ExecutableHeapHandle = NULL;
@@ -255,10 +78,6 @@ LPVOID EEVirtualAlloc(LPVOID lpAddress, SIZE_T dwSize, DWORD flAllocationType, D
p = ::VirtualAlloc (lpAddress, dwSize, flAllocationType, flProtect);
}
-#ifdef _DEBUG
- GlobalAllocStore::AddAlloc (p);
-#endif
-
if(p == NULL){
STRESS_LOG_OOM_STACK(dwSize);
}
@@ -278,17 +97,7 @@ BOOL EEVirtualFree(LPVOID lpAddress, SIZE_T dwSize, DWORD dwFreeType) {
}
CONTRACTL_END;
- BOOL retVal = FALSE;
-
- {
-#ifdef _DEBUG
- GlobalAllocStore::RemoveAlloc (lpAddress);
-#endif
-
- retVal = (BOOL)(BYTE)::VirtualFree (lpAddress, dwSize, dwFreeType);
- }
-
- return retVal;
+ return (BOOL)(BYTE)::VirtualFree (lpAddress, dwSize, dwFreeType);
}
#define VirtualFree(lpAddress, dwSize, dwFreeType) Dont_Use_VirtualFree(lpAddress, dwSize, dwFreeType)
@@ -408,7 +217,6 @@ LPVOID EEHeapAlloc(HANDLE hHeap, DWORD dwFlags, SIZE_T dwBytes)
*((HANDLE*)p) = hHeap;
p = (BYTE*)p + OS_HEAP_ALIGN;
}
- GlobalAllocStore::AddAlloc (p);
#else
p = ::HeapAlloc (hHeap, dwFlags, dwBytes);
#endif
@@ -455,8 +263,6 @@ BOOL EEHeapFree(HANDLE hHeap, DWORD dwFlags, LPVOID lpMem)
{
#ifdef _DEBUG
- GlobalAllocStore::RemoveAlloc (lpMem);
-
if (lpMem != NULL)
{
// Check the heap handle to detect heap contamination
diff --git a/src/vm/jithelpers.cpp b/src/vm/jithelpers.cpp
index 0144d960d9..04de717cce 100644
--- a/src/vm/jithelpers.cpp
+++ b/src/vm/jithelpers.cpp
@@ -4828,11 +4828,6 @@ HCIMPL1(void, IL_Throw, Object* obj)
}
else
{ // We know that the object derives from System.Exception
- if (g_CLRPolicyRequested &&
- oref->GetMethodTable() == g_pOutOfMemoryExceptionClass)
- {
- EEPolicy::HandleOutOfMemory();
- }
// If the flag indicating ForeignExceptionRaise has been set,
// then do not clear the "_stackTrace" field of the exception object.
@@ -4882,12 +4877,6 @@ HCIMPL0(void, IL_Rethrow)
OBJECTREF throwable = GetThread()->GetThrowable();
if (throwable != NULL)
{
- if (g_CLRPolicyRequested &&
- throwable->GetMethodTable() == g_pOutOfMemoryExceptionClass)
- {
- EEPolicy::HandleOutOfMemory();
- }
-
RaiseTheExceptionInternalOnly(throwable, TRUE);
}
else
diff --git a/src/vm/stdinterfaces.cpp b/src/vm/stdinterfaces.cpp
index 285f65f8e9..1a9d0e2db1 100644
--- a/src/vm/stdinterfaces.cpp
+++ b/src/vm/stdinterfaces.cpp
@@ -26,7 +26,6 @@
#include "field.h"
#include "threads.h"
#include "interoputil.h"
-#include "tlbexport.h"
#include "comdelegate.h"
#include "olevariant.h"
#include "eeconfig.h"
diff --git a/src/vm/stdinterfaces.h b/src/vm/stdinterfaces.h
index aa79d72eca..3ac0d5e3f2 100644
--- a/src/vm/stdinterfaces.h
+++ b/src/vm/stdinterfaces.h
@@ -48,7 +48,6 @@ public:
class Assembly;
class Module;
class MethodTable;
-struct ITypeLibExporterNotifySink;
typedef HRESULT (__stdcall* PCOMFN)(void);
@@ -62,16 +61,6 @@ typedef HRESULT (__stdcall* PCOMFN)(void);
extern BYTE g_UnmarshalSecret[sizeof(GUID)];
extern bool g_fInitedUnmarshalSecret;
-struct ExportTypeLibFromLoadedAssembly_Args
-{
- Assembly* pAssembly;
- LPCWSTR szTlb;
- ITypeLib** ppTlb;
- ITypeLibExporterNotifySink* pINotify;
- int flags;
- HRESULT hr;
-};
-
// make sure to keep the following enum and the g_stdVtables array in sync
enum Enum_StdInterfaces
{
diff --git a/src/vm/stdinterfaces_wrapper.cpp b/src/vm/stdinterfaces_wrapper.cpp
index cf0b1e6b74..429fef99ee 100644
--- a/src/vm/stdinterfaces_wrapper.cpp
+++ b/src/vm/stdinterfaces_wrapper.cpp
@@ -25,7 +25,6 @@
#include "field.h"
#include "threads.h"
#include "interoputil.h"
-#include "tlbexport.h"
#include "comdelegate.h"
#include "olevariant.h"
#include "eeconfig.h"
diff --git a/src/vm/tlbexport.h b/src/vm/tlbexport.h
deleted file mode 100644
index 32db10b7aa..0000000000
--- a/src/vm/tlbexport.h
+++ /dev/null
@@ -1,484 +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.
-//===========================================================================
-// File: TlbExport.h
-//
-
-//
-// Notes: Create a TypeLib from COM+ metadata.
-//---------------------------------------------------------------------------
-
-
-#ifndef FEATURE_COMINTEROP
-#error FEATURE_COMINTEROP is required for this file
-#endif // FEATURE_COMINTEROP
-
-class ITypeCreateTypeLib2;
-struct ICreateTypeInfo2;
-struct ITypeInfo;
-struct ITypeLibExporterNotifySink;
-
-class CDescPool;
-struct ComMTMethodProps;
-class ComMTMemberInfoMap;
-
-static LPCSTR szVariantClassFullQual = g_VariantClassName;
-
-//*************************************************************************
-// Helper functions.
-//*************************************************************************
-HRESULT Utf2Quick(
- LPCUTF8 pStr, // The string to convert.
- CQuickArray<WCHAR> &rStr, // The QuickArray<WCHAR> to convert it into.
- int iCurLen = 0); // Inital characters in the array to leave (default 0).
-
-//*****************************************************************************
-// Signature utilities.
-//*****************************************************************************
-class MetaSigExport : public MetaSig
-{
-public:
- MetaSigExport(MethodDesc *pMD) :
- MetaSig(pMD)
- {
- WRAPPER_NO_CONTRACT;
- }
-
- BOOL IsVbRefType()
- {
- CONTRACT (BOOL)
- {
- NOTHROW;
- GC_NOTRIGGER;
- MODE_ANY;
- }
- CONTRACT_END;
-
- // Get the arg, and skip decorations.
- SigPointer pt = GetArgProps();
- CorElementType mt;
- if (FAILED(pt.PeekElemType(&mt)))
- return FALSE;
-
- while (mt == ELEMENT_TYPE_BYREF || mt == ELEMENT_TYPE_PTR)
- {
- // Eat the one just examined, and peek at the next one.
- if (FAILED(pt.GetElemType(NULL)) || FAILED(pt.PeekElemType(&mt)))
- return FALSE;
- }
-
- // Is it just Object?
- if (mt == ELEMENT_TYPE_OBJECT)
- RETURN TRUE;
-
- // A particular class?
- if (mt == ELEMENT_TYPE_CLASS)
- {
- // Exclude "string".
- if (pt.IsStringType(m_pModule, GetSigTypeContext()))
- RETURN FALSE;
- RETURN TRUE;
- }
-
- // A particular valuetype?
- if (mt == ELEMENT_TYPE_VALUETYPE)
- {
- // Include "variant".
- if (pt.IsClass(m_pModule, szVariantClassFullQual, GetSigTypeContext()))
- RETURN TRUE;
- RETURN FALSE;
- }
-
- // An array, a string, or POD.
- RETURN FALSE;
- }
-}; // class MetaSigExport : public MetaSig
-
-
-//*************************************************************************
-// Class to convert COM+ metadata to a TypeLib.
-//*************************************************************************
-class TypeLibExporter
-{
-private:
- class CExportedTypesInfo
- {
- public:
- MethodTable* pClass; // The class being exported.
- ICreateTypeInfo2* pCTI; // The ICreateTypeInfo2 for the EE class.
- ICreateTypeInfo2* pCTIClassItf; // The ICreateTypeInfo2 for the IClassX.
- TYPEKIND tkind; // Typekind of the exported class.
- bool bAutoProxy; // If true, oleaut32 is the interface's proxy.
- };
-
- class CExportedTypesHash : public CClosedHashEx<CExportedTypesInfo, CExportedTypesHash>
- {
- protected:
- friend class CSortByToken;
- friend class CSortByName;
-
- class CSortByToken : public CQuickSort<CExportedTypesInfo*>
- {
- public:
- CSortByToken(CExportedTypesInfo **pBase, int iCount) :
- CQuickSort<CExportedTypesInfo*>(pBase, iCount)
- {
- WRAPPER_NO_CONTRACT;
- }
- virtual int Compare(CExportedTypesInfo **ps1, CExportedTypesInfo **ps2);
- };
-
- class CSortByName : public CQuickSort<CExportedTypesInfo*>
- {
- public:
- CSortByName(CExportedTypesInfo **pBase, int iCount) :
- CQuickSort<CExportedTypesInfo*>(pBase, iCount)
- {
- WRAPPER_NO_CONTRACT;
- }
- virtual int Compare(CExportedTypesInfo **ps1, CExportedTypesInfo **ps2);
- };
-
- public:
- typedef CClosedHashEx<CExportedTypesInfo, CExportedTypesHash> Base;
- typedef CExportedTypesInfo T;
-
- CExportedTypesHash() :
- Base(1009),
- m_iCount(0),
- m_Array(NULL)
- {
- WRAPPER_NO_CONTRACT;
- }
-
- ~CExportedTypesHash()
- {
- CONTRACTL
- {
- NOTHROW;
- GC_NOTRIGGER;
- MODE_ANY;
- }
- CONTRACTL_END;
- Clear();
- delete[] m_Array;
- }
-
- virtual void Clear();
-
- unsigned int Hash(const T *pData);
- unsigned int Compare(const T *p1, T *p2);
- ELEMENTSTATUS Status(T *p);
- void SetStatus(T *p, ELEMENTSTATUS s);
- void* GetKey(T *p);
-
- //@todo: move to CClosedHashEx
- T* GetFirst()
- {
- WRAPPER_NO_CONTRACT;
- return (T*)CClosedHashBase::GetFirst();
- }
- T* GetNext(T*prev)
- {
- WRAPPER_NO_CONTRACT;
- return (T*)CClosedHashBase::GetNext((BYTE*)prev);
- }
-
- void InitArray();
- void UpdateArray();
-
- T* operator[](ULONG ix)
- {
- CONTRACT (T*)
- {
- NOTHROW;
- GC_NOTRIGGER;
- MODE_ANY;
- PRECONDITION(ix < m_iCount);
- POSTCONDITION(CheckPointer(RETVAL));
- }
- CONTRACT_END;
-
- RETURN m_Array[ix];
- }
- int Count()
- {
- LIMITED_METHOD_CONTRACT;
- return m_iCount;
- }
-
- void SortByName();
- void SortByToken();
-
- protected:
- CExportedTypesInfo** m_Array;
- ULONG m_iCount;
- };
-
-protected:
- struct CErrorContext;
-
- class CHrefOfTIHashKey
- {
- public:
- ITypeInfo* pITI;
- HREFTYPE href;
- };
-
- class CHrefOfTIHash : public CClosedHash<class CHrefOfTIHashKey>
- {
- public:
- typedef CHrefOfTIHashKey T;
-
- CHrefOfTIHash() :
- CClosedHash<class CHrefOfTIHashKey>(101)
- {
- WRAPPER_NO_CONTRACT;
- }
- ~CHrefOfTIHash()
- {
- CONTRACTL { NOTHROW; } CONTRACTL_END;
- Clear();
- }
-
- virtual void Clear();
-
- unsigned int Hash(const T *pData);
- unsigned int Hash(const void *pData)
- {
- WRAPPER_NO_CONTRACT;
- return Hash((const T*)pData);
- }
-
- unsigned int Compare(const T *p1, T *p2);
- unsigned int Compare(const void *p1, BYTE *p2)
- {
- WRAPPER_NO_CONTRACT;
- return Compare((const T*)p1, (T*)p2);
- }
-
- ELEMENTSTATUS Status(T *p);
- ELEMENTSTATUS Status(BYTE *p)
- {
- WRAPPER_NO_CONTRACT;
- return Status((T*)p);
- }
-
- void SetStatus(T *p, ELEMENTSTATUS s);
- void SetStatus(BYTE *p, ELEMENTSTATUS s)
- {
- WRAPPER_NO_CONTRACT;
- SetStatus((T*)p, s);
- }
-
- void *GetKey(T *p);
- void* GetKey(BYTE *p)
- {
- WRAPPER_NO_CONTRACT;
- return GetKey((T*)p);
- }
- };
-
- class CHrefOfClassHashKey
- {
- public:
- MethodTable* pClass;
- HREFTYPE href;
- };
-
- class CHrefOfClassHash : public CClosedHash<class CHrefOfClassHashKey>
- {
- public:
- typedef CHrefOfClassHashKey T;
-
- CHrefOfClassHash() :
- CClosedHash<class CHrefOfClassHashKey>(101)
- {
- WRAPPER_NO_CONTRACT;
- }
- ~CHrefOfClassHash()
- {
- WRAPPER_NO_CONTRACT;
- Clear();
- }
-
- virtual void Clear();
-
- unsigned int Hash(const T *pData);
- unsigned int Hash(const void *pData)
- {
- WRAPPER_NO_CONTRACT;
- return Hash((const T*)pData);
- }
-
-
- unsigned int Compare(const T *p1, T *p2);
- unsigned int Compare(const void *p1, BYTE *p2)
- {
- WRAPPER_NO_CONTRACT;
- return Compare((const T*)p1, (T*)p2);
- }
-
-
- ELEMENTSTATUS Status(T *p);
- ELEMENTSTATUS Status(BYTE *p)
- {
- WRAPPER_NO_CONTRACT;
- return Status((T*)p);
- }
-
-
- void SetStatus(T *p, ELEMENTSTATUS s);
- void SetStatus(BYTE *p, ELEMENTSTATUS s)
- {
- WRAPPER_NO_CONTRACT;
- SetStatus((T*)p, s);
- }
-
-
- void *GetKey(T *p);
- void* GetKey(BYTE *p)
- {
- WRAPPER_NO_CONTRACT;
- return GetKey((T*)p);
- }
- };
-
- struct CErrorContext
- {
- CErrorContext() :
- m_prev(0),
- m_szAssembly(0),
- m_tkType(mdTypeDefNil),
- m_pScope(0),
- m_szMember(0),
- m_szParam(0),
- m_ixParam(-1)
- {
- LIMITED_METHOD_CONTRACT;
- }
-
- // The following variables hold context info for error reporting.
- CErrorContext* m_prev; // A previous context.
- LPCUTF8 m_szAssembly; // Current assembly name.
- mdToken m_tkType; // Current type's metadata token.
- IMDInternalImport *m_pScope; // Current type's scope.
- LPCUTF8 m_szMember; // Current member's name.
- LPCUTF8 m_szParam; // Current param's name.
- int m_ixParam; // Current param index.
- };
-
-public:
- TypeLibExporter();
- ~TypeLibExporter();
-
- void Convert(Assembly *pAssembly, LPCWSTR szTlbName, ITypeLibExporterNotifySink *pNotify=0, int flags=0);
- void LayOut();
- HRESULT GetTypeLib(REFGUID iid, IUnknown **ppTlb);
- void ReleaseResources();
-
-protected:
- void PreLoadNames();
-
- void UpdateBitness(Assembly* pAssembly);
- HRESULT CheckBitness(Assembly* pAssembly);
-
- // TypeLib emit functions.
- HRESULT TokenToHref(ICreateTypeInfo2 *pTI, MethodTable *pClass, mdToken tk, BOOL bWarnOnUsingIUnknown, HREFTYPE *pHref);
- void GetWellKnownInterface(MethodTable *pClass, ITypeInfo **ppTI);
- HRESULT EEClassToHref(ICreateTypeInfo2 *pTI, MethodTable *pClass, BOOL bWarnOnUsingIUnknown, HREFTYPE *pHref);
- void StdOleTypeToHRef(ICreateTypeInfo2 *pCTI, REFGUID rGuid, HREFTYPE *pHref);
- void ExportReferencedAssembly(Assembly *pAssembly);
-
- // Metadata import functions.
- void AddModuleTypes(Module *pModule);
- void AddAssemblyTypes(Assembly *pAssembly);
-
- void ConvertAllTypeDefs();
- HRESULT ConvertOneTypeDef(MethodTable *pClass);
-
- HRESULT GetTypeLibImportClassName(MethodTable *pClass, SString& pszName);
-
- void CreateITypeInfo(CExportedTypesInfo *pData, bool bNamespace=false, bool bResolveDup=true);
- void CreateIClassXITypeInfo(CExportedTypesInfo *pData, bool bNamespace=false, bool bResolveDup=true);
- void ConvertImplTypes(CExportedTypesInfo *pData);
- void ConvertDetails(CExportedTypesInfo *pData);
-
- void ConvertInterfaceImplTypes(ICreateTypeInfo2 *pICTI, MethodTable *pClass);
- void ConvertInterfaceDetails(ICreateTypeInfo2 *pICTI, MethodTable *pClass, int bAutoProxy);
- void ConvertRecord(CExportedTypesInfo *pData);
- void ConvertRecordBaseClass(CExportedTypesInfo *pData, MethodTable *pSubClass, ULONG &ixVar);
- void ConvertEnum(ICreateTypeInfo2 *pICTI, MethodTable *pClass);
- void ConvertClassImplTypes(ICreateTypeInfo2 *pICTI, ICreateTypeInfo2 *pIDefault, MethodTable *pClass);
- void ConvertClassDetails(ICreateTypeInfo2 *pICTI, ICreateTypeInfo2 *pIDefault, MethodTable *pClass, int bAutoProxy);
-
- BOOL HasDefaultCtor(MethodTable *pMT);
-
- void ConvertIClassX(ICreateTypeInfo2 *pICTI, MethodTable *pClass, int bAutoProxy);
- BOOL ConvertMethod(ICreateTypeInfo2 *pTI, ComMTMethodProps *pProps, ULONG iMD, ULONG ulIface);
- BOOL ConvertFieldAsMethod(ICreateTypeInfo2 *pTI, ComMTMethodProps *pProps, ULONG iMD);
- BOOL ConvertVariable(ICreateTypeInfo2 *pTI, MethodTable *pClass, mdFieldDef md, SString& sName, ULONG iMD);
- BOOL ConvertEnumMember(ICreateTypeInfo2 *pTI, MethodTable *pClass, mdFieldDef md, SString& sName, ULONG iMD);
-
- // Error/status functions.
- void InternalThrowHRWithContext(HRESULT hr, ...);
- void FormatErrorContextString(CErrorContext *pContext, SString *pOut);
- void FormatErrorContextString(SString *pOut);
- void ReportError(HRESULT hr);
- void ReportEvent(int ev, int hr, ...);
- void ReportWarning(HRESULT hrReturn, HRESULT hrRpt, ...);
- void PostClassLoadError(LPCUTF8 pszName, SString& message);
-
- // Utility functions.
- void ClassHasIClassX(MethodTable *pClass, CorClassIfaceAttr *pRslt);
- MethodTable * LoadClass(Module *pModule, mdToken tk);
- TypeHandle LoadClass(Module *pModule, LPCUTF8 pszName);
- HRESULT CorSigToTypeDesc(ICreateTypeInfo2 *pTI, MethodTable *pClass, PCCOR_SIGNATURE pbSig, PCCOR_SIGNATURE pbNativeSig, ULONG cbNativeSig,
- ULONG *cbElem, TYPEDESC *ptdesc, CDescPool *ppool, BOOL bMethodSig, BOOL *pbByRef=0);
- BOOL IsVbRefType(PCCOR_SIGNATURE pbSig, IMDInternalImport *pInternalImport);
-
- BOOL IsExportingAs64Bit();
-
- void ArrayToTypeDesc(ICreateTypeInfo2 *pCTI, CDescPool *ppool, ArrayMarshalInfo *pArrayMarshalInfo, TYPEDESC *pElementTypeDesc);
-
- VARTYPE GetVtForIntPtr();
- VARTYPE GetVtForUIntPtr();
-
- //BOOL ValidateSafeArrayElemVT(VARTYPE vt);
-
- BOOL GetDescriptionString(MethodTable *pClass, mdToken tk, BSTR &bstrDescr);
- BOOL GetStringCustomAttribute(IMDInternalImport *pImport, LPCSTR szName, mdToken tk, BSTR &bstrDescr);
-
- BOOL GetAutomationProxyAttribute(IMDInternalImport *pImport, mdToken tk, int *bValue);
-
- TYPEKIND TKindFromClass(MethodTable *pClass);
-
-protected:
- void GetRefTypeInfo(ICreateTypeInfo2 *pContainer, ITypeInfo *pReferenced, HREFTYPE *pHref);
-
- CHrefOfTIHash m_HrefHash; // Hashed table of HREFTYPEs of ITypeInfos
- CHrefOfClassHash m_HrefOfClassHash; // Hashed table of HREFTYPEs of ITypeInfos
- CErrorContext m_ErrorContext;
-
-private:
- ClassLoader* m_pLoader; // Domain where the Module being converted was loaded
- ITypeInfo* m_pIUnknown; // TypeInfo for IUnknown.
- HREFTYPE m_hIUnknown; // href for IUnknown.
- ITypeInfo* m_pIDispatch; // TypeInfo for IDispatch.
- ITypeInfo* m_pGuid; // TypeInfo for GUID.
-
- ITypeLibExporterNotifySink* m_pNotify; // Notification callback.
-
- ICreateTypeLib2* m_pICreateTLB; // The created typelib.
-
- int m_flags; // Conversion flags.
- int m_bAutomationProxy; // Should interfaces be marked such that oleaut32 is the proxy?
- int m_bWarnedOfNonPublic;
-
- CExportedTypesHash m_Exports;
- CExportedTypesHash m_InjectedExports;
-};
-
-
-// eof ------------------------------------------------------------------------
diff --git a/src/vm/typeparse.cpp b/src/vm/typeparse.cpp
index 34bf9647e7..9db4e8c917 100644
--- a/src/vm/typeparse.cpp
+++ b/src/vm/typeparse.cpp
@@ -18,122 +18,6 @@
#include "assemblynative.hpp"
#include "fstring.h"
-//
-// TypeNameFactory
-//
-HRESULT STDMETHODCALLTYPE TypeNameFactory::QueryInterface(REFIID riid, void **ppUnk)
-{
- WRAPPER_NO_CONTRACT;
-
- *ppUnk = 0;
-
- if (riid == IID_IUnknown)
- *ppUnk = (IUnknown *)this;
- else if (riid == IID_ITypeNameFactory)
- *ppUnk = (ITypeNameFactory*)this;
- else
- return (E_NOINTERFACE);
-
- AddRef();
- return S_OK;
-}
-
-HRESULT TypeNameFactoryCreateObject(REFIID riid, void **ppUnk)
-{
- CONTRACTL
- {
- NOTHROW;
- GC_NOTRIGGER;
- }
- CONTRACTL_END;
-
- HRESULT hr = S_OK;
-
- TypeNameFactory *pTypeNameFactory = new (nothrow) TypeNameFactory();
-
- if (!pTypeNameFactory)
- return (E_OUTOFMEMORY);
-
- hr = pTypeNameFactory->QueryInterface(riid, ppUnk);
-
- if (FAILED(hr))
- delete pTypeNameFactory;
-
- return hr;
-}
-
-
-HRESULT STDMETHODCALLTYPE TypeNameFactory::ParseTypeName(LPCWSTR szTypeName, DWORD* pError, ITypeName** ppTypeName)
-{
- CONTRACTL
- {
- WRAPPER(THROWS);
- }CONTRACTL_END;
-
- if (!ppTypeName || !pError)
- return E_INVALIDARG;
-
- HRESULT hr = S_OK;
-
- *ppTypeName = NULL;
- *pError = (DWORD)-1;
-
- ITypeName* pTypeName = new (nothrow) TypeName(szTypeName, pError);
-
- if (! pTypeName)
- {
- hr = E_OUTOFMEMORY;
- }
- else
- {
- pTypeName->AddRef();
-
- if (*pError != (DWORD)-1)
- {
- pTypeName->Release();
- hr = S_FALSE;
- }
- else
- {
- *ppTypeName = pTypeName;
- }
- }
-
- return hr;
-}
-
-HRESULT STDMETHODCALLTYPE TypeNameFactory::GetTypeNameBuilder(ITypeNameBuilder** ppTypeNameBuilder)
-{
- CONTRACTL
- {
- THROWS; // operator new has EX_TRY/EX_CATCH or other contract transitions(s)
- GC_NOTRIGGER;
- MODE_ANY;
- }
- CONTRACTL_END;
-
- if (!ppTypeNameBuilder)
- return E_INVALIDARG;
-
- *ppTypeNameBuilder = NULL;
-
- HRESULT hr = S_OK;
-
- ITypeNameBuilder* pTypeNameBuilder = new (nothrow) TypeNameBuilderWrapper();
-
- if (pTypeNameBuilder)
- {
- pTypeNameBuilder->AddRef();
-
- *ppTypeNameBuilder = pTypeNameBuilder;
- }
- else
- {
- hr = E_OUTOFMEMORY;
- }
-
- return hr;
-}
//
// TypeName
@@ -153,7 +37,7 @@ SString* TypeName::ToString(SString* pBuf, BOOL bAssemblySpec, BOOL bSignature,
}
-DWORD STDMETHODCALLTYPE TypeName::AddRef()
+DWORD TypeName::AddRef()
{
LIMITED_METHOD_CONTRACT;
@@ -162,7 +46,7 @@ DWORD STDMETHODCALLTYPE TypeName::AddRef()
return m_count;
}
-DWORD STDMETHODCALLTYPE TypeName::Release()
+DWORD TypeName::Release()
{
CONTRACTL
{
@@ -193,149 +77,6 @@ TypeName::~TypeName()
m_genericArguments[i]->Release();
}
-HRESULT STDMETHODCALLTYPE TypeName::QueryInterface(REFIID riid, void **ppUnk)
-{
- WRAPPER_NO_CONTRACT;
-
- *ppUnk = 0;
-
- if (riid == IID_IUnknown)
- *ppUnk = (IUnknown *)this;
- else if (riid == IID_ITypeName)
- *ppUnk = (ITypeName*)this;
- else
- return (E_NOINTERFACE);
-
- AddRef();
- return S_OK;
-}
-
-HRESULT STDMETHODCALLTYPE TypeName::GetNameCount(DWORD* pCount)
-{
- WRAPPER_NO_CONTRACT;
-
- if (!pCount)
- return E_INVALIDARG;
-
- *pCount = m_names.GetCount();
-
- return S_OK;
-}
-
-HRESULT STDMETHODCALLTYPE TypeName::GetNames(DWORD count, BSTR* bszName, DWORD* pFetched)
-{
- CONTRACTL
- {
- WRAPPER(THROWS);
- }CONTRACTL_END;
-
- HRESULT hr = S_OK;
-
- if (!pFetched)
- return E_INVALIDARG;
-
- *pFetched = m_names.GetCount();
-
- if (m_names.GetCount() > count)
- return S_FALSE;
-
- if (!bszName)
- return E_INVALIDARG;
-
- for (COUNT_T i = 0; i < m_names.GetCount(); i ++)
- bszName[i] = SysAllocString(m_names[i]->GetUnicode());
-
- return hr;
-}
-
-HRESULT STDMETHODCALLTYPE TypeName::GetTypeArgumentCount(DWORD* pCount)
-{
- WRAPPER_NO_CONTRACT;
-
- if (!pCount)
- return E_INVALIDARG;
-
- *pCount = m_genericArguments.GetCount();
-
- return S_OK;
-}
-
-HRESULT STDMETHODCALLTYPE TypeName::GetTypeArguments(DWORD count, ITypeName** ppArguments, DWORD* pFetched)
-{
- WRAPPER_NO_CONTRACT;
-
- if (!pFetched)
- return E_INVALIDARG;
-
- *pFetched = m_genericArguments.GetCount();
-
- if (m_genericArguments.GetCount() > count)
- return S_FALSE;
-
- if (!ppArguments)
- return E_INVALIDARG;
-
- for (COUNT_T i = 0; i < m_genericArguments.GetCount(); i ++)
- {
- ppArguments[i] = m_genericArguments[i];
- m_genericArguments[i]->AddRef();
- }
-
- return S_OK;
-}
-
-HRESULT STDMETHODCALLTYPE TypeName::GetModifierLength(DWORD* pCount)
-{
- WRAPPER_NO_CONTRACT;
-
- if (pCount == NULL)
- return E_INVALIDARG;
-
- *pCount = m_signature.GetCount();
-
- return S_OK;
-}
-
-HRESULT STDMETHODCALLTYPE TypeName::GetModifiers(DWORD count, DWORD* pModifiers, DWORD* pFetched)
-{
- WRAPPER_NO_CONTRACT;
-
- if (!pFetched)
- return E_INVALIDARG;
-
- *pFetched = m_signature.GetCount();
-
- if (m_signature.GetCount() > count)
- return S_FALSE;
-
- if (!pModifiers)
- return E_INVALIDARG;
-
- for (COUNT_T i = 0; i < m_signature.GetCount(); i ++)
- pModifiers[i] = m_signature[i];
-
- return S_OK;
-}
-
-HRESULT STDMETHODCALLTYPE TypeName::GetAssemblyName(BSTR* pszAssemblyName)
-{
- CONTRACTL
- {
- WRAPPER(THROWS);
- }CONTRACTL_END;
-
- HRESULT hr = S_OK;
-
- if (pszAssemblyName == NULL)
- return E_INVALIDARG;
-
- *pszAssemblyName = SysAllocString(m_assembly.GetUnicode());
- if (*pszAssemblyName == NULL)
- hr = E_OUTOFMEMORY;
-
- return hr;
-}
-
#if!defined(CROSSGEN_COMPILE)
SAFEHANDLE TypeName::GetSafeHandle()
{
diff --git a/src/vm/typeparse.h b/src/vm/typeparse.h
index 171a22cac3..cf592d41d1 100644
--- a/src/vm/typeparse.h
+++ b/src/vm/typeparse.h
@@ -52,34 +52,7 @@ DomainAssembly * LoadDomainAssembly(
BOOL bThrowIfNotFound,
SString * pssOuterTypeName);
-class TypeNameFactory : public ITypeNameFactory
-{
-public:
- static HRESULT CreateObject(REFIID riid, void **ppUnk);
-
-public:
- virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void **ppUnk);
- virtual ULONG STDMETHODCALLTYPE AddRef() { LIMITED_METHOD_CONTRACT; m_count++; return m_count; }
- virtual ULONG STDMETHODCALLTYPE Release() { LIMITED_METHOD_CONTRACT; SUPPORTS_DAC_HOST_ONLY; m_count--; ULONG count = m_count; if (count == 0) delete this; return count; }
-
-public:
- virtual HRESULT STDMETHODCALLTYPE ParseTypeName(LPCWSTR szName, DWORD* pError, ITypeName** ppTypeName);
- virtual HRESULT STDMETHODCALLTYPE GetTypeNameBuilder(ITypeNameBuilder** ppTypeBuilder);
-
-public:
- TypeNameFactory() : m_count(0)
- {
- WRAPPER_NO_CONTRACT;
- SString::Startup();
- }
-
- virtual ~TypeNameFactory() {}
-
-private:
- DWORD m_count;
-};
-
-class TypeName : public ITypeName
+class TypeName
{
private:
template<typename PRODUCT>
@@ -282,21 +255,11 @@ private:
TypeNameTokens m_nextToken;
};
friend class TypeName::TypeNameParser;
-
-public:
- virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void **ppUnk);
- virtual ULONG STDMETHODCALLTYPE AddRef();
- virtual ULONG STDMETHODCALLTYPE Release();
public:
- virtual HRESULT STDMETHODCALLTYPE GetNameCount(DWORD* pCount);
- virtual HRESULT STDMETHODCALLTYPE GetNames(DWORD count, BSTR* rgbszNames, DWORD* pFetched);
- virtual HRESULT STDMETHODCALLTYPE GetTypeArgumentCount(DWORD* pCount);
- virtual HRESULT STDMETHODCALLTYPE GetTypeArguments(DWORD count, ITypeName** rgpArguments, DWORD* pFetched);
- virtual HRESULT STDMETHODCALLTYPE GetModifierLength(DWORD* pCount);
- virtual HRESULT STDMETHODCALLTYPE GetModifiers(DWORD count, DWORD* rgModifiers, DWORD* pFetched);
- virtual HRESULT STDMETHODCALLTYPE GetAssemblyName(BSTR* rgbszAssemblyNames);
-
+ ULONG AddRef();
+ ULONG Release();
+
public:
TypeName(LPCWSTR szTypeName, DWORD* pError) : m_bIsGenericArgument(FALSE), m_count(0)
{
diff --git a/src/vm/typestring.cpp b/src/vm/typestring.cpp
index bdf8cd9694..bc7737efa5 100644
--- a/src/vm/typestring.cpp
+++ b/src/vm/typestring.cpp
@@ -1388,218 +1388,3 @@ bool TypeString::ContainsReservedChar(LPCWSTR pTypeName)
return false;
}
-
-HRESULT STDMETHODCALLTYPE TypeNameBuilderWrapper::QueryInterface(REFIID riid, void **ppUnk)
-{
- CONTRACTL
- {
- NOTHROW;
- GC_NOTRIGGER;
- MODE_ANY;
- }
- CONTRACTL_END;
-
- *ppUnk = 0;
-
- if (riid == IID_IUnknown)
- *ppUnk = (IUnknown *)this;
- else if (riid == IID_ITypeNameBuilder)
- *ppUnk = (ITypeNameBuilder*)this;
- else
- return (E_NOINTERFACE);
-
- AddRef();
- return S_OK;
-}
-
-ULONG STDMETHODCALLTYPE TypeNameBuilderWrapper::AddRef()
-{
- CONTRACTL
- {
- NOTHROW;
- GC_NOTRIGGER;
- MODE_ANY;
- }
- CONTRACTL_END;
-
- return InterlockedIncrement(&m_ref);
-}
-
-ULONG STDMETHODCALLTYPE TypeNameBuilderWrapper::Release()
-{
- CONTRACTL
- {
- NOTHROW;
- GC_NOTRIGGER;
- MODE_ANY;
- SUPPORTS_DAC_HOST_ONLY;
- }
- CONTRACTL_END;
-
- LONG ref = 0;
-
- ref = InterlockedDecrement(&m_ref);
- if (ref == 0)
- delete this;
-
- return ref;
-}
-
-
-HRESULT STDMETHODCALLTYPE TypeNameBuilderWrapper::OpenGenericArguments()
-{
- CONTRACTL
- {
- THROWS;
- GC_NOTRIGGER;
- MODE_ANY;
- }
- CONTRACTL_END;
-
- HRESULT hr;
- hr = m_tnb.OpenGenericArguments();
- return hr;
-}
-
-HRESULT STDMETHODCALLTYPE TypeNameBuilderWrapper::CloseGenericArguments()
-{
- CONTRACTL
- {
- THROWS;
- GC_NOTRIGGER;
- MODE_ANY;
- }
- CONTRACTL_END;
-
- HRESULT hr;
- hr = m_tnb.CloseGenericArguments();
- return hr;
-}
-
-HRESULT STDMETHODCALLTYPE TypeNameBuilderWrapper::OpenGenericArgument()
-{
- CONTRACTL
- {
- THROWS;
- GC_NOTRIGGER;
- MODE_ANY;
- }
- CONTRACTL_END;
-
- HRESULT hr;
- hr = m_tnb.OpenGenericArgument();
- return hr;
-}
-
-HRESULT STDMETHODCALLTYPE TypeNameBuilderWrapper::CloseGenericArgument()
-{
- CONTRACTL
- {
- THROWS;
- GC_NOTRIGGER;
- MODE_ANY;
- }
- CONTRACTL_END;
-
- HRESULT hr;
- hr = m_tnb.CloseGenericArgument();
- return hr;
-}
-
-HRESULT STDMETHODCALLTYPE TypeNameBuilderWrapper::AddName(LPCWSTR szName)
-{
- CONTRACTL
- {
- THROWS;
- GC_NOTRIGGER;
- MODE_ANY;
- }
- CONTRACTL_END;
-
- return m_tnb.AddName(szName);
-}
-
-HRESULT STDMETHODCALLTYPE TypeNameBuilderWrapper::AddPointer()
-{
- CONTRACTL
- {
- THROWS;
- GC_NOTRIGGER;
- MODE_ANY;
- }
- CONTRACTL_END;
-
- return m_tnb.AddPointer();
-}
-
-HRESULT STDMETHODCALLTYPE TypeNameBuilderWrapper::AddByRef()
-{
- CONTRACTL
- {
- THROWS;
- GC_NOTRIGGER;
- MODE_ANY;
- }
- CONTRACTL_END;
-
- return m_tnb.AddByRef();
-}
-
-HRESULT STDMETHODCALLTYPE TypeNameBuilderWrapper::AddSzArray()
-{
- CONTRACTL
- {
- THROWS;
- GC_NOTRIGGER;
- MODE_ANY;
- }
- CONTRACTL_END;
-
- return m_tnb.AddSzArray();
-}
-
-HRESULT STDMETHODCALLTYPE TypeNameBuilderWrapper::AddArray(DWORD rank)
-{
- CONTRACTL
- {
- THROWS;
- GC_NOTRIGGER;
- MODE_ANY;
- }
- CONTRACTL_END;
-
- return m_tnb.AddArray(rank);
-}
-
-HRESULT STDMETHODCALLTYPE TypeNameBuilderWrapper::AddAssemblySpec(LPCWSTR szAssemblySpec)
-{
- CONTRACTL
- {
- THROWS;
- GC_NOTRIGGER;
- MODE_ANY;
- }
- CONTRACTL_END;
-
- return m_tnb.AddAssemblySpec(szAssemblySpec);
-}
-
-HRESULT STDMETHODCALLTYPE TypeNameBuilderWrapper::ToString(BSTR* pszStringRepresentation)
-{
- WRAPPER_NO_CONTRACT;
-
- return m_tnb.ToString(pszStringRepresentation);
-}
-
-HRESULT STDMETHODCALLTYPE TypeNameBuilderWrapper::Clear()
-{
- CONTRACTL
- {
- THROWS;
- GC_NOTRIGGER;
- MODE_ANY;
- }
- CONTRACTL_END;
-
- return m_tnb.Clear();
-}
diff --git a/src/vm/typestring.h b/src/vm/typestring.h
index 0ddec87671..4b75b84b67 100644
--- a/src/vm/typestring.h
+++ b/src/vm/typestring.h
@@ -28,13 +28,10 @@
#include "typeparse.h"
#include "field.h"
-class TypeLibExporter;
class TypeString;
class TypeNameBuilder
{
- friend class TypeNameBuilderWrapper;
-
public:
static void QCALLTYPE _ReleaseTypeNameBuilder(TypeNameBuilder * pTnb);
static TypeNameBuilder * QCALLTYPE _CreateTypeNameBuilder();
@@ -148,36 +145,6 @@ private:
Stack m_stack;
};
-// Class that's exposed to COM and wraps TypeNameBuilder (so that it can thunk
-// all the entry points in order to perform stack probes).
-class TypeNameBuilderWrapper : public ITypeNameBuilder
-{
-public:
- virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void **ppUnk);
- virtual ULONG STDMETHODCALLTYPE AddRef();
- virtual ULONG STDMETHODCALLTYPE Release();
-
- virtual HRESULT STDMETHODCALLTYPE OpenGenericArguments();
- virtual HRESULT STDMETHODCALLTYPE CloseGenericArguments();
- virtual HRESULT STDMETHODCALLTYPE OpenGenericArgument();
- virtual HRESULT STDMETHODCALLTYPE CloseGenericArgument();
- virtual HRESULT STDMETHODCALLTYPE AddName(LPCWSTR szName);
- virtual HRESULT STDMETHODCALLTYPE AddPointer();
- virtual HRESULT STDMETHODCALLTYPE AddByRef();
- virtual HRESULT STDMETHODCALLTYPE AddSzArray();
- virtual HRESULT STDMETHODCALLTYPE AddArray(DWORD rank);
- virtual HRESULT STDMETHODCALLTYPE AddAssemblySpec(LPCWSTR szAssemblySpec);
- virtual HRESULT STDMETHODCALLTYPE ToString(BSTR* pszStringRepresentation);
- virtual HRESULT STDMETHODCALLTYPE Clear();
-
- TypeNameBuilderWrapper() : m_ref(0) { WRAPPER_NO_CONTRACT; }
- virtual ~TypeNameBuilderWrapper() {}
-
-private:
- LONG m_ref;
- TypeNameBuilder m_tnb;
-};
-
// --------------------------------------------------------------------------
// This type can generate names for types. It is used by reflection methods
// like System.RuntimeType.RuntimeTypeCache.ConstructName
@@ -249,7 +216,6 @@ public:
#endif
private:
- friend class TypeLibExporter;
friend class TypeNameBuilder;
static void AppendMethodImpl(SString& s, MethodDesc *pMD, Instantiation typeInstantiation, const DWORD format);
static void AppendTypeDef(TypeNameBuilder& tnb, IMDInternalImport *pImport, mdTypeDef td, DWORD format = FormatNamespace);
diff --git a/src/vm/util.hpp b/src/vm/util.hpp
index 06afda69b6..2bbca2cfe3 100644
--- a/src/vm/util.hpp
+++ b/src/vm/util.hpp
@@ -735,10 +735,6 @@ typedef Wrapper<void *, DoNothing, DoNothing> PALPEFileHolder;
void GetProcessMemoryLoad(LPMEMORYSTATUSEX pMSEX);
-void ProcessEventForHost(EClrEvent event, void *data);
-void ProcessSOEventForHost(EXCEPTION_POINTERS *pExceptionInfo, BOOL fInSoTolerant);
-BOOL IsHostRegisteredForEvent(EClrEvent event);
-
#define SetupThreadForComCall(OOMRetVal) \
MAKE_CURRENT_THREAD_AVAILABLE_EX(GetThreadNULLOk()); \
if (CURRENT_THREAD == NULL) \