У меня есть несколько подчиненных машин и мастер-машина, которые вместе запускают распределенное приложение. Процессы на каждом подчиненном компьютере должны иметь графический интерфейс и доступ к сети (я думаю, что тогда он будет называться интерактивным процессом). Для простоты использования было бы неплохо, если бы мастер-машина могла запускать/останавливать процессы на этих подчиненных машинах.Запуск удаленных процессов в сети Windows
Моя первая идея заключалась в том, чтобы использовать WMI и класс Win32_Process для запуска удаленного процесса, но при дальнейшем исследовании было показано, что процессы, запущенные таким образом, не являются интерактивными и изолированными и, следовательно, не могут иметь никакого графического интерфейса. В примечании говорится, что можно использовать Win32_ScheduledJob.Create для создания удаленного интерактивного процесса, но он работает под учетной записью LocalSystem, которую я бы хотел избежать (также я не мог даже запустить ее правильно).
Что было бы хорошим путем для решения этой проблемы? Возможно, возможно запустить вспомогательное приложение, которое, в свою очередь, запускает правильный процесс, но это кажется довольно грязным.
Редактировать: PsExec был действительно неуклюжим, когда я пробовал его и медленно, как черт (не знаю почему). Если посмотреть в PsExec, кажется, он устанавливает временную службу на удаленном компьютере для запуска приложения. Будет ли это единственным способом запуска интерактивного процесса с использованием правильной идентификации? Должен ли я включать вспомогательную службу в настройку для узлов? Но даже тогда, как бы я тогда общался с ним?
Когда я попробовал PsExec, это было довольно медленно (не знаю почему) и не работало корректно. Приложения GUI будут запущены под правой учетной записью, которые можно увидеть на панели задач, но фактический графический интерфейс никогда не обновлялся, и был показан только мертвый «блок». – gix