IDebugDataSpaces4 ::ReadMultiByteStringVirtualWide, méthode (dbgeng.h)

La méthode ReadMultiByteStringVirtualWide lit une chaîne à valeurs null et multioctets de la cible et la convertit en Unicode.

Syntaxe

HRESULT ReadMultiByteStringVirtualWide(
  [in]            ULONG64 Offset,
  [in]            ULONG   MaxBytes,
  [in]            ULONG   CodePage,
  [out, optional] PWSTR   Buffer,
  [in]            ULONG   BufferSize,
  [out, optional] PULONG  StringBytes
);

Paramètres

[in] Offset

Spécifie l’emplacement de la chaîne dans l’espace d’adressage virtuel du processus.

[in] MaxBytes

Spécifie le nombre maximal d’octets à lire à partir de la cible.

[in] CodePage

Spécifie la page de codes à utiliser pour convertir la chaîne multioctet lue à partir de la cible en chaîne Unicode. Par exemple, CP_ACP est la page de codes ANSI.

[out, optional] Buffer

Reçoit la chaîne de la cible. Si tampon est NULL, ces informations ne sont pas retournées.

[in] BufferSize

Spécifie la taille, en caractères, de la mémoire tampon tampon.

[out, optional] StringBytes

Reçoit la taille, en octets, de la chaîne dans la cible. Si StringBytes est NULL, ces informations ne sont pas retournées.

Valeur de retour

Retourner le code Description
S_OK
La méthode a réussi.
S_FALSE
La méthode n’a pas réussi.
E_INVALIDARG
Un point de terminaison Null n’a pas été trouvé après avoir lu MaxBytes à partir de la cible.
 

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

Remarques

Le moteur lit jusqu’à MaxBytes à partir de la cible, à la recherche d’un point de terminaison Null. Si la chaîne comporte plus de bufferSize caractères, la chaîne est tronquée pour s’adapter à tampon.

Notez que même si S_OK est retourné, la mémoire tampon n’a peut-être pas été suffisamment grande pour stocker la chaîne. Dans ce cas, la chaîne est tronquée pour s’adapter à tampon. La chaîne tronquée est terminée par null si tampon a de l’espace pour au moins un caractère. Une fois l’appel retourné, vérifiez si *StringBytes est plus grand que BufferSize.

Exigences

Exigence Valeur
plateforme cible Bureau
d’en-tête dbgeng.h (include Dbgeng.h, Winnls.h)

Voir aussi

IDebugDataSpaces4

readMultiByteStringVirtual

ReadUnicodeStringVirtualWide