Freigeben über


IDebugDataSpaces4::ReadMultiByteStringVirtualWide-Methode (dbgeng.h)

Die ReadMultiByteStringVirtualWide-Methode liest eine null-beendete Multibytezeichenfolge aus dem Ziel und konvertiert sie in Unicode.

Syntax

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

Parameter

[in] Offset

Gibt den Speicherort der Zeichenfolge im virtuellen Adressraum des Prozesses an.

[in] MaxBytes

Gibt die maximale Anzahl von Bytes an, die aus dem Ziel gelesen werden sollen.

[in] CodePage

Gibt die Codepage an, mit der die vom Ziel gelesene Multibytezeichenfolge in eine Unicode-Zeichenfolge konvertiert werden soll. Beispielsweise ist CP_ACP die ANSI-Codepage.

[out, optional] Buffer

Empfängt die Zeichenfolge vom Ziel. Wenn PufferNULL ist, werden diese Informationen nicht zurückgegeben.

[in] BufferSize

Gibt die Größe des Pufferpuffers in Zeichen an.

[out, optional] StringBytes

Empfängt die Größe der Zeichenfolge im Ziel in Bytes. Wenn StringBytesNULL ist, werden diese Informationen nicht zurückgegeben.

Rückgabewert

Rückgabecode BESCHREIBUNG
S_OK
Die Methode war erfolgreich.
S_FALSE
Die Methode war nicht erfolgreich.
E_INVALIDARG
Nach dem Lesen von MaxBytes aus dem Ziel wurde kein NULL-Abschlussator gefunden.
 

Diese Methode kann auch Fehlerwerte zurückgeben. Weitere Informationen finden Sie unter Rückgabewerte .

Hinweise

Die Engine liest bis maxBytes vom Ziel ein und sucht nach einem NULL-Abschlussator. Wenn die Zeichenfolge mehr als BufferSize-Zeichen enthält, wird die Zeichenfolge so abgeschnitten, dass sie in Buffer passt.

Beachten Sie, dass selbst wenn S_OK zurückgegeben wird, der Puffer möglicherweise nicht groß genug war, um die Zeichenfolge zu speichern. In diesem Fall wird die Zeichenfolge so abgeschnitten, dass sie in Puffer passt. Die abgeschnittene Zeichenfolge ist NULL-beendet, wenn Puffer über Platz für mindestens ein Zeichen verfügt. Nachdem der Aufruf zurückgegeben wurde, überprüfen Sie, ob *StringBytes größer als BufferSize ist.

Anforderungen

Anforderung Wert
Zielplattform Desktop
Kopfzeile dbgeng.h (einschließlich Dbgeng.h, Winnls.h)

Weitere Informationen

IDebugDataSpaces4

ReadMultiByteStringVirtual

ReadUnicodeStringVirtualWide