Fensterinhalt auslesen



  • Ich möchte gerne automatisiert Felder(Inhalt sind Zahlen oder Buchstaben) einer GUI (basierend auf der WinApi auslesen).

    Soweit mir bekannt ist, ist es (legalerweise?) nicht möglich,über den Arbeitsspeicher
    auf den Inhalt eines Fensters direkt zuzugreifen.

    Die GUI erlaubt es, mit dem Mauszeiger direkt in die Felder zu gehen, den entsprechenden Bereich manuell zu markieren und in die Zwischenablage zu kopieren.

    Da sich die betreffenden Felder immer an der gleichen Stelle des Fensters(Bildschirem) befinden, müßte man diesen Vorgang doch automatisieren können.

    Leider habe ich überhaupt keine Vorstellung davon, wie man so etwas angehen könnte.
    Vermutlich muss man die WinAPI entsprechend manipulieren.

    Kann mir da jemand ein paar Tips geben?



  • Da sich die betreffenden Felder immer an der gleichen Stelle des Fensters(Bildschirem) befinden, müßte man diesen Vorgang doch automatisieren können.

    was machst du bei einer anderen auflösung vom bildschirm...
    dann befinden sich die steuerelemente nicht mehr an der selben stelle.

    aber du kannst anderst vorgehen.
    besorge dir über spy die id's der entsprechenden steuerelemente(felder)

    dann besorgst du dir mit FindWindow das Handle des Fensters in dem deine Steuerelemente sind die du auslesen willst.
    Mit diesem Handle und den gewonnenen id's durch spy läst du dir das Handle der Steuerelemente mit GetDlgItem ausgeben.

    danach ist es ein kinderspiel dir via SendMessage und EM_SETSEL & WM_COPY das gewünschte in die zwischenablage zu kopieren.

    Anbei noch ein paar hilfreiche links...
    Windows API List
    Windows
    Edit Control Reference
    Rich Edit Control Reference


Anmelden zum Antworten