У меня есть процесс-демон, который я запускаю на своей машине каждый час, и хотя я установил Hidden
флажок, он не работает.
Каждый час задача выполняется, но она показывает черное командное окно, в котором запущено мое консольное приложение .NET. Это остается видимым, пока задача не завершится, а затем исчезнет. Это очень раздражает, потому что оно всплывает и прерывает все, что я делаю:
Я действительно хочу это скрыть, так как я могу это исправить?
windows-7
task-scheduler
Джошуа Фрэнк
источник
источник
Ответы:
Установите флажок «Запускать, вошел ли пользователь в систему или нет», и исполняемый файл будет работать в фоновом режиме.
источник
Почему запланированная задача Windows 7 выполняется скрытой? Должен объяснить, почему это происходит.
Кроме того, в этом описании TechNet общих свойств задачи указано:
Не означает ли это, что флажок скрывает только задачу из пользовательского интерфейса планировщика, а не саму программу, которая запланирована?
источник
Хорошо, после еще одного исследования я нашел этот ответ на StackOverflow:
В комментарии указывается, что это дает полные права на задачу, что может раздражать, но в этом случае допустимо.
Но все же, что делает
Hidden
, если не делает этого? И почему учетная запись пользователя, на котором запущена программа, имеет какое-либо отношение к тому, видна ли она?источник
SYSTEM
учетная запись не имеет доступа к зашифрованным EFS-файлам других пользователей.СОВЕРШЕННОЕ РЕШЕНИЕ
Если это для вас прерыватели сделки, окончательное решение - создать файл сценария JS, подобный приведенному ниже, который будет запускать вашу команду в скрытом окне, ждать, пока ваша команда завершится, и вернет свой код ошибки:
Сохраните это как файл js (myjob.js) и добавьте его в свой планировщик задач: Наслаждайтесь
источник
«Запускать, вошел ли пользователь в систему или нет», разрешит работу скрытой опции. Обратите внимание, что вам нужно предоставить свои учетные данные после выбора этого.
источник
И то и другое :
предотвратит черное командное окно, но помните о недостатках: вы не сможете работать с некоторыми инструментами автоматизации графического интерфейса, такими как «AutoIt» или SendKeys в PowerShell, поскольку Windows запускает задачи в среде без стилей.
источник
Я оставляю настройки по умолчанию и пишу короткие пользовательские программы, которые запускают выполнение без отображения окна. Например, чтобы запустить пакетный файл без всплывающего окна командной строки, используйте код ниже. Установите задачу для появления "RunBatchFile.exe (path_to_batch_file)".
источник
ProcessWindowStyle.Hidden
части определенно, правильно? Я вижу кое-что об этом здесь: msdn.microsoft.com/en-us/library/…У меня была эта проблема с запланированными задачами PowerShell (которые я развертывал через GPO). В итоге я завернул его в командное окно:
источник