J'ai un programme agent qui lancera plusieurs instances du même exécutable. Chacune de ces instances doit être associée à un ID individuel.Comment démarrer un processus avec des données supplémentaires, puis rechercher ce processus?
L'agent conserve une référence à l'objet Process
qui a été utilisé pour charger l'instance, mais je dois considérer que l'agent peut être arrêté et redémarré sans affecter les instances démarrées.
Une fois que l'agent redémarre, j'en ai besoin pour rechercher les processus existants et pour relier une référence aux processus.
Comment puis-je affecter des données à un processus et les récupérer par la suite?
En ce moment, je commence le processus comme celui-ci:
this.AttachedProcess = new Process()
{
StartInfo = new ProcessStartInfo(filename)
};
Et, plus tard, je dois rechercher ce processus en appelant Process.GetProcesses()
. Bien que je puisse utiliser un argument de ligne de commande pour démarrer le processus (quelque chose comme -instance XX
) et lire cette ligne de commande en utilisant this answer, j'aimerais savoir s'il existe une autre façon d'assigner des données supplémentaires à un processus et de les récupérer plus tard.
Parfois, vous êtes tellement plongé dans un problème que vous négligez l'idée la plus simple. –