Méthode IDebugDataSpaces4 ::ReadVirtual (dbgeng.h)

La méthode ReadVirtual lit la mémoire de l’espace d’adressage virtuel de la cible.

Syntaxe

HRESULT ReadVirtual(
  [in]            ULONG64 Offset,
  [out]           PVOID   Buffer,
  [in]            ULONG   BufferSize,
  [out, optional] PULONG  BytesRead
);

Paramètres

[in] Offset

Spécifie l’emplacement dans l’espace d’adressage virtuel de la cible à lire.

[out] Buffer

Spécifie la mémoire tampon dans laquelle lire la mémoire.

[in] BufferSize

Spécifie la taille en octets de la mémoire tampon. Il s’agit également du nombre d’octets demandés.

[out, optional] BytesRead

Reçoit le nombre d’octets qui ont été lus. Si elle est définie sur NULL, ces informations ne sont pas retournées.

Valeur retournée

Code de retour Description
S_OK
La méthode a réussi. Il est possible que BytesRead soit inférieur à BufferSize, mais qu’au moins un octet de données ait été retourné.
 

Cette méthode peut également retourner des valeurs d’erreur. Pour plus d’informations, consultez Valeurs de retour.

Remarques

Cette méthode remplit la mémoire tampon avec le contenu de la mémoire dans l’espace d’adressage virtuel de la cible.

Cette méthode peut référencer un cache de données mémoire lors de la récupération de données. Si les données sont volatiles, comme l’état matériel mappé en mémoire, utilisez plutôt ReadVirtualUncached .

Lors de la lecture de la mémoire qui contient des pointeurs, ces pointeurs sont destinés à l’espace d’adressage virtuel de la cible et non à celui du moteur. Par exemple, si une structure de données contenait une chaîne, un deuxième appel à cette méthode peut être nécessaire pour lire le contenu de la chaîne.

Configuration requise

Condition requise Valeur
Plateforme cible Desktop (Expérience utilisateur)
En-tête dbgeng.h (inclure Dbgeng.h)

Voir aussi

IDebugDataSpaces

IDebugDataSpaces2

IDebugDataSpaces3

IDebugDataSpaces4

ReadVirtualUncached

WriteVirtual