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