IDebugComPlusSymbolProvider::GetEntryPoint

检索应用程序入口点。

语法

int GetEntryPoint(
    uint              ulAppDomainID,
    Guid              guidModule,
    out IDebugAddress ppAddress
);

参数

ulAppDomainID
[in]应用程序域的标识符。

guidModule
[in]模块的唯一标识符。

ppAddress
[out]返回由 IDebugAddress 接口表示的 入口点。

返回值

如果成功,则返回 S_OK;否则,返回错误代码。

示例

以下示例演示如何为公开 IDebugComPlusSymbolProvider 接口的 CDebugSymbolProvider 对象实现此方法。

HRESULT CDebugSymbolProvider::GetEntryPoint(
    ULONG32 ulAppDomainID,
    GUID guidModule,
    IDebugAddress **ppAddress
)
{
    HRESULT hr = S_OK;
    CComPtr<CModule> pModule;
    Module_ID idModule(ulAppDomainID, guidModule);

    ASSERT(IsValidObjectPtr(this, CDebugSymbolProvider));
    ASSERT(IsValidWritePtr(ppAddress, IDebugAddress *));

    METHOD_ENTRY( CDebugSymbolProvider::GetEntryPoint );

    IfFalseGo( ppAddress, E_INVALIDARG );

    *ppAddress = NULL;

    IfFailGo( GetModule( idModule, &pModule) );

    IfFailGo( pModule->GetEntryPoint( ppAddress ) );

Error:

    METHOD_EXIT( CDebugSymbolProvider::GetEntryPoint, hr );

    return hr;
}

另请参阅