#Признаки и условия возникновения
Задание Windows Server 2022 может работать при входе пользователя и не работать в сеансе без входа из-за интерактивных окон, неверной рабочей папки, прав «Вход в качестве пакетного задания» и недоступных сетевых ресурсов.
#Почему возникает ошибка и как различить причины
| Возможная причина | Как узнать | Что делать |
|---|---|---|
| Зависимость от рабочего столаСкрипт запускает окно или диалог без активного пользователя. | В ручном запуске работает, в фоне зависает. | Сделать сценарий неинтерактивным. |
| Неверные рабочая папка и путиОтносительные адреса указывают на другое расположение. | Журнал сообщает File not found. | Задать абсолютные пути и «Рабочую папку». |
| Недостаточные права учётной записиНет разрешения на пакетный вход либо файлы. | В журнале Access denied или Logon failure. | Уточнить политику и права. |
#Подробная диагностика и решение
- Экспортируйте задачу и запишите кодНажмите Win+R, введите taskschd.msc → Enter. Найдите задачу, выделите → «Экспорт» и сохраните XML. Посмотрите «Результат последнего запуска» и «Журнал»; при отсутствии журнала выберите «Включить журнал всех заданий». Не меняйте настройки до сохранения исходных значений.
- Уточните режим и учётную записьОткройте свойства → «Общие». Сверьте «При выполнении задачи использовать следующую учётную запись» и вариант «Выполнять независимо от регистрации пользователя». Если нужен именно этот режим, администратор должен указать разрешённую служебную учётную запись и при необходимости ввести её секрет лично.
- Проверьте запуск PowerShell и начальную папкуВо вкладке «Действия» → «Изменить» проверьте поле «Программа или сценарий»: для PowerShell это powershell.exe; путь к вашему .ps1 задайте в аргументах в кавычках, а «Рабочая папка» — каталог скрипта без кавычек. Не добавляйте -ExecutionPolicy Bypass для устранения неполадок.
- Проверьте право пакетного входаАдминистратор открывает Win+R → secpol.msc → «Локальные политики» → «Назначение прав пользователя» → «Вход в качестве пакетного задания». В домене право может быть назначено групповой политикой: локальные изменения не помогут. Попросите администратора проверить применённый GPO, а не выдавать право «Всем».
- Уберите зависимость от интерактивного сеансаПроверьте содержимое скрипта на окна, диалоги, подключённые диски Z: и относительные пути. Для чтения сетевых данных используйте разрешённый UNC-путь и учётную запись с доступом; для журналов выберите каталог, в который разрешена запись. Если скрипт меняет рабочие данные, тестируйте копию.
- Запустите задачу и проверьте полезный результатВыделите задачу → «Выполнить» → дождитесь завершения → F5. Сравните «Результат последнего запуска» с содержимым выходного файла и журнала. Код 0x0 говорит о завершении процесса, не обязательно об успехе всех команд. При неудаче верните сохранённые настройки из XML и передайте журнал специалисту.
#Проверка результата и действия при неуспехе
Успех — скрипт создаёт ожидаемый результат без открытого пользовательского сеанса, а история задачи не содержит ошибок.
Если проблема не устранена, запишите дословное сообщение, точное время, версию и сборку Windows (Win+R → winver), результат выполненных проверок и передайте их поддержке разработчика или администратору. Не переходите к удалению разделов, системных файлов, профилей и настроек защиты без отдельной проверенной процедуры.