Compartilhar via


Método IDebugDataSpaces4::SearchVirtual2 (dbgeng.h)

O método SearchVirtual2 pesquisa a memória virtual do processo em busca de um padrão especificado de bytes.

Sintaxe

HRESULT SearchVirtual2(
  [in]  ULONG64  Offset,
  [in]  ULONG64  Length,
  [in]  ULONG    Flags,
  [in]  PVOID    Pattern,
  [in]  ULONG    PatternSize,
  [in]  ULONG    PatternGranularity,
  [out] PULONG64 MatchOffset
);

Parâmetros

[in] Offset

Especifica o local no espaço de endereço virtual do processo para começar a pesquisar o padrão.

[in] Length

Especifica até que ponto pesquisar o padrão. Uma correspondência bem-sucedida requer que todo o padrão seja encontrado antes que bytes de comprimento sejam examinados.

[in] Flags

Especifica um campo de bits de sinalizadores para a pesquisa. Atualmente, o único sinalizador de bit que pode ser definido é DEBUG_VSEARCH_WRITABLE_ONLY, o que restringe a pesquisa à memória gravável.

[in] Pattern

Especifica o padrão a ser pesquisado.

[in] PatternSize

Especifica o tamanho, em bytes, do padrão. Isso deve ser um múltiplo da granularidade do padrão.

[in] PatternGranularity

Especifica a granularidade do padrão. Para uma correspondência bem-sucedida, a diferença entre o local do padrão encontrado e Offset deve ser um múltiplo de PatternGranularity.

[out] MatchOffset

Recebe o local no espaço de endereço virtual do padrão do processo, se ele foi encontrado.

Retornar valor

Esse método também pode retornar valores de erro. Consulte Valores retornados para obter mais detalhes.

Código de retorno Descrição
S_OK
O método foi bem-sucedido.
HRESULT_FROM_NT(STATUS_NO_MORE_ENTRIES)
Depois de examinar bytes de comprimento , o padrão não foi encontrado.

Comentários

Esse método pesquisa a memória virtual do destino para a primeira ocorrência, sujeita à granularidade, do padrão que está totalmente contido nos bytes length da memória do destino, começando no local Deslocamento .

PatternGranularity pode ser usado para garantir o alinhamento da correspondência em relação a Offset. Por exemplo, um valor de 0x4 pode ser usado para exigir alinhamento a um DWORD. Um valor de 0x1 pode ser usado para permitir que o padrão comece em qualquer lugar.

Requisitos

Requisito Valor
Plataforma de Destino Área de Trabalho
Cabeçalho dbgeng.h (inclua Dbgeng.h)

Confira também

IDebugDataSpaces4

SearchVirtual