DacpRCWData-structuur

Definieert een transportbuffer voor runtime-aanroepbare wrapper-gegevens (RCW).

Note

Deze API is oorspronkelijk ontworpen voor intern gebruik in de runtime. Hoewel het nu wordt ondersteund voor gebruik van derden, raden we u aan om indien mogelijk met ICorDebug en ICorProfiler API's te werken.

Syntax

struct DacpRCWData : ZeroInit<DacpRCWData>
{
    CLRDATA_ADDRESS identityPointer;
    CLRDATA_ADDRESS unknownPointer;
    CLRDATA_ADDRESS managedObject;
    CLRDATA_ADDRESS jupiterObject;
    CLRDATA_ADDRESS vtablePtr;
    CLRDATA_ADDRESS creatorThread;
    CLRDATA_ADDRESS ctxCookie;
    
    LONG refCount;
    LONG interfaceCount;

    BOOL isJupiterObject;
    BOOL supportsIInspectable;
    BOOL isAggregated;
    BOOL isContained;
    BOOL isFreeThreaded;
    BOOL isDisconnected;
    
    HRESULT Request(ISOSDacInterface *sos, CLRDATA_ADDRESS rcw)
    {
        return sos->GetRCWData(rcw, this);
    }

    HRESULT IsDCOMProxy(ISOSDacInterface *sos, CLRDATA_ADDRESS rcw, BOOL* isDCOMProxy)
    {
        ISOSDacInterface2 *pSOS2 = nullptr;
        HRESULT hr = sos->QueryInterface(__uuidof(ISOSDacInterface2), reinterpret_cast<LPVOID*>(&pSOS2));
        if (SUCCEEDED(hr))
        {
            hr = pSOS2->IsRCWDCOMProxy(rcw, isDCOMProxy);
            pSOS2->Release();
        }

        return hr;
    }
};

Members

Lid Beschrijving
identityPointer Het adres van de COM-id-aanwijzer.
unknownPointer Het adres van de IUnknown aanwijzer.
managedObject Het adres van het beheerde object dat is gekoppeld aan de RCW.
jupiterObject Het adres van het bijbehorende Jupiter-object.
vtablePtr Het adres van de vtable-aanwijzer.
creatorThread Het adres van de thread die de RCW heeft gemaakt.
ctxCookie De context cookie voor de RCW.
refCount Het referentieaantal voor de RCW.
interfaceCount Het aantal interfaces dat is gekoppeld aan de RCW.
isJupiterObject Een waarde die aangeeft of de RCW een Jupiter-object vertegenwoordigt.
supportsIInspectable Een waarde die aangeeft of de RCW ondersteuning biedt IInspectablevoor .
isAggregated Een waarde die aangeeft of de RCW is geaggregeerd.
isContained Een waarde die aangeeft of de RCW is opgenomen.
isFreeThreaded Een waarde die aangeeft of de RCW vrije thread is.
isDisconnected Een waarde die aangeeft of de RCW is verbroken.
Request Vult de structuur door aan te roepen ISOSDacInterface::GetRCWData.
IsDCOMProxy Bepaalt of de RCW een DCOM-proxy is met behulp van ISOSDacInterface2::IsRCWDCOMProxy, wanneer die interface beschikbaar is.

Remarks

Deze structuur bevindt zich in de runtime en wordt niet weergegeven via headers of bibliotheekbestanden. Als u deze wilt gebruiken, definieert u de structuur zoals hierboven is opgegeven.

Requirements

Platformen: Zie Systeemvereisten.
Rubriek: Geen
Bibliotheek: Geen
.NET Framework-versies: beschikbaar sinds 4.7

Zie ook