J'écris un planificateur ou trie. C'est essentiellement une table avec une liste d'exes (comme "C: \ a.exe") et une application de console qui regarde les enregistrements dans la table toutes les minutes et exécute les tâches qui n'ont pas encore été exécutées.Comment puis-je savoir quand .Net System.Diagnostics.Process a été exécuté avec succès ou a échoué?
Je lance les tâches comme ceci:
System.Diagnostics.Process p = new System.Diagnostics.Process();
p.StartInfo.UseShellExecute = false;
p.StartInfo.FileName = someExe; // like "a.exe"
p.Start();
Comment puis-je savoir si une tâche particulière a échoué? Par exemple, que se passe-t-il si a.exe lève une exception non gérée? Je voudrais que le code ci-dessus sache quand cela se produit et mettre à jour la table des tâches avec quelque chose comme "la tâche particulière a échoué", etc.
Comment est-ce que je peux faire ceci? Je n'utilise pas l'Agent Sql ou le Planificateur Windows parce que quelqu'un d'autre m'a dit de ne pas le faire. Il a plus d'expérience, donc je suis simplement en train de suivre les ordres. N'hésitez pas à suggérer des alternatives.
Voir http://msdn.microsoft.com/en-us/library/system.diagnostics.process.exitcode.aspx pour un exemple de ceci. – marcj