#include "ComCallUnmarshal.h"
#endif // FEATURE_COMINTEROP
-#include "clrprivhosting.h"
-
#include <dbgenginemetrics.h>
// Locals.
corprof.idl
corpub.idl
mscorsvc.idl
- clrprivappxhosting.idl
clrprivbinding.idl
- clrprivhosting.idl
- clrprivruntimebinders.idl
corsym.idl
sospriv.idl
)
#include "clrtypes.h"
#include "appmodel.h"
-#define PACKAGE_FILTER_CLR_DEFAULT (PACKAGE_FILTER_HEAD|PACKAGE_FILTER_DIRECT)
-
-
-typedef PACKAGE_INFO * PPACKAGE_INFO;
-typedef PACKAGE_INFO const * PCPACKAGE_INFO;
//---------------------------------------------------------------------------------------------
// Forward declarations
+++ /dev/null
-// 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.
-
-import "unknwn.idl";
-
-// Forward declarations
-interface ICLRPrivAppXDomain;
-interface ICLRPrivAppXRuntime;
-
-/**************************************************************************************
- ** ICLRPrivAppXRuntime
- **************************************************************************************/
-[
- uuid(6D2DF5A4-FA3A-4481-8BA0-0422FD21720F),
- version(1.0),
- local
-]
-interface ICLRPrivAppXRuntime : IUnknown
-{
- /**********************************************************************************
- ** Use to create and initialize the AppX domain. Should only be called once; all
- ** subsequent calls will fail. Thread safe.
- **
- ** wzFriendlyName - the domain friendly name.
- **********************************************************************************/
- HRESULT InitializeAppXDomain(
- [in] LPCWSTR wzFriendlyName);
-
- /**********************************************************************************
- ** Use to retrieve the AppX domain. InitializeAppXDomain must have been
- ** successfully called previously. May be called multiple times. Thread safe.
- **
- ** riidDomain - the IID of the interface to be returned in ppvDomain.
- ** ppIAppXDomain - receives the ICLRPrivAppXDomain interface.
- **********************************************************************************/
- HRESULT GetAppXDomain(
- [in] REFIID riidDomain,
- [out] LPVOID * ppvDomain);
-}
-
-/**************************************************************************************
- ** ICLRPrivAppXDomain
- **************************************************************************************/
-[
- uuid(6633398E-823D-4361-B30E-824043BD4686),
- version(1.0),
- local
-]
-interface ICLRPrivAppXDomain : IUnknown
-{
- /**********************************************************************************
- ** Use to create a delegate to a static method.
- **
- ** wzAssemblyName - the name of the assembly that contains the target type.
- ** wzTypeName - the name of the type that contains the target method.
- ** wzMethodName - the static method for which to create a delegate.
- ** ppvDelegate - receives the native-callable function pointer corresponding to
- ** the specified static method.
- **********************************************************************************/
- HRESULT CreateDelegate(
- [in] LPCWSTR wzAssemblyName,
- [in] LPCWSTR wzTypeName,
- [in] LPCWSTR wzMethodName,
- [out] LPVOID * ppvDelegate);
-};
+++ /dev/null
-// 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.
-
-import "unknwn.idl";
-import "CLRPrivBinding.idl";
-
-//=====================================================================================================================
-// Forward declarations
-interface ICLRPrivRuntime;
-
-//=====================================================================================================================
-// CLRPrivHosting coclass
-//=====================================================================================================================
-[
- uuid("EDA73987-E6C0-42BF-A6B7-073F7B24D8C7")
-]
-library CLRPrivHosting
-{
- //=================================================================================================================
- // CLRPrivRuntime
- //=================================================================================================================
- [
- uuid(BC1B53A8-DCBC-43B2-BB17-1E4061447AE8)
- ]
- coclass CLRPrivRuntime
- {
- [default] interface ICLRPrivRuntime;
- };
-};
-
-//=====================================================================================================================
-// ICLRPrivRuntime
-//=====================================================================================================================
-[
- uuid(BC1B53A8-DCBC-43B2-BB17-1E4061447AE9),
- version(1.0),
- local
-]
-interface ICLRPrivRuntime : IUnknown
-{
- /**********************************************************************************
- ** Used for accessing additional hosting functionality.
- **
- ** rclsid - the CoClass from which to request the interface.
- ** riid - the IID of the interface being requested.
- ** ppUnk - receives the interface pointer value.
- **********************************************************************************/
- HRESULT GetInterface(
- [in] REFCLSID rclsid,
- [in] REFIID riid,
- [out, iid_is(riid), retval] LPVOID *ppUnk);
-
- /**********************************************************************************
- ** Creates a domain using the provided binder for the root default bind context.
- **
- ** pwzFriendlyName - the name to associate with the domain.
- ** pBinder - the binder to use for root-level binds in the default context.
- ** pdwAppDomainId - receives the ID of the created domain.
- **********************************************************************************/
- HRESULT CreateAppDomain(
- [in, string] LPCWSTR pwzFriendlyName,
- [in] ICLRPrivBinder * pBinder,
- [out, retval] LPDWORD pdwAppDomainId);
-
- /**********************************************************************************
- ** Creates a native-callable function pointer to the specified method.
- **
- ** appDomainID - the domain in which to create the delegate.
- ** wszAssemblyName - the name of the assembly in which the method is defined.
- ** wszClassName - the name of the class (including namespace) in which the method
- ** is defined.
- ** wszMethodName - the name of the method for which to create a delegate.
- ** ppvDelegate - receives the delegate pointer value.
- **********************************************************************************/
- HRESULT CreateDelegate(
- [in] DWORD appDomainID,
- [in, string] LPCWSTR wszAssemblyName,
- [in, string] LPCWSTR wszClassName,
- [in, string] LPCWSTR wszMethodName,
- [out, retval] LPVOID * ppvDelegate);
-
- /**********************************************************************************
- ** Creates an AppX appdomain and executes entrypoint method of an executable there
- **
- **********************************************************************************/
- HRESULT ExecuteMain(
- [in] ICLRPrivBinder * pBinder,
- [out, retval] int * pRetVal
- );
-};
-
+++ /dev/null
-// 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.
-
-import "CLRPrivBinding.idl";
-
-//=====================================================================================================================
-// CLRPrivRuntime
-//=====================================================================================================================
-[
- uuid("EA6A2170-8F6A-4007-87A9-02429F615958")
-]
-library CLRPrivRuntimeBinders
-{
- //=================================================================================================================
- // CLRPrivAppXBinder
- //=================================================================================================================
- [
- uuid(E990F732-2D0A-48AC-87FC-EF12B618981A),
- helpstring("Runtime-provided package-based assembly binder for AppX."),
- ]
- coclass CLRPrivAppXBinder
- {
- [default] interface ICLRPrivBinder;
- };
-
- //=================================================================================================================
- // CLRPrivFusionBinder
- //=================================================================================================================
- [
- uuid(E990F732-2D0A-48AC-87FC-EF12B618981C),
- helpstring("Runtime-provided binder for wrapping ICLRPrivBinder-compatible subset of fusion functionality."),
- ]
- coclass CLRPrivFusionBinder
- {
- [default] interface ICLRPrivBinder;
- };
-};
-
#include "holder.h"
-#include "clrprivhosting.h"
+#include "clrprivbinding.h"
#ifdef FEATURE_COMINTEROP
#include "activation.h" // WinRT activation.
class DangerousNonHostedSpinLock;
-#define INVALID_STACK_BASE_MARKER_FOR_CHECK_STATE 2
-
class AppDomain;
class Assembly;
// Starts the runtime. This is equivalent to CoInitializeCor()
STDMETHODIMP Start();
- STDMETHODIMP LocksHeldByLogicalThread( // Return code.
- DWORD *pCount // [out] Number of locks that the current thread holds.
- );
-
protected:
BOOL m_Started; // Has START been called?
};
-
-class ConnectionNameTable;
-typedef DPTR(class ConnectionNameTable) PTR_ConnectionNameTable;
-
class CrstStatic;
-// Defines the precedence (in increading oder) of the two symbol reading knobs
-enum ESymbolReadingSetBy
-{
- eSymbolReadingSetByDefault,
- eSymbolReadingSetByConfig, // EEConfig - config file, env var, etc.
- eSymbolReadingSetByHost, // Hosting API - highest precedence
- eSymbolReadingSetBy_COUNT
-};
-
class CorHost2 :
public CorRuntimeHostBase
#ifndef FEATURE_PAL
FExecuteInAppDomainCallback pCallback,
void * cookie);
- STDMETHODIMP LocksHeldByLogicalThread( // Return code.
- DWORD *pCount // [out] Number of locks that the current thread holds.
- )
- {
- WRAPPER_NO_CONTRACT;
- return CorRuntimeHostBase::LocksHeldByLogicalThread(pCount);
- }
-
// Class factory hook-up.
static HRESULT CreateObject(REFIID riid, void **ppUnk);
BOOL m_fStarted;
BOOL m_fAppDomainCreated; // this flag is used when an appdomain can only create a single appdomain
- // Helpers for both ICLRRuntimeHost2 and ICLRPrivRuntime
+ // Helpers for both ICLRRuntimeHost2
HRESULT _CreateAppDomain(
LPCWSTR wszFriendlyName,
DWORD dwFlags,
#endif // defined(FEATURE_COMINTEROP)
-extern SIZE_T Host_SegmentSize;
-extern SIZE_T Host_MaxGen0Size;
-extern BOOL Host_fSegmentSizeSet;
-extern BOOL Host_fMaxGen0SizeSet;
-
-#define PARTIAL_TRUST_VISIBLE_ASSEMBLIES_PROPERTY W("PARTIAL_TRUST_VISIBLE_ASSEMBLIES")
#endif // __CorHost__h__
#include "mscoree.h"
#include "corhost.h"
-#include "clrprivhosting.h"
-
#include <ndpversion.h>
+++ /dev/null
-// 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, LIBID_CLRPrivHosting,0xEDA73987,0xE6C0,0x42BF,0xA6,0xB7,0x07,0x3F,0x7B,0x24,0xD8,0xC7);
-
-
-MIDL_DEFINE_GUID(CLSID, CLSID_CLRPrivRuntime,0xBC1B53A8,0xDCBC,0x43B2,0xBB,0x17,0x1E,0x40,0x61,0x44,0x7A,0xE8);
-
-
-MIDL_DEFINE_GUID(IID, IID_ICLRPrivRuntime,0xBC1B53A8,0xDCBC,0x43B2,0xBB,0x17,0x1E,0x40,0x61,0x44,0x7A,0xE9);
-
-#undef MIDL_DEFINE_GUID
-
-#ifdef __cplusplus
-}
-#endif
-
-
-
+++ /dev/null
-// 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, LIBID_CLRPrivRuntimeBinders,0xEA6A2170,0x8F6A,0x4007,0x87,0xA9,0x02,0x42,0x9F,0x61,0x59,0x58);
-
-
-MIDL_DEFINE_GUID(CLSID, CLSID_CLRPrivAppXBinder,0xE990F732,0x2D0A,0x48AC,0x87,0xFC,0xEF,0x12,0xB6,0x18,0x98,0x1A);
-
-
-MIDL_DEFINE_GUID(CLSID, CLSID_CLRPrivFusionBinder,0xE990F732,0x2D0A,0x48AC,0x87,0xFC,0xEF,0x12,0xB6,0x18,0x98,0x1C);
-
-#undef MIDL_DEFINE_GUID
-
-#ifdef __cplusplus
-}
-#endif
-
-
-
+++ /dev/null
-// 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 __CLRPrivHosting_h__
-#define __CLRPrivHosting_h__
-
-#if defined(_MSC_VER) && (_MSC_VER >= 1020)
-#pragma once
-#endif
-
-/* Forward Declarations */
-
-#ifndef __CLRPrivRuntime_FWD_DEFINED__
-#define __CLRPrivRuntime_FWD_DEFINED__
-
-#ifdef __cplusplus
-typedef class CLRPrivRuntime CLRPrivRuntime;
-#else
-typedef struct CLRPrivRuntime CLRPrivRuntime;
-#endif /* __cplusplus */
-
-#endif /* __CLRPrivRuntime_FWD_DEFINED__ */
-
-
-#ifndef __ICLRPrivRuntime_FWD_DEFINED__
-#define __ICLRPrivRuntime_FWD_DEFINED__
-typedef interface ICLRPrivRuntime ICLRPrivRuntime;
-
-#endif /* __ICLRPrivRuntime_FWD_DEFINED__ */
-
-
-/* header files for imported files */
-#include "unknwn.h"
-#include "clrprivbinding.h"
-
-#ifdef __cplusplus
-extern "C"{
-#endif
-
-
-/* interface __MIDL_itf_CLRPrivHosting_0000_0000 */
-/* [local] */
-
-
-
-
-extern RPC_IF_HANDLE __MIDL_itf_CLRPrivHosting_0000_0000_v0_0_c_ifspec;
-extern RPC_IF_HANDLE __MIDL_itf_CLRPrivHosting_0000_0000_v0_0_s_ifspec;
-
-
-#ifndef __CLRPrivHosting_LIBRARY_DEFINED__
-#define __CLRPrivHosting_LIBRARY_DEFINED__
-
-/* library CLRPrivHosting */
-/* [uuid] */
-
-
-EXTERN_C const IID LIBID_CLRPrivHosting;
-
-EXTERN_C const CLSID CLSID_CLRPrivRuntime;
-
-#ifdef __cplusplus
-
-class DECLSPEC_UUID("BC1B53A8-DCBC-43B2-BB17-1E4061447AE8")
-CLRPrivRuntime;
-#endif
-#endif /* __CLRPrivHosting_LIBRARY_DEFINED__ */
-
-#ifndef __ICLRPrivRuntime_INTERFACE_DEFINED__
-#define __ICLRPrivRuntime_INTERFACE_DEFINED__
-
-/* interface ICLRPrivRuntime */
-/* [object][local][version][uuid] */
-
-
-EXTERN_C const IID IID_ICLRPrivRuntime;
-
-#if defined(__cplusplus) && !defined(CINTERFACE)
-
- MIDL_INTERFACE("BC1B53A8-DCBC-43B2-BB17-1E4061447AE9")
- ICLRPrivRuntime : public IUnknown
- {
- public:
- virtual HRESULT STDMETHODCALLTYPE GetInterface(
- /* [in] */ REFCLSID rclsid,
- /* [in] */ REFIID riid,
- /* [retval][iid_is][out] */ LPVOID *ppUnk) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE CreateAppDomain(
- /* [string][in] */ LPCWSTR pwzFriendlyName,
- /* [in] */ ICLRPrivBinder *pBinder,
- /* [retval][out] */ LPDWORD pdwAppDomainId) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE CreateDelegate(
- /* [in] */ DWORD appDomainID,
- /* [string][in] */ LPCWSTR wszAssemblyName,
- /* [string][in] */ LPCWSTR wszClassName,
- /* [string][in] */ LPCWSTR wszMethodName,
- /* [retval][out] */ LPVOID *ppvDelegate) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE ExecuteMain(
- /* [in] */ ICLRPrivBinder *pBinder,
- /* [retval][out] */ int *pRetVal) = 0;
-
- };
-
-
-#else /* C style interface */
-
- typedef struct ICLRPrivRuntimeVtbl
- {
- BEGIN_INTERFACE
-
- HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
- ICLRPrivRuntime * This,
- /* [in] */ REFIID riid,
- /* [annotation][iid_is][out] */
- _COM_Outptr_ void **ppvObject);
-
- ULONG ( STDMETHODCALLTYPE *AddRef )(
- ICLRPrivRuntime * This);
-
- ULONG ( STDMETHODCALLTYPE *Release )(
- ICLRPrivRuntime * This);
-
- HRESULT ( STDMETHODCALLTYPE *GetInterface )(
- ICLRPrivRuntime * This,
- /* [in] */ REFCLSID rclsid,
- /* [in] */ REFIID riid,
- /* [retval][iid_is][out] */ LPVOID *ppUnk);
-
- HRESULT ( STDMETHODCALLTYPE *CreateAppDomain )(
- ICLRPrivRuntime * This,
- /* [string][in] */ LPCWSTR pwzFriendlyName,
- /* [in] */ ICLRPrivBinder *pBinder,
- /* [retval][out] */ LPDWORD pdwAppDomainId);
-
- HRESULT ( STDMETHODCALLTYPE *CreateDelegate )(
- ICLRPrivRuntime * This,
- /* [in] */ DWORD appDomainID,
- /* [string][in] */ LPCWSTR wszAssemblyName,
- /* [string][in] */ LPCWSTR wszClassName,
- /* [string][in] */ LPCWSTR wszMethodName,
- /* [retval][out] */ LPVOID *ppvDelegate);
-
- HRESULT ( STDMETHODCALLTYPE *ExecuteMain )(
- ICLRPrivRuntime * This,
- /* [in] */ ICLRPrivBinder *pBinder,
- /* [retval][out] */ int *pRetVal);
-
- END_INTERFACE
- } ICLRPrivRuntimeVtbl;
-
- interface ICLRPrivRuntime
- {
- CONST_VTBL struct ICLRPrivRuntimeVtbl *lpVtbl;
- };
-
-
-
-#ifdef COBJMACROS
-
-
-#define ICLRPrivRuntime_QueryInterface(This,riid,ppvObject) \
- ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
-
-#define ICLRPrivRuntime_AddRef(This) \
- ( (This)->lpVtbl -> AddRef(This) )
-
-#define ICLRPrivRuntime_Release(This) \
- ( (This)->lpVtbl -> Release(This) )
-
-
-#define ICLRPrivRuntime_GetInterface(This,rclsid,riid,ppUnk) \
- ( (This)->lpVtbl -> GetInterface(This,rclsid,riid,ppUnk) )
-
-#define ICLRPrivRuntime_CreateAppDomain(This,pwzFriendlyName,pBinder,pdwAppDomainId) \
- ( (This)->lpVtbl -> CreateAppDomain(This,pwzFriendlyName,pBinder,pdwAppDomainId) )
-
-#define ICLRPrivRuntime_CreateDelegate(This,appDomainID,wszAssemblyName,wszClassName,wszMethodName,ppvDelegate) \
- ( (This)->lpVtbl -> CreateDelegate(This,appDomainID,wszAssemblyName,wszClassName,wszMethodName,ppvDelegate) )
-
-#define ICLRPrivRuntime_ExecuteMain(This,pBinder,pRetVal) \
- ( (This)->lpVtbl -> ExecuteMain(This,pBinder,pRetVal) )
-
-#endif /* COBJMACROS */
-
-
-#endif /* C style interface */
-
-
-
-
-#endif /* __ICLRPrivRuntime_INTERFACE_DEFINED__ */
-
-
-/* Additional Prototypes for ALL interfaces */
-
-/* end of Additional Prototypes */
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
-
-
+++ /dev/null
-// 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 __CLRPrivRuntimeBinders_h__
-#define __CLRPrivRuntimeBinders_h__
-
-#if defined(_MSC_VER) && (_MSC_VER >= 1020)
-#pragma once
-#endif
-
-/* Forward Declarations */
-
-#ifndef __CLRPrivAppXBinder_FWD_DEFINED__
-#define __CLRPrivAppXBinder_FWD_DEFINED__
-
-#ifdef __cplusplus
-typedef class CLRPrivAppXBinder CLRPrivAppXBinder;
-#else
-typedef struct CLRPrivAppXBinder CLRPrivAppXBinder;
-#endif /* __cplusplus */
-
-#endif /* __CLRPrivAppXBinder_FWD_DEFINED__ */
-
-
-#ifndef __CLRPrivFusionBinder_FWD_DEFINED__
-#define __CLRPrivFusionBinder_FWD_DEFINED__
-
-#ifdef __cplusplus
-typedef class CLRPrivFusionBinder CLRPrivFusionBinder;
-#else
-typedef struct CLRPrivFusionBinder CLRPrivFusionBinder;
-#endif /* __cplusplus */
-
-#endif /* __CLRPrivFusionBinder_FWD_DEFINED__ */
-
-
-/* header files for imported files */
-#include "clrprivbinding.h"
-
-#ifdef __cplusplus
-extern "C"{
-#endif
-
-
-
-#ifndef __CLRPrivRuntimeBinders_LIBRARY_DEFINED__
-#define __CLRPrivRuntimeBinders_LIBRARY_DEFINED__
-
-/* library CLRPrivRuntimeBinders */
-/* [uuid] */
-
-
-EXTERN_C const IID LIBID_CLRPrivRuntimeBinders;
-
-EXTERN_C const CLSID CLSID_CLRPrivAppXBinder;
-
-#ifdef __cplusplus
-
-class DECLSPEC_UUID("E990F732-2D0A-48AC-87FC-EF12B618981A")
-CLRPrivAppXBinder;
-#endif
-
-EXTERN_C const CLSID CLSID_CLRPrivFusionBinder;
-
-#ifdef __cplusplus
-
-class DECLSPEC_UUID("E990F732-2D0A-48AC-87FC-EF12B618981C")
-CLRPrivFusionBinder;
-#endif
-#endif /* __CLRPrivRuntimeBinders_LIBRARY_DEFINED__ */
-
-/* Additional Prototypes for ALL interfaces */
-
-/* end of Additional Prototypes */
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
-
-
#include "holder.h"
#include "internalunknownimpl.h"
#include "clrprivbinding.h"
-#include "clrprivruntimebinders.h"
#include "clrprivbinderutil.h"
#include "clrprivtypecachewinrt.h"
#include "clr_std/utility"
}
//*****************************************************************************
-// Fiber Methods
-//*****************************************************************************
-
-HRESULT CorRuntimeHostBase::LocksHeldByLogicalThread(DWORD *pCount)
-{
- if (!pCount)
- return E_POINTER;
-
- CONTRACTL
- {
- NOTHROW;
- GC_NOTRIGGER;
- ENTRY_POINT;
- }
- CONTRACTL_END;
-
- BEGIN_ENTRYPOINT_NOTHROW;
-
- Thread* pThread = GetThread();
- if (pThread == NULL)
- *pCount = 0;
- else
- *pCount = pThread->m_dwLockCount;
-
- END_ENTRYPOINT_NOTHROW;
-
- return S_OK;
-}
-
-//*****************************************************************************
-// ICorConfiguration
-//*****************************************************************************
-
-//*****************************************************************************
// IUnknown
//*****************************************************************************