Аж самому смешно

:
Код:
Function PointerToStr(P: Pointer): String;
Var
B: Byte;
i: Integer;
begin
i:= 0; Result:= '';
While B <> $20 Do
begin
Asm
mov edx, [P]
add edx, i
mov eax, [edx]
mov B, al
end;
Inc(i);
if B <> $20 Then Result:= Result + Chr(B);
end;
end;
Точно не помню String $20 заканчуется. Но ф-нц работает.