Método de IHostMemoryManager::VirtualQuery

Serve como um wrapper lógico para a função correspondente do Win32. A implementação do Win32 de VirtualQuery recupera informações sobre um intervalo de páginas no espaço de endereço virtual do processo de chamada.

HRESULT VirtualQuery (
    [in]  void*    lpAddress,
    [out] void*    lpBuffer,
    [in]  SIZE_T   dwLength,
    [out] SIZE_T*  pResult
);

Parâmetros

  • lpAddress
    [in] Um ponteiro para o endereço de memória virtual a ser consultado.

  • lpBuffer
    [out] Um ponteiro para uma estrutura que contém informações sobre a região de memória especificado.

  • dwLength
    [in] O tamanho, em bytes, do buffer que lpBuffer aponta para.

  • pResult
    [out] Um ponteiro para o número de bytes retornados pelo buffer de informações.

Valor de retorno

HRESULT

Descrição

S_OK

VirtualQueryretornado com êxito.

HOST_E_CLRNOTAVAILABLE

O common language runtime (CLR) não foi carregado em um processo ou o CLR é em um estado em que ele não é possível executar código gerenciado ou processar a chamada com êxito.

HOST_E_TIMEOUT

A chamada foi esgotado.

HOST_E_NOT_OWNER

O chamador não possui o bloqueio.

HOST_E_ABANDONED

Um evento foi cancelado, enquanto um segmento bloqueado ou fibra estava esperando por ele.

E_FAIL

Ocorreu uma falha catastrófica desconhecida. Quando um método retorna E_FAIL, o CLR não é usável dentro do processo. As chamadas subseqüentes para hospedar os métodos retornam HOST_E_CLRNOTAVAILABLE.

Comentários

VirtualQueryFornece informações sobre um intervalo de páginas no espaço de endereço virtual do processo de chamada. Essa implementação define o valor de pResult parâmetro para o número de bytes retornados no buffer de informações e retorna um valor HRESULT. No Win32 VirtualQuery função, o valor de retorno é o tamanho de buffer. Para obter mais informações, consulte a documentação da plataforma Windows.

Observação importanteImportante

A implementação do sistema operacional do VirtualQuery não aumentam o deadlock e pode ser executado até a conclusão com aleatórios threads suspensos no código do usuário.Muito cuidado ao implementar uma versão hospedada desse método.

Requisitos

Plataformas: Consulte Requisitos de sistema do .NET Framework.

Cabeçalho: MSCorEE.h

Biblioteca: Incluído como um recurso em mscoree

.NET Framework versões: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0

Consulte também

Referência

Interface de IHostMemoryManager