В моей настройке «Сервер / Клиент» у меня есть клиентские приложения, управляющие другими приложениями на компьютере (процессы запуска / остановки / перезапуска / запроса). Прямо сейчас, у меня есть очень простая настройка с использованием идентификатора процесса, но мне пришло в голову, прежде чем он выйдет в свет, мне нужно его улучшить.
Если процесс останавливается, а другой начинает использовать тот же идентификатор в промежутке времени, в течение которого я отправляю запрос на него, это выведет систему из строя. Ни один из процессов, которые я запускаю, никогда не будет происходить с одним и тем же путем к файлу, но часто будет иметь одинаковое имя исполняемого файла.
Мне не очень повезло найти его, но могу ли я найти путь к исполняемому сервису? Я полагаю, что моя лучшая ставка при запросе состояния выполнения - это сначала поиск сохраненного ProcessID, в котором он должен быть, если он запущен, проверьте имя файла / исполняемого файла, чтобы убедиться, что оно также совпадает.
Есть ли лучший способ сделать это, или это лучший из возможных сценариев?