IDkmMemoryOperation.ReadMemoryString(DkmProcess, UInt64, DkmReadMemoryFlags, UInt16, Int32) Methode

Definition

Liest eine NULL-terminierte Zeichenfolge aus dem Arbeitsspeicher des Ziel Prozesses. Dies kann zum Lesen von ANSI-oder Unicode-Zeichen folgen (UTF-8, UTF-16 oder UTF-32) verwendet werden.

public:
 cli::array <System::Byte> ^ ReadMemoryString(Microsoft::VisualStudio::Debugger::DkmProcess ^ process, System::UInt64 address, Microsoft::VisualStudio::Debugger::DkmReadMemoryFlags flags, System::UInt16 characterSize, int maxCharacters);
public byte[] ReadMemoryString (Microsoft.VisualStudio.Debugger.DkmProcess process, ulong address, Microsoft.VisualStudio.Debugger.DkmReadMemoryFlags flags, ushort characterSize, int maxCharacters);
abstract member ReadMemoryString : Microsoft.VisualStudio.Debugger.DkmProcess * uint64 * Microsoft.VisualStudio.Debugger.DkmReadMemoryFlags * uint16 * int -> byte[]
Public Function ReadMemoryString (process As DkmProcess, address As ULong, flags As DkmReadMemoryFlags, characterSize As UShort, maxCharacters As Integer) As Byte()

Parameter

process
DkmProcess

In Dkmprocess stellt einen Ziel Prozess dar, der debuggt wird. Der Debugger debuggt die Prozesse, sodass dies die grundlegende debugeinheit ist. Ein dkmprocess kann einen System Prozess oder einen virtuellen Prozess, z. b. Minidumps, darstellen.

address
UInt64

In Die Basisadresse, aus der der Arbeitsspeicher des Ziel Prozesses gelesen werden soll.

flags
DkmReadMemoryFlags

In Flags, die das Verhalten von dkmprocess. lesermemory und dkmprocess. Read memorystring steuern.

characterSize
UInt16

In Anzahl von Bytes in jedem Zeichen. Dieser Wert sollte auf 1 (ANSI/UTF-8), 2 (UTF-16) oder 4 (UTF-32) festgelegt werden.

maxCharacters
Int32

In Die maximale Anzahl von Zeichen, die aus dem Ziel Prozess gelesen werden sollen. Wenn "dkmlesememoryflags. allowpartialread" den Wert "false" aufweist, schlägt die Anforderung fehl, wenn ein NULL-Terminator nicht in diesem Bereich gefunden wird. Dieser Wert sollte vernünftig sein. Die Microsoft-Implementierung schlägt bei allen Anforderungen für mehr als 25 MB an Zeichen folgen Speicher fehl.

Gibt zurück

Byte[]

Vorgenommen Der Wert der Zeichenfolge, die aus dem Ziel Prozess gelesen wurde. Wenn dkmlesememoryflags. allowpartialread eindeutig ist, enthält dieser Speicher immer das NULL-Beendigungs Zeichen. Wenn dkmlesememoryflags. allowpartialread angegeben ist, enthält dieser Puffer das NULL-Beendigungs Zeichen nicht, wenn der Lesevorgang abgeschnitten wurde.

Ausnahmen

E_STRING_TOO_LONG gibt an, dass die Zeichenfolge nicht innerhalb der angegebenen maximalen Anzahl von Zeichen gelesen werden konnte.

Gilt für