Zitat von
flotschie:
Zuerstmal hab ich die funktion mal so declared
Versuchs damit:
http://www.vbarchiv.net/vbapi/GetWindowTextLength.php
Warum lpString als ByVal definiert ist ist eine lange Geschichte
Kurzfassung der Interna:
- bei ByRef generiert der Compiler grundsätzlich Code, in welchem die Adresse der Variablen an die Funktion übergeben wird.
- bei ByVal generiert der Compiler fast immer Code, in welchem der Inhalt der Variablen an die Funktion übergeben wird - aber nicht für alle Typen (zum Beispiel wird bei Strings die Adresse des ersten Zeichens übergeben - die Grundregel ist: von allem was nicht in ein Prozessor-Register passt, wird die Adresse des ersten Bytes übergeben).
Eigentlich musst Du das nicht alles Wissen, da gerade die VB-Leute ware
API-Import-Freaks sind (Visual Basic war nicht dafür konzipiert Funktionen der
Win32-
API direkt aufzurufen...).
Google ist Dein Freund