IDkmMemoryOperation.ReadMemoryString(DkmProcess, UInt64, DkmReadMemoryFlags, UInt16, Int32) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Lê uma cadeia de caracteres terminada em nulo da memória do processo do processo de destino. Isso pode ser usado para ler cadeias de caracteres ANSI ou Unicode (UTF-8, UTF-16 ou UTF-32).
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()
Parâmetros
- process
- DkmProcess
No DkmProcess representa um processo de destino que está sendo depurado. O depurador debugs processa, portanto, essa é a unidade básica de depuração. Um DkmProcess pode representar um processo do sistema ou um processo virtual, como minidespejos.
- address
- UInt64
No O endereço base do qual ler a memória do processo de destino.
- flags
- DkmReadMemoryFlags
No Sinalizadores que controlam o comportamento de DkmProcess. ReadMemory e DkmProcess. ReadMemoryString.
- characterSize
- UInt16
No Número de bytes em cada caractere. Isso deve ser definido como 1 (ANSI/UTF-8), 2 (UTF-16) ou 4 (UTF-32).
- maxCharacters
- Int32
No O número máximo de caracteres a serem lidos do processo de destino. Quando DkmReadMemoryFlags. AllowPartialRead for false, a solicitação falhará se um terminador nulo não for encontrado dentro desse intervalo. Esse valor deve ser razoável. A implementação da Microsoft falhará em qualquer solicitação por mais de 25 MB de memória de cadeia de caracteres.
Retornos
- Byte[]
Fora O valor da cadeia de caracteres que foi lida do processo de destino. Se DkmReadMemoryFlags. AllowPartialRead for claro, essa memória sempre incluirá o caractere de terminação nula. Se DkmReadMemoryFlags. AllowPartialRead for especificado, esse buffer não conterá o caractere de terminação nulo se a leitura tiver sido truncada.
Exceções
E_STRING_TOO_LONG indica que a cadeia de caracteres não pôde ser lida dentro do número máximo especificado de caracteres.