Fremde Delphi Anwendung mit VB.net steuern -> API?

Gast #6441723
Lesenswert?
• ▲
▼
Hey Leute,

Ich will eine fremde Delphi Anwendung mit VB.net steuern.
Es soll ein TabSheet ausgewählt und mit der Maustaste angewählt werden.
Generell habe ich sowas ähnliches schon gemacht.
Damals wars aber ein Button.

NUR:
Es soll ein TabSheet eines TapControls angewählt werden.
Den Aufbau habe ich schon mit Spay++ herausgefunden.
Das Tabsheet was ausgewählt werden soll heisst "Bestellungen".

Nun mein Problem:
Welche API Function nehme ich dafür her?
Mit FindWindowEx das Handle ergattern?  (FindWindowEx(MyAppEinHandle, 
vbnull, "TTabSheet",  "Bestellungen")) ?
Und danach mit SendMessage BM_CLICK das TabSheet auswählen?

Oder gibt es eine einfachere Variante?
Angehängte Dateien:
Gast #6442071
Lesenswert?
• ▲
▼
KErs schrieb:

> Oder gibt es eine einfachere Variante?

Nicht wirklich. Wie Dirk K. schrieb, ist die einzige Möglichkeit das 
Nachahmen von möglichen Benutzereingaben.

Allerdings sind Delphi-Anwendungen üblicherweise voll 
Tastatur-steuerbar. Das vereinfacht vieles. Insbesondere kann man so um 
das Aufdröseln der Fensterhandles herumkommen.

Blöderweise ist es aber auch so, dass man dann ein deutlich verstärktes 
Problem durch mögliche gleichzeitige Benutzeraktivitäten hat. Ich würde 
also definitiv den Weg über die Enumeration der Handles empfehlen. Nur 
für den Fall, dass gleichzeitige Benutzeraktivitäten vollkommen 
ausgeschlossen werden können, würde ich den Weg über die 
Tastatureingaben wählen.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 6 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.