SetWindowText

Shakie

Erfahrenes Mitglied
Ich möchte den Text einer TextBox eines laufenden Programms ändern. Da ich das hWnd der TextBox kenne, dachte ich mir, ich verwende folgenden Code:
Code:
Public Declare Function SetWindowText Lib "user32" Alias _
"SetWindowTextA" (ByVal hwnd As Long, _
ByVal lpString As String) As Long

'Hiermit den Text ändern:
dim lnghWnd as long

lnghWnd = 12345       'angenommen, 12345 sei der richtige Wert

SetWindowText lnghWnd, "Neuer Text"
Allerdings funktioniert das bei mir NUR, wenn die TextBox zur Anwendung selber gehört!
Beispiel:
Anwendung 1 möchte den Text der TextBox von Anwendung 2 ändern.
DAS GEHT NICHT!
Anwendung 1 möchte den Text der eigenen TextBox, also von Anwendung 1 ändern.
DAS GEHT!
Noch verwirrender:
Wenn ich als lnghWnd das hWnd der Form von Anwendung 2 nehme, dann kann ich die Beschriftung (Form.Caption) der 2. Anwendung ändern!
Ich versteh das nicht! Hat jemand eine Erklärung dafür?

P.S. Bin ab morgen bis Mittwoch im Urlaub :-)
 
Zurück