ICorDebugReferenceValue

更新:2007 年 11 月

提供用于对一个值进行管理的方法,该值是对对象的引用。(也就是说,此接口提供对指针进行管理的方法。)此接口实现 ICorDebugValue

interface ICorDebugReferenceValue : ICorDebugValue {
        
    HRESULT Dereference (
        [out] ICorDebugValue  **ppValue
    );
        
    HRESULT DereferenceStrong (
        [out] ICorDebugValue  **ppValue
    );
        
    HRESULT GetValue (
        [out] CORDB_ADDRESS   *pValue
    );
        
    HRESULT IsNull (
        [out] BOOL            *pbNull
    );
        
    HRESULT SetValue (
        [in] CORDB_ADDRESS    value
    );
        
};

方法

方法

说明

ICorDebugReferenceValue::Dereference 方法

获取所引用的对象。

ICorDebugReferenceValue::DereferenceStrong 方法

未实现。请勿调用此方法。

ICorDebugReferenceValue::GetValue 方法

获取所引用对象的当前内存地址。

ICorDebugReferenceValue::IsNull 方法

获取一个值,该值指示此 ICorDebugReferenceValue 是否为 Null 值,如果为 Null 值,ICorDebugReferenceValue 将不指向对象。

ICorDebugReferenceValue::SetValue 方法

设置当前内存地址。也就是说,此方法将此 ICorDebugReferenceValue 设置为指向对象。

备注

当调试进程继续时,公共语言运行库 (CLR) 可能会对对象进行垃圾回收。垃圾回收可能在内存中移动对象。ICorDebugReferenceValue 将与垃圾回收协同以便在垃圾回收后更新其信息,或在垃圾回收之前被隐式设置为失效。

在调试的进程继续后,ICorDebugReferenceValue 对象可能会被隐式设置为失效。派生的 ICorDebugHandleValue 在显式发布或公开前,不会被设置为失效。

要求

**平台:**请参见 .NET Framework 系统要求

**头文件:**CorDebug.idl

**库:**CorGuids.lib

**.NET Framework 版本:**3.5 SP1、3.5、3.0 SP1、3.0、2.0 SP1、2.0、1.1、1.0

请参见

参考

ICorDebugHandleValue

ICorDebugValue

其他资源

调试接口