Ganz Allgemein: "Schnittstellen" wie z.B. "Windows-Messages".
Es werden Klassen und Objekte gefiltert, die ein GUI-Attribut (o.Ä.)
besitzen. Dessen "Speicherbereich" wird dann nach Inhalten (Member,
Propertys, Child-GUI-Objekte) durchsucht, und die Member werden
bekannt...
Das Testprogramm kann in ner Art "Sandbox" Ausgeführt werden, da kommt
man dann fast überall drann.
Oder etwas klemmt sich zwischen dem zu testenden Programm und der
Windows-API, (verglichen wie etwa eine Firewall o. Antivirus,) der die
Programm-Initialisierungen und Zugriffe Loggt bzw. verändern kann. (Iss
bisschen blöd beschrieben)
Ich denke aber dass muss für die jeweiligen "Crossplatform / Frameworks
(Java, WPF Xaml, Qt)" einzeln implementiert werden. Sonnst wird das doch
totales Rätzelraten.
Bei WPF XAML z.B über Reflection und das .Net Framework.
Bei Java über die JRE/JDK Runtime. Ich glaub das heißt da auch
Reflection.
Ich schrieb:
> bei Qt über das QMetaObject System.
Wenn das dann "reflected" (oder wie auch immer) ist, kann man sein
GUI-Objekt "ganz normal" über das jeweilige Framework \ Runtime \
Library anspechen: z.B. Form1.Slider1.Value = 75;
Würde mich aber auch interssieren ob´s da nen "Überall-Standard" gibt,
der dann auch zur Laufzeit geht...