2017-01-14 1 views
1

Ich mache einen Fenster-Dienst, der zu einem bestimmten Zeitpunkt startet, um eine .exe zu starten/auszuführen. Es gibt viele Instanz läuft, hängt von Triggerereignis Beispiel **Was übergeben Kommandozeilenargument in laufenden exe. Wenn mehrere Instanzen mit demselben exe-Namen ausgeführt werden

1. Trigger A fire at morning and start/run controller.EXE 
2. Trigger B fire at Afternoon and start/run controller.EXE 

** EDIT

ich verwendet habe, unter

   Process A = new Process(); 
       A.StartInfo.FileName = @"Controller.exe"; 
       A.StartInfo.Arguments = strXML+" "+strEndDate; 
       A.Start(); 

       Process B = new Process(); 
       B.StartInfo.FileName = @"Controller.exe"; 
       B.StartInfo.Arguments = strXML+" "+strEndDate; 
       B.Start(); 

Jetzt A und B beide ausgeführt werden. Ich möchte Befehlszeilenargument an Prozess A übergeben, während es ausgeführt wird

Wie kann ich das erreichen. Ist das möglich mit multiple exe mit demselben Namen (controller.EXE)? enter image description here

+0

Haben Sie bereits eine Kommunikationsmethode mit einer einzelnen Instanz von controller.exe eingerichtet? – Graffito

+0

Wenn Sie "controller.exe" mit Parametern starten möchten, können Sie ProcessStartInfo verwenden (https://msdn.microsoft.com/de-de/library/system.diagnostics.processstartinfo (v = vs.110) .aspx)) mit Argumenten. –

+0

@Graffito Nein, Controller .exe ist eine Fensteranwendung. Kann ich Mutex benutzen? Wenn ja, wie kann ich dafür? Was muss ich im Kommandozeilenargument übergeben? – Babu

Antwort

1

Antwort auf diese Frage:

Ist das möglich mit mehreren exe gleichen Namen (controller.EXE)

Ja, sicher. Sehen Sie sich den Windows Task-Manager auf der Registerkarte "Prozess" an, und Sie sehen viele Prozesse mit demselben Namen. Beispielsweise wird jede Registerkarte im Chrome-Browser in einem eigenen Prozess ausgeführt

enter image description here.

Über diese

Was exe Kommandozeilenargument übergeben

in Laufen Sie Parameter übergeben können Sie oder nichts brauchen. Es hängt von Ihrer Anwendungslogik ab.

Verwandte Themen