[C#] Fremdes GUI ansteuern

M.Ä.N.E

Stammgast
Hallo zusammen ich möchte mit einem selbst geschriebenen Programm ein anderes Programm über des GUI ansteuern, nur hab ich grad keinen blassen Schimmer wie ich das am besten anstellen soll, wie aus dem Titel ersichtlich arbeite ich mit C# bzw. Visual Studio 08. Kann ich direkt auf das Fenster Objekt zugreifen oder geht das nur über Virtuelle Klicks und Tastenanschläge?

Ich danke jetzt schon für eure Antworten.
 
Eine bereits gestartete fremde Anwendung bei der du ein Fenster ansprechen möchtest ist in diesem Sinn nicht möglich. Zumindest nicht mit sauberen Methoden.

Was würdest du dann genau ansprechen wollen?
 

M.Ä.N.E

Stammgast
Es wäre AutoGK und noch ein anderes Video Covertier Programm. DU hast gesagt ein bereits gestartetes Programm. Macht das einen unterschied wenn mein Programm das Programm startet? Das wäre sogar in meinem intresse das mein Programm das andere startet.
 
Wenn das Programm gestartet ist, kannst du das GUI sowieso nie direkt ansprechen, sondern AutoGK müsste das GUI dann als Parameter an deine Anwendung übergeben, was es ja mit grosser Wahrscheinlichkeit nicht tut.

Wenn du AutoGK aber starten willst indem du auch einige Parameter übergibst, kannst du das mit folgendem Code anstellen:

Code:
using System;
using System.Diagnostics;

class ArgumentHandler
{
    void StartAutoGK(string Arguments)
    {
        Process AutoGK = new Process(); // Konstruktor.
        
        AutoGK.StartInfo.FileName = "$AutoGK-Path$"; // Pfad zu AutoGK Anwendung.
        AutoGK.StartInfo.Arguments = Arguments; // Die Argumente die in der Befehlszeile übergeben werden sollen.
        AutoGK.Start(); // Startet AutoGK mit den Argumenten.
    }
}


Ich konnte es gerade nicht testen, aber ich denke das sollte hinhauen =)
 

M.Ä.N.E

Stammgast
Leider funzt es irgendwie nicht, bei $AutoGK-Path$ habe ich einfach C:/Programme/AutoGK/AutoGK.exe reingeschrieben. Und das mit der parameter übergabe geht leider nicht da AutoGK keine akzeptiert oder ich zumindest nirgends was darüber gefunden habe. So bin ich ja auch auf die Idee gekommen das GUI anzusteuern. Also kann man irgendwie das GUI ansteuern wenn mein Programm AutoGK gestatet hat?
 
Die gestartete Anwendung kannst du leider nicht ansprechen. AutoGK hat mit grösster Wahrscheinlichkeit keine Schnittstelle für solche Funktionen. Und wenn es diese hätte, müsstest du noch wissen wie diese Schnittstellen heissen bzw. implementiert werden können. Jedoch gibt es keine Dokumentation über mögliche Schnittstellen.
 
Es gibt Möglichkeiten .NET-Anwendungen während der Laufzeit zu manipulieren. Dies gilt jedoch nicht für AutoGK.

Für diesen gibt es keine andere Möglichkeit.
 
Oben