EConvertError '%P' weist doch auf einen FormatString Fehler hin, also in Form von:
Code:
[b][...][/b]
ShowMessage(Format('Pointer = %p', [text] ));
[b][...][/b]
Richtig:
Code:
[b][...][/b]
[b] var[/b]
text : [b]string[/b];
[b]begin[/b]
Trxt := 'Hallo';
ShowMessage(Format('Pointer = %p', [@text]));
ShowMessage(Format('Pointer = %p', [addr(text)]));
[b]end;[/b]
Zitat:
%P Zeiger: Das Argument muß ein Zeigerwert sein. Der Wert wird in einen String mit acht Zeichen, der den hexadezimalen Wert des Zeigers darstellt, konvertiert.