Я хочу запустить iisstate в режиме ожидания сбоя, прежде чем сбрасывать отладочную информацию в файл. Однако если я сделаю это, мне нужно будет убедиться, что это не остановится преждевременно, как в соответствии с iisfaq.com, поскольку это агрессивно, остановка iisstate остановит процесс iis, к которому он привязан. Меня беспокоит, что если я запущу его в сеансе удаленного рабочего стола, коллега может войти в сеанс удаленного рабочего стола, а затем выйти из системы, а не просто выйти из сеанса удаленного рабочего стола, и непреднамеренно завершить процесс.
Если бы я использовал Linux, я бы использовал screen и отсоединял бы его оттуда. Я думаю, что вероятность того, что кто-то будет случайно повторно подключиться к сеансу экрана и затем его прервать, будет менее вероятна, чем для кого-то, кто войдет в сеанс удаленного рабочего стола и затем выйдет из системы.
Я мог бы попробовать запустить его под экраном в cygwin, но кто-нибудь знает, есть ли способ запустить команду в отдельном сеансе консоли, встроенном в Windows?
Другой подход к этому вопросу: почему кто-то еще может войти в этот сеанс удаленного рабочего стола?
Есть ли у кого-нибудь еще пароль этой учетной записи? Обычно вы хотите, чтобы отдельные учетные записи администратора для каждого человека обеспечивали полезный контрольный журнал, чтобы никто другой не мог взять на себя этот сеанс (хотя, конечно, они могли его убить).
Более прагматичный подход, если вам нужно, чтобы он работал какое-то время, будет: 1) установить его как службу или 2) запустить его как запланированную задачу один раз. Оба будут работать без подключения к любому интерактивному сеансу и, следовательно, не умрут при выходе из интерактивного сеанса.
SrvAny помогает создавать сервис из обычных приложений и команд. Однако будьте осторожны с пользовательским контекстом, в котором вы его запускаете - если ему нужен определенный доступ, которого нет в учетной записи службы по умолчанию, вам нужно его изменить.