Partilhar via


IDebugComPlusSymbolProvider::GetEntryPoint

Recupera o ponto de entrada do aplicativo.

HRESULT GetEntryPoint(
   ULONG32         ulAppDomainID,
   GUID            guidModule,
   IDebugAddress** ppAddress
);
int GetEntryPoint(
   uint              ulAppDomainID,
   Guid              guidModule,
   out IDebugAddress ppAddress
);

Parâmetros

  • ulAppDomainID
    [in] Identificador para o domínio de aplicativo.

  • guidModule
    [in] Identificador exclusivo para o módulo.

  • ppAddress
    [out] Retorna o ponto de entrada, representado por um IDebugAddress interface.

Valor de retorno

Se bem-sucedida, retorna S_OK; Caso contrário, retorna um código de erro.

Exemplo

O exemplo a seguir mostra como implementar este método para um CDebugSymbolProvider objeto que expõe a IDebugComPlusSymbolProvider interface.

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;
}

Consulte também

Referência

IDebugComPlusSymbolProvider