REVELAR

Fórum Ler WideString de Memória #336601

22/01/2007

0

Tenho um ponteiro (Pointer) indicando uma área de memória, onde
neste espaço tem gravado uma string no padrão UNICODE.
Pude perceber que para cada caracter ele ocupa 2 bytes mais
um no total da string ou seja, se o conteúdo é de 30 caracteres
ele faz (30 + 1) * 2. Como transformar esse conteúdo em uma
AnsiString (String normal) ?

Já tentei o seguinte mas NÃO funcionou....

Var
pData: Pointer; ... (Conteúdo Original)
p: PByte;
sValor: String;
begin
// Pega o Valor... Usei dessa forma porque vi em Um Exemplo...
p := PByte(LongWord(pData) + 8);

// Atribui para uma variável tipo String
sValor := WideCharToString(PWideChar(p));


Alguem tem alguma dica ....???


Mcd

Mcd

Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar