|
|
|
|
Anwendungsfälle
Softhema JPA - Java Process Automation API
|
|
|
Auf einem Betriebssystem mit einer graphischen Benutzeroberfläche
gibt es eine Reihe von Objekten wie Prozesse (Anwendungen),
Programmmodule (ausführbare Dateien und dynamische Bibliotheken),
Threads und graphische Fenster.
Die Verwaltung dieser Objekte wird auf verschiedenen Plattformen mehr oder weniger ähnlich realisiert. Programmmodule und Threads sind Teile eines Prozesses. Die Fenster gehören zu den Ressourcen, welche ein Prozess belegen kann. Genauer gesagt werden die Fenster von einem Thread eines Prozesses erzeugt und verwaltet.
Auftretende Ereignisse werden dann von diesem Benutzeroberflächenthread verarbeitet.
Die JPA-API ermöglich Ihnen den Zugriff auf diese Betriebssytem-Objekte.
Darüber hinaus können Sie Manipulationen durchführen und auf Ereignisse reagieren.
Die Anwendungsfälle, welche sich Ihnen eröffnen sind vielfältig.
Zum Beispiel können Arbeitsschritte in Anwendungen, welche normalerweise
die Anwesenheit eines Benutzers erfordern, automatisiert werden.
Es folgt eine Kurzbeschreibung der Objekte und eine
stichpunktartige Beschreibung darauf anwendbarer Operationen.
|
|
|
Was ist ein Prozess?
Unter einem Prozess ist ein Vorgang zu verstehen, bei dem ein Programm ausgeführt wird.
Ein Prozess belegt während seiner Ausführung Systemressourcen. Zu den Systemressourcen
gehören ein virtueller Arbeitsspeicher sowie Betriebssystem-Objekte wie Fenster, Handles, Threads...
Synonyme:
Prozess, Anwendung, Programm
Operationen:
-
Abfrage der laufenden Prozesse
-
Starten einer Anwendung, wodurch ein neuer Prozess erzeugt wird
-
Beenden eines Prozesses
|
|
|
Was ist ein Programmmodul?
Ein Programmmodul ist eine Datei, welche ausführbaren Maschinencode beinhaltet.
Ein wichtiges Programmmodul ist die ausführbare Datei.
Unter dem Betriebssystem Microsoft Windows trägt die ausführbare Datei
die Erweiterung exe. Um einen neuen Prozess anzustoßen, muss beim
Start eines Programmes die ausführbare Datei angegeben werden. Die ausführbare Datei wird
vom Loader des Betriebssystems
in den virtuellen Arbeitsspeicher des neuen Prozesses geladen. Die weitere Programmausführung
kann das Nachladen von sogenannten dynamischen Bibliotheksmodulen zur Folge haben.
Bei einem Bibliotheksmodul handelt es sich um eine Datei,
welche den Maschinencode von Funktionen enthält. Jede Funktion hat bestimmte
Übergabeparameter und einen Rückgabewert. Unter Microsoft Windows
wird ein Bibliotheksmodul DLL (Dynamic Link Library) bezeichnet. Eine DLL besitzt eine Exporttabelle,
welche dass Auffinden einer Funktion innerhalb einer DLL über einen Bezeichner ermöglicht.
Synonyme:
Anwendungsdatei, ausführbare Datei, Executable
Bibliothek, DLL (Dynamic Link Library), Funktionssammlung
Operationen:
-
Abfrage der Module eines Prozesses
-
Bestimmen der ausführbaren Datei eines Prozesses
-
Laden einer dynamischen Bibliothek und Aufruf von Bibliotheksfunktionen
|
|
|
Was ist ein Thread?
Ein Thread ist für die Ausführung eines Programmes verantwortlich. Ein Thread arbeitet
nacheinander die Anweisungen eines Programmes ab. Nach dem Start eines Prozesses wird
zunächst ein initialer Thread erzeugt. Dieser Thread beginnt mit die Ausführung
in der ausführbaren Datei. In der ausführbaren Datei existiert dazu ein Einsprungpunkt,
wo der Thread mit der Abarbeitung des Programms beginnt.
Synonyme:
Programmfaden
Operationen:
-
Abfrage der Threads eines Prozesses
-
Abfrage der Fenster eines Threads
-
Zustand eines Threads
|
|
|
Was ist ein Fenster?
Fenster haben sich auf vielen Plattformen mit einer graphischen Benutzeroberfläche durchgesetzt.
Unter einem Fenster versteht man einen rechteckigen Bereich auf dem Bildschirm,
über dem graphische
Ausgaben erfolgen. Fenster werden von einem Thread erzeugt. Ein solcher Thread wird
Benutzeroberflächenthread genannt. Das Zeichnen in den Innenbereich des Fensters
wird von diesem Thread durchgeführt. Jedes Fenster besitzt bestimmte Eigenschaften,
welche seine Funktion bestimmen. Grob lassen sich Fenster in Toplevel-Fenster und in
Kindfenster unterteilen. Ein Toplevel-Fenster schwebt über dem Desktop. Zumeist verfügen
Toplevel-Fenster über einen Rahmen und eine Titelzeile. Über die Titelzeile lässt
sich das Fenster verschieben und neu positionieren. Mit Hilfe des Rahmens kann die Größe
eines Fensters geändert werden. Solche Toplevel-Fenster werden als Rahmen- oder Dialogfenster
bezeichnet. Fenster lassen sich nun auch ineinander schachteln. Ist ein Fenster einem
anderen Fenster untergeordnet, so wird es als Kindfenster bezeichnet.
Spezielle Kindfenster sind Steuerelementfenster. Steuerelementfenster realisieren das
Aussehen und Verhalten von Steuerelementen wie Schaltflächen, Kontrollkästchen,
Listenfeldern, Kombinationslistenfeldern, etc..
Synonyme:
Window, Widget (Window gadget)
Operationen:
-
Ermitteln der Toplevel-Fenster auf der Plattform, eines Prozesses oder eines Threads
-
Reagieren auf Fensterereignisse
-
Zeichnen in ein Fenster
Im folgenden werden für die Operationen auf
Prozessen, Modulen, Threads und Fenstern einige Anwendungsfälle aufgeführt.
|
|
Systemanwendungen automatisiert ausführen
|
|
Zielbestimmung:
Möglichkeiten zur Problemlösung:
|
|
Bildschirmschnappschuss erstellen
|
|
Zielbestimmung:
Möglichkeiten zur Problemlösung:
|
|
Berechnungsergebnisse über eine Internetanwendung bereitstellen
|
|
Zielbestimmung:
Möglichkeiten zur Problemlösung:
|
|
Zeichnen innerhalb einer Grafikanwendung
|
|
Zielbestimmung:
Möglichkeiten zur Problemlösung:
|
|
Warten auf eine Benutzerinteraktion
|
|
Zielbestimmung:
Möglichkeiten zur Problemlösung:
|
|
Verbesserungen und Erweiterungen für Anwendungen bereitstellen
|
|
Zielbestimmung:
Möglichkeiten zur Problemlösung:
|
|
Zugriff auf plattformspezifische Registrierungsinformationen
|
|
Zielbestimmung:
Möglichkeiten zur Problemlösung:
|
|
Plattformspezifische Kommunikationsmöglichkeiten mit Anwendungen
|
|
Zielbestimmung:
Möglichkeiten zur Problemlösung:
|
|
|