Das SizeOf bei GetWindowText ist falsch. Die Funktion möchte die maximale Anzahl an Zeichen (Char) haben und nicht die Byte-Größe (Quelle
MSDN: "The maximum number of characters to copy to the buffer").
Mit SizeOf(Buf) bekommst du ab Delphi 2009 (
Unicode) die doppelte Anzahl zurück, da SizeOf(Char) = 2 ist und somit "257*2" zurückkommt. GetWindowText möchte aber nicht die Byte-Größe, sondern die "Anzahl der verfügbaren Zeichen". Und die ermittelt man über Length.
Danke..
![Wink](images/smilies/icon_wink.gif)
Da hab ich wohl ein Thema angestoßen ich denke viel nicht Studierte Schreiber dürften damit probleme haben.
gruss