J'ai plusieurs machines esclaves et une machine maître qui exécutent ensemble une application distribuée. Les processus sur chaque machine esclave doivent avoir une interface graphique et un accès réseau (je pense que ce serait un processus interactif). Pour faciliter l'utilisation, il serait bon que la machine maître puisse démarrer/arrêter les processus sur ces machines esclaves. Ma première idée était d'utiliser WMI et la classe Win32_Process pour démarrer un processus distant, mais après une enquête plus approfondie, il a été révélé que les processus démarrés de cette manière sont non-interactifs et isolés, et ne peuvent donc avoir aucune interface graphique. Une note indique que l'on peut utiliser Win32_ScheduledJob.Create pour créer un processus interactif à distance, mais il fonctionne sous le compte LocalSystem que je voudrais éviter (aussi je ne pouvais même pas le faire fonctionner correctement).Démarrage de processus distants dans un réseau Windows
Quels seraient les bons moyens de résoudre ce problème? Peut-être qu'il est possible de lancer une application d'aide qui à son tour démarre un processus approprié, mais cela semble assez sale. Edit: PsExec était vraiment maladroit quand je l'ai essayé et ralentir comme l'enfer (je ne sais pas pourquoi). En regardant plus loin PsExec il semble qu'il installe un service temporaire sur la machine distante pour lancer l'application. Serait-ce le seul moyen de générer un processus interactif en utilisant une identité propre? Dois-je inclure un service d'assistance dans la configuration pour les nœuds? Mais même alors, comment pourrais-je communiquer avec alors?
Lorsque j'ai essayé PsExec, il était assez lent (je ne sais pas pourquoi) et ne fonctionnait pas correctement. Les applications GUI seraient lancées, sous le bon compte, pourrait être vu dans la barre des tâches, mais l'interface graphique réelle n'a jamais été mise à jour et seul un «bloc» mort était visible. – gix