IDebugMemoryBytes2::ReadAt
Lê uma sequência de bytes, começando em um determinado local.
Sintaxe
int ReadAt(
IDebugMemoryContext2 pStartContext,
uint dwCount,
byte[] rgbMemory,
out uint pdwRead,
ref uint pdwUnreadable
);
Parâmetros
pStartContext
[em] O objeto IDebugMemoryContext2 que especifica onde começar a ler bytes.
dwCount
[em] O número de bytes a serem lidos. Também especifica o rgbMemory
comprimento da matriz.
rgbMemory
[dentro, fora] Matriz preenchida com os bytes realmente lidos.
pdwRead
[saiu] Retorna o número de bytes contíguos realmente lidos.
pdwUnreadable
[dentro, fora] Retorna o número de bytes ilegíveis. Pode ser um valor nulo se o cliente não estiver interessado no número de bytes ilegíveis.
Valor de retorno
Se for bem-sucedido, retorna S_OK; caso contrário, retornará um código de erro.
Comentários
Se 100 bytes forem solicitados e os primeiros 50 forem legíveis, os próximos 20 forem ilegíveis e os 30 restantes forem legíveis, esse método retornará:
*pdwRead
= 50
*pdwUnreadable
= 20
Nesse caso, porque *pdwRead + *pdwUnreadable < dwCount
, o chamador deve fazer uma chamada adicional para ler os 30 bytes restantes dos 100 solicitados originais e o objeto IDebugMemoryContext2 passado no pStartContext
parâmetro deve ser avançado em 70.