Laden...

Aktion von extern Starten

Erstellt von nighty2k vor 14 Jahren Letzter Beitrag vor 14 Jahren 1.439 Views
N
nighty2k Themenstarter:in
8 Beiträge seit 2009
vor 14 Jahren
Aktion von extern Starten

Hallo Zusammen,

hätte da mal eine Frage und hoffe Ihr könnt mir weiterhelfen.

Ich habe ein Programm geschrieben Windows Forms bassierend.
Dieses führt z.B. beim Klick auf einen Button eine Methode aus einer Klasse aus.
Soweit so gut.

Nun habe ich ein Programm Estos ProCall 3.0 dieses kann exe Dateien mit Parametern aufrufen(wie auf der Komandozeile eben).

Gibt es eine Möglichkeit nun mit ProCall mein Programm zu starten und automatisch die Parameter zu übergeben und eine Methode zu starten.
Gibt es auch eine Möglichkeit, das ganze auf eine Laufende Instanz meines Programms zu machen anstatt dass ein neues gestartet wird.

Wie kann ich das realisieren.

Vielen Dank im Voraus

Greetz

J
1.114 Beiträge seit 2007
vor 14 Jahren

Du hast in der Program.cs normalerungefähr folgendes Konstrukt:

static class Program
{
    /// <summary>
    /// The main entry point for the application.
    /// </summary>
    [STAThread]
    static void Main(string[] args)
    {
        Application.EnableVisualStyles();
        Application.SetCompatibleTextRenderingDefault(false);
        Application.Run(new MainForm());
    }
}

Falls dir die Paramter string[] args fehlen, dann musst du die eventuell ergänzen. Jedenfalls hast du in diesem Array die Startparameter stehen, die du auswerten kannst.

Um einen Befehl an eine laufende Instanz zu schicken, musst du eine Kommunikationsschnittstelle haben. Das geht z.B. über Windowsbotschaften, dafür muss das aufrufende Programm aber das Fensterhandle der Fremdanwendung haben, was nicht immer so eveident herauszufinden. Ausserdem können mehrere Instanzen eines Programms gestartet sein... an welches soll dein Befehl dann gerichtet werden.

Besser ist, du baust dir selbst eine Kommunikationsschnittstelle auf. Die Forumsuche nach WCF oder Remoting sollte dir dabei helfen.