У меня есть несколько задач в Планировщике задач в Windows Server 2008 SP2 (32-разрядная версия), и все они успешно «выполняют свою работу», за исключением создания или обновления любых файлов в Windows. Все задачи указывают на простые файлы .cmd, которые выполняют настоящую работу, но помимо этого нет никакого шаблона: некоторые вызывают robocopy с параметром / LOG, некоторые вызывают файлы .exe, которые я написал, которые манипулируют файлами XML, некоторые просто делают что-то с >
перенаправление.
Со всеми ними, если я сам дважды щелкну файл .cmd, он будет работать нормально, и файлы будут созданы или обновлены или что-то еще. Если я запускаю его из Планировщика заданий (по расписанию или просто щелкая «Выполнить»), задача всегда завершается «успешно», но без каких-либо желаемых изменений в файлах. Я также не вижу ошибок «невозможно создать файл» в средстве просмотра событий.
Задачи выполняют все функции «Запуск от имени» с определенной учетной записью, но я вошел в систему под этой учетной записью и убедился, что у нее есть разрешения на все, что нужно.
Дальнейшие подробности -- Задача устанавливается на «Выполнить» независимо от того, вошел ли пользователь в систему или нет. Настроен для: «Windows Vista или Windows Server 2008», других доступных параметров «Настроено для» нет.
Следует отметить, откуда запускается скрипт. Если у вас есть файл исправления, который ссылается на «test.log», запуск пакета непосредственно из c: \ logs не вызовет проблем. Но когда планировщик задач запускает его, он не знает, где найти "test.log". Поэтому убедитесь, что вы либо используете полные пути в своем коде, либо используете функцию «Выполнить» в планировщике задач.
Какая у вас конфигурация под ваши задачи? У меня были аналогичные проблемы со сценариями, выполняемыми cmd, если они были настроены для 2008 года. На вкладке «Общие» мне пришлось установить для параметра «Настроено для» значение 2003 / xp / 2000. Какие у вас есть варианты безопасности?
* .exe файлы при запуске задачи расписания; хотя и кажется выполненным успешно, задача остается невыполненной! но когда файл * .exe вызывается с помощью задачи расписания с использованием командного файла, задача выполняется. Это единственный способ запустить файл * .exe на сервере 2008?