Suchergebnisse

Suchergebnisse 1-4 von insgesamt 4.

  • Benutzer-Avatarbild

    Unter Fernsteuerung eines Programms verstehe ich, dieses Programm, die „GUI“, von einem anderen Programm aus so zu bedienen, als würde der Benutzer sie mit Maus und Tastatur selbst bedienen. Ich verstehe nicht darunter, eine Seite in einem Webbrowser zu bedienen. "Fenster" ist im folgenden ein Oberbegriff für alle möglichen Controls, das, was in C/C++ ein "Fensterhandle" (Handle) hat. Was wollen wir alles bei der Fernsteuerung tun? - Fenstertexte lesen - Fenstertexte schreiben - Button klicken -…

  • Benutzer-Avatarbild

    Bevor wir weiter machen wollen wir das ganze "Gehandle" ordentlich strukturieren und aufräumen. Das bietet gleichzeitig die Möglichkeit, den Code auch in anderen Projekten ganz einfach nachzunutzen. Wir machen uns eine separate Klasse, in der alle API-Deklarationen und alle statischen Prozeduren zusammengefasst werden. Microsoft schlägt für eine solche Klasse den Namen NativeMethods vor: C#-Quellcode (11 Zeilen)Wenn wir dann von dem eigenen Programm drauf zugreifen, greifen wir mit dem Klassenna…

  • Benutzer-Avatarbild

    Nun wollen wir die Controls ansteuern, fangen wir an mit dem Drücken eines Buttons. Das ganze besteht aus zwei Teilen:1. Finden des Buttons, 2. Drücken des Buttons. Üblicherweise sind Buttons in einem Fenster einzigartig beschriftet, es gibt keine 2 Button mit demselben Text. Falls doch, siehe oben, dann müssen alle Button identifiziert und die Handles (IntPtr) zugeordnet werden. Mit C#-Quellcode (1 Zeile)bekommen wir den Pointer auf den Button, wobei className der Klassenname "button" und wndTe…

  • Benutzer-Avatarbild

    Heute wollen wir uns mit einer MessageBox befassen. Analog können wir auch angezeigte Dialoge behandeln. Wenn wir eine MessageBox angezeigt bekommen, müssen wir sie auch gezielt bedienen können. Deswegen lasse ich im Testprogramm YesNoCancel anzeigen, und je nach gedrücktem Button wird zur Kontrolle im Label "Ja", "Nein" bzw. "Abbrechen" angezeigt. Das einzige Problem besteht darin, das Fensterhande der MessageBox zu finden: Wir suchen ein Fenster, von dem wir genau zwei Dinge wissen: Seinen Fen…