Compartir a través de


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

El método SearchVirtual2 busca en la memoria virtual del proceso un patrón de bytes especificado.

Sintaxis

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 la ubicación en el espacio de direcciones virtuales del proceso para empezar a buscar el patrón.

[in] Length

Especifica hasta dónde buscar el patrón. Una coincidencia correcta requiere que se encuentre todo el patrón antes de que se examinen los bytes de longitud .

[in] Flags

Especifica un campo de bits de marcas para la búsqueda. Actualmente, la única marca de bits que se puede establecer es DEBUG_VSEARCH_WRITABLE_ONLY, lo que restringe la búsqueda a memoria grabable.

[in] Pattern

Especifica el patrón que se va a buscar.

[in] PatternSize

Especifica el tamaño, en bytes, del patrón. Debe ser un múltiplo de la granularidad del patrón.

[in] PatternGranularity

Especifica la granularidad del patrón. Para una coincidencia correcta, la diferencia entre la ubicación del patrón encontrado y Offset debe ser un múltiplo de PatternGranularity.

[out] MatchOffset

Recibe la ubicación en el espacio de direcciones virtuales del proceso del patrón, si se encontró.

Valor devuelto

Este método también puede devolver valores de error. Consulte Valores devueltos para obtener más detalles.

Código devuelto Descripción
S_OK
Método realizado correctamente.
HRESULT_FROM_NT(STATUS_NO_MORE_ENTRIES)
Después de examinar bytes de longitud , no se encontró el patrón.

Comentarios

Este método busca en la memoria virtual del destino la primera aparición, sujeta a granularidad, del patrón que está completamente contenido en los bytes length de la memoria del destino, empezando por la ubicación offset .

PatternGranularity se puede usar para garantizar la alineación de la coincidencia con respecto a Offset. Por ejemplo, se puede usar un valor de 0x4 para requerir la alineación con un DWORD. Se puede usar un valor de 0x1 para permitir que el patrón comience en cualquier lugar.

Requisitos

Requisito Value
Plataforma de destino Escritorio
Encabezado dbgeng.h (incluir Dbgeng.h)

Consulte también

IDebugDataSpaces4

SearchVirtual