Одним из способов было бы заставить фоновый Деймон искать программу с конкретным c именем. К сожалению, это не слишком надежно (из-за совпадения имен), потребует большого количества опросов и подвергает риску состояния гонки (процесс запускается, когда ваш демон все еще работает).
Что будет быть надежным, если Деймон действительно запускает процесс переднего плана. Таким образом, он может работать до Process.Start()
и после Process.WaitForExit()
, с полной информацией, когда оба состояния происходят: https://docs.microsoft.com/en-us/dotnet/api/system.diagnostics.process?view=netcore-3.1
Хорошим примером является Steam. Это процесс одного экземпляра, поэтому любые дальнейшие запросы могут быть переданы в работающий экземпляр. Ссылки на программы / игры на рабочем столе - это ссылки на программы, а не ссылки на программы. Эти ссылки используют: паровой протокол, который связан с паровыми процессами. Таким образом, это выглядит так:
- пользовательские клики на WebLink с помощью: steam procotoll
- Windows решает передать это в вызов командной строки программе steam
- Экземпляр запускается с правильным порядком в командной строке. Одиночный экземпляр не позволит запустить второй экземпляр c, но передаст запрос уже запущенному
- уже запущенному или внезапно запущенному экземпляру, который вызывает программу, имея полные данные о том, когда он запускается и заканчивается. будучи актуальным логическим абонентом