Ich sitze gerade an ein Programm was bei einen Fremdprogramm ein Textfenster auslesen soll. Die Aufrufzeile lautet:
Leider funktioniert das nicht, der Cod ist richtig, weil andere Fenster antworten, nur das spezielle nicht, es ist vermutlich eine Routine eingebaut, die das verhindert. Aber wen ich mit der Maus den Text formatiere landet er automatisch in der Zwischenablage von Windows, ohne weiteres zutun. Meine Frage wie kann ich das nutzen, also praktisch umsetzen. Ich brauche ein paar Zeilen Cod, vieleicht kann Jemand es abändern.
Visual Basic:
Private Sub Timer1_Timer() 'hier wird das Textfenster ausgelesen
Dim hWnd As String
Dim lLength As Long
Dim sWindowText As String * 10024
hWnd = Text2.Text 'Handle des Textfensters
Text1.Text = "" 'Textinhalt vorher leeren
'Message wird geschickt an das Handle (Text2) zum auslesen
lLength = SendMessage(hWnd, WM_GETTEXT, _
Len(sWindowText) + 1, ByVal sWindowText)
'Ausgelesener Text landet in Text 1 auf der Form
Text1.Text = Left(sWindowText, lLength)
Text1.SelStart = lLength 'Text wird gescrollt
lLength = Len(Text1.Text)
End Sub