From d0833f90ed516b08871635a05c1d5657379b8053 Mon Sep 17 00:00:00 2001 From: Luqun Lou Date: Tue, 27 Mar 2018 14:20:09 -0700 Subject: Enable reflection load ComImport assembly and Type.IsComObjectType (#16943) * Enable reflection load ComImport assembly and Type.IsComObjectType * Update Enable reflection load ComImport assembly --- src/vm/interoputil.h | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) (limited to 'src/vm/interoputil.h') diff --git a/src/vm/interoputil.h b/src/vm/interoputil.h index 6762c80f92..a6896248c6 100644 --- a/src/vm/interoputil.h +++ b/src/vm/interoputil.h @@ -106,6 +106,13 @@ ULONG SafeReleasePreemp(IUnknown* pUnk, RCW* pRCW = NULL); // Determines if a COM object can be cast to the specified type. BOOL CanCastComObject(OBJECTREF obj, MethodTable * pTargetMT); +// includes Types which hold a "ComObject" class +// and types which are imported through typelib +BOOL IsComWrapperClass(TypeHandle type); + +// includes Type which hold a "__ComObject" class +BOOL IsComObjectClass(TypeHandle type); + //--------------------------------------------------------- // Read the BestFit custom attribute info from // both assembly level and interface level @@ -491,14 +498,6 @@ public: static void ComputeGuidForGenericType(MethodTable *pMT, GUID *pGuid); }; // class WinRTGuidGenerator - -// includes Types which hold a "ComObject" class -// and types which are imported through typelib -BOOL IsComWrapperClass(TypeHandle type); - -// includes Type which hold a "__ComObject" class -BOOL IsComObjectClass(TypeHandle type); - IUnknown* MarshalObjectToInterface(OBJECTREF* ppObject, MethodTable* pItfMT, MethodTable* pClassMT, DWORD dwFlags); void UnmarshalObjectFromInterface(OBJECTREF *ppObjectDest, IUnknown **ppUnkSrc, MethodTable *pItfMT, MethodTable *pClassMT, DWORD dwFlags); @@ -508,7 +507,6 @@ class ICOMInterfaceMarshalerCallback; void GetNativeWinRTFactoryObject(MethodTable *pMT, Thread *pThread, MethodTable *pFactoryIntfMT, BOOL bNeedUniqueRCW, ICOMInterfaceMarshalerCallback *pCallback, OBJECTREF *prefFactory); #else // FEATURE_COMINTEROP - inline HRESULT EnsureComStartedNoThrow() { LIMITED_METHOD_CONTRACT; -- cgit v1.2.3