2009-02-04 5 views
2

Nous utilisons Visual Studio 2008 pour le développement d'applications C#.Visual Studio 2008 Stop Debug Smooth Exit

Nous lançons trois processus lorsque nos applications apparaissent & nous fermons les processus lancés lorsque nous fermons notre application.

Mais souvent lors du débogage, nous avons tendance à fermer le débogueur par Maj-F5 qui arrête l'application immédiatement. Nous devons donc fermer manuellement les processus démarrés avec notre application.

Quelle est la meilleure façon de fermer l'application afin de ne pas avoir de frustration lors de la fermeture de l'application pendant l'arrêt du débogage?

Répondre

2

Les applications lancées sont-elles vos propres applications? Si oui, pourraient-ils détecter quand leur processus parent est mort, et se terminer dans ce cas?

+0

Je pense que c'est aussi bien. Si l'application parente est morte, les applications enfants lancées par le parent doivent être mortes/tuées – Krish

0

Comment éteignez-vous les processus normalement?

Si vous pouvez créer un fichier séquentiel, une application séparée ou même un script AutoHotKey qui ferme simplement les processus, vous pouvez y ajouter un raccourci dans la barre d'outils VS (Outils-> Outils externes).

Je sais que cela bancals que de l'avoir fait automatiquement, mais il est probablement mieux que ce que vous avez à faire à l'heure actuelle: D

0

Utilisation démarrage multiples processus pour démarrer les trois processus sous le débogueur. Ensuite, lorsque vous arrêtez le débogage, il les tue tous les trois également.

Comme probablement l'un des processus démarre les deux autres, vous devrez peut-être le modifier de sorte que vous puissiez le désactiver pour le débogage (par exemple via un commutateur de ligne de commande).

0

J'ai eu le même problème, j'ai donc écrit une macro pour ce faire:

Sub StopDebugAndKillProcesses() 
    Dim dbg As EnvDTE80.Debugger2 = DTE.Debugger 
    dbg.Stop() 
    Dim shell_string As String 
    shell_string = "taskkill /F /IM TheProcessToKill.exe" 
    Shell(shell_string) 
End Sub 

affecter à un bouton, le mettre à côté du bouton d'origine « Stop » et votre fait.