2013-02-05 18 views
6

Ho un'applicazione Windows form in esecuzione su un server. Ora ho bisogno di avere più istanze della stessa applicazione in esecuzione allo stesso tempo. Ogni istanza si connetterà a un altro database. Durante l'avvio dell'applicazione cambio il titolo in modo da poter identificare a quale DB si sta connettendo, ma mi piacerebbe cambiare anche il nome nel Task Manager. Questo perché ho un'altra applicazione che funge da supervisore, uccidendo e avviando il processo secondo necessità. Devo trovare un modo per identificare chiaramente il processo da uccidere.Cambia nome del processo in Task Manager

+0

Crea i collegamenti. – leppie

+7

L'app Supervisor può essere quella che avvia i processi in modo da avere i PID dall'inizio? O deve essere in grado di funzionare separatamente? – Gray

+0

@Destrictor: Non credo che questa sia la stessa domanda. Vuole avere più istanze con nomi diversi, non solo un nuovo nome. – Gray

risposta

0

Se il programma Supervisore è quello che avvia i processi, si avrà il pieno controllo su questi processi figlio. Puoi facilmente ucciderli/avviarli quando ti servono. Utilizzare Process secondo necessità.

using System.Diagnostics; 

Process p1 = new Process(); 
Process p2 = new Process(); 
Process p3 = new Process(); 

p1.StartInfo.FileName = "notepad.exe"; 
p2.StartInfo.FileName = "notepad.exe"; 
p3.StartInfo.FileName = "notepad.exe"; 

//start the procs 
p1.Start(); 
p2.Start(); 
p3.Start(); 

//kill the procs 
p1.Kill(); 
p2.Kill(); 
p3.Kill(); 

Se si vuole un po 'di superutente di avere accesso a uccidere il processo, perché non lasciare loro solo farlo con la GUI? Se non ci sono GUI, come stanno facendo funzionare il programma? È iniziato via cmd?

copiato dal mio commento qui sotto:

Se l'utente vuole essere in grado di uccidere il processo dal taskmanager specifico, possono utilizzare la scheda applicazioni di scegliere il processo corretto (è necessario dare un unico titolo della finestra), quindi possono fare clic con il tasto destro del mouse> Vai per elaborare e uccidere da lì.

+0

C'è una GUI con un pulsante "Stop", è solo che quei "superuser" si sentono più "professionali" da uccidere tramite Task Manager. – WaveMax

+0

Haha ... ok ... Forse metti un identificatore univoco nella finestra del titolo. Ad esempio, "Programma DB-ABC", quindi possono fare clic su "Vai a elaborare" dalla scheda delle applicazioni per quella finestra. È anche possibile visualizzare il PID corrente da qualche parte e utilizzare il prompt dei comandi per terminare il processo. es .: TASKKILL/PID 1230 – Gray

1

Avere il proprio supervisore creare una copia temporanea del file eseguibile, comprese le informazioni di identificazione, e iniziare a che ... in modo che Task Manager sarà simile

My process - database 1.exe 
My process - database 2.exe 
et cetera 
Problemi correlati