Condividi tramite


Metodo IDebugDataSpaces4::SearchVirtual2 (dbgeng.h)

Il metodo SearchVirtual2 cerca nella memoria virtuale del processo un criterio di byte specificato.

Sintassi

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

Parametri

[in] Offset

Specifica il percorso nello spazio indirizzi virtuale del processo per iniziare a cercare il modello.

[in] Length

Specifica la distanza di ricerca del criterio. Una corrispondenza con esito positivo richiede che l'intero modello venga trovato prima di esaminare lunghezza byte.

[in] Flags

Specifica un campo di bit di flag per la ricerca. Attualmente, l'unico flag di bit che può essere impostato è DEBUG_VSEARCH_WRITABLE_ONLY, che limita la ricerca alla memoria scrivibile.

[in] Pattern

Specifica il modello da cercare.

[in] PatternSize

Specifica le dimensioni, in byte, del modello. Deve trattarsi di un multiplo della granularità del modello.

[in] PatternGranularity

Specifica la granularità del modello. Per una corrispondenza corretta, la differenza tra la posizione del criterio trovato e offset deve essere un multiplo di PatternGranularity.

[out] MatchOffset

Riceve la posizione nello spazio indirizzi virtuale del processo del modello, se è stato trovato.

Valore restituito

Questo metodo può anche restituire valori di errore. Per altri dettagli, vedere valori restituiti.

Codice restituito Descrizione
S_OK
Il metodo ha avuto esito positivo.
HRESULT_FROM_NT(STATUS_NO_MORE_ENTRIES)
Dopo aver esaminato lunghezza byte, il criterio non è stato trovato.

Osservazioni

Questo metodo cerca la prima occorrenza della memoria virtuale della destinazione, soggetta alla granularità, del modello interamente contenuto nella Lunghezza byte della memoria della destinazione, a partire dalla posizione offset.

PatternGranularity può essere usato per garantire l'allineamento della corrispondenza rispetto all'offset . Ad esempio, un valore di 0x4 può essere usato per richiedere l'allineamento a una DWORD. È possibile usare un valore di 0x1 per consentire l'avvio del modello in qualsiasi punto.

Fabbisogno

Requisito Valore
piattaforma di destinazione Desktop
intestazione dbgeng.h (include Dbgeng.h)

Vedere anche

IDebugDataSpaces4

SearchVirtual