Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Obtém a interface ICorDebugProcess que corresponde a um módulo CLR (Common Language Runtime) carregado no processo.
Sintaxe
HRESULT OpenVirtualProcess(
[in] ULONG64 moduleBaseAddress,
[in] IUnknown * pDataTarget,
[in] ICLRDebuggingLibraryProvider * pLibraryProvider,
[in] CLR_DEBUGGING_VERSION * pMaxDebuggerSupportedVersion,
[in] REFIID riidProcess,
[out, iid_is(riidProcess)] IUnknown ** ppProcess,
[in, out] CLR_DEBUGGING_VERSION * pVersion,
[out] CLR_DEBUGGING_PROCESS_FLAGS * pdwFlags);
Parâmetros
moduleBaseAddress [em] O endereço base de um módulo no processo de destino.
COR_E_NOT_CLR é retornado se o módulo especificado não for um módulo CLR.
pDataTarget [em] Uma abstração de destino de dados que permite que o depurador gerenciado inspecione o estado do processo. O depurador deve implementar o ICorDebugDataTarget interface. Você deve implementar a interface ICLRDebuggingLibraryProvider para oferecer suporte a cenários em que o CLR que está sendo depurado não está instalado localmente no computador.
pLibraryProvider [em] Uma interface de retorno de chamada do provedor de biblioteca que permite que bibliotecas de depuração específicas da versão sejam localizadas e carregadas sob demanda. Este parâmetro é necessário somente se ppProcess ou pFlags não nullfor .
pMaxDebuggerSupportedVersion [em] A versão mais alta do CLR que este depurador pode depurar. Você deve especificar as versões principal, secundária e de compilação da versão CLR mais recente suportada por este depurador e definir o número de revisão como 65535 para acomodar futuras versões de serviço CLR in-loco.
riidProcess [em] A ID da interface ICorDebugProcess para recuperar. Atualmente, os únicos valores aceitos são IID_CORDEBUGPROCESS3, IID_CORDEBUGPROCESS2e IID_CORDEBUGPROCESS.
ppProcess [saídas] Um ponteiro para a interface COM identificada pelo riidProcess.
pVersion [dentro, fora] A versão do CLR. Na entrada, esse valor pode ser null. Ele também pode apontar para uma estrutura CLR_DEBUGGING_VERSION , caso em que o campo da wStructVersion estrutura deve ser inicializado para 0 (zero).
Na saída, a estrutura retornada CLR_DEBUGGING_VERSION será preenchida com as informações de versão para o CLR.
pdwFlags [saídas] Sinalizadores informativos sobre o tempo de execução especificado. Para obter uma descrição das bandeiras, consulte CLR_DEBUGGING_PROCESS_FLAGS.
Valor de retorno
Esse método retorna os seguintes HRESULTs específicos, bem como erros HRESULT que indicam falha do método.
| HRESULTADO | Description |
|---|---|
| S_OK | O método foi concluído com êxito. |
| E_POINTER |
pDataTarget é null. |
| CORDBG_E_LIBRARY_PROVIDER_ERROR | O retorno de chamada ICLRDebuggingLibraryProvider retorna um erro ou não fornece um identificador válido. |
| CORDBG_E_MISSING_DATA_TARGET_INTERFACE |
pDataTarget não implementa as interfaces de destino de dados necessárias para esta versão do tempo de execução. |
| CORDBG_E_NOT_CLR | O módulo indicado não é um módulo CLR. Este HRESULT também é retornado quando um módulo CLR não pode ser detetado porque a memória foi corrompida, o módulo não está disponível ou a versão CLR é posterior à versão shim. |
| CORDBG_E_UNSUPPORTED_DEBUGGING_MODEL | Esta versão de tempo de execução não suporta este modelo de depuração. Atualmente, o modelo de depuração não é suportado por versões CLR antes do .NET Framework 4. O pwszVersion parâmetro de saída ainda está definido para o valor correto após esse erro. |
| CORDBG_E_UNSUPPORTED_FORWARD_COMPAT | A versão do CLR é maior do que a versão que este depurador afirma suportar. O pwszVersion parâmetro de saída ainda está definido para o valor correto após esse erro. |
| E_NO_INTERFACE | A riidProcess interface não está disponível. |
| CORDBG_E_UNSUPPORTED_VERSION_STRUCT | A CLR_DEBUGGING_VERSION estrutura não tem um valor reconhecido para wStructVersion. O único valor aceito no momento é 0. |
Exceptions
Observações
Requerimentos
Plataformas: Consulte Requisitos do sistema.
Cabeçalho: CorDebug.idl, CorDebug.h
Biblioteca: CorGuids.lib
Versões do .NET Framework: Disponível desde: 4
Versões .NET: Disponível desde: .NET Core 2.1