定義執行時可呼叫包裝器(RCW)資訊的傳輸緩衝區。
Note
此 API 原本是針對運行時間內部使用所設計。 雖然現在支援第三方使用,但建議您盡可能使用 ICorDebug 和 ICorProfiler API。
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
| 會員 | 說明 |
|---|---|
identityPointer |
COM 身份指標的位址。 |
unknownPointer |
指標的 IUnknown 地址。 |
managedObject |
與 RCW 相關聯的受管理物件位址。 |
jupiterObject |
與之相關的木星天體地址。 |
vtablePtr |
vtable 指標的位址。 |
creatorThread |
創建 RCW 的討論串地址。 |
ctxCookie |
RCW 的上下文 Cookie。 |
refCount |
RCW 的參考數量。 |
interfaceCount |
與 RCW 相關的介面數量。 |
isJupiterObject |
一個表示RCW是否代表木星天體的數值。 |
supportsIInspectable |
一個表示 RCW 是否支援 IInspectable的值。 |
isAggregated |
一個表示 RCW 是否被彙總的值。 |
isContained |
一個表示 RCW 是否被包含的數值。 |
isFreeThreaded |
一個表示 RCW 是否為自由螺緒的值。 |
isDisconnected |
一個表示 RCW 是否斷開的數值。 |
Request |
透過呼叫 ISOSDacInterface::GetRCWData來填充結構。 |
IsDCOMProxy |
當該介面可用時,透過使用 ISOSDacInterface2::IsRCWDCOMProxy,判定 RCW 是否為 DCOM 代理。 |
Remarks
此結構位於運行時間內,不會透過任何標頭或庫檔案公開。 使用時,請依上述定義結構。
要求
平台:請參閱系統需求。
標題: 沒
圖書館: 沒
.NET Framework 版本:自 4.7 版本起可用