чому завдання планувальника завдань Windows 7 не вдається з помилкою 2147942667


133

Я стикаюся з дивною проблемою. У мене заплановане завдання вивести пакетний файл. Коли я запускаю завдання з опцією, Run only when user is logged onвсе працює добре. але я хочу запустити це завдання у фоновому режимі, і тому я запускаю його за допомогою параметра Run whether user is logged on or not. Тепер, коли я запускаю завдання, воно не працює. Я отримую наступні 2 помилки. Я не розумію цієї помилки. Будь ласка, допоможіть мені вирішити цю проблему.

 Task Scheduler failed to launch action "C:\Windows\SYSTEM32\cmd.exe" in instance "{2a7cc950-fad9-4633-9701-af75a0fd220d}" of task "\stmm\Daemon". Additional Data: Error Value: 2147942667.
 Task Scheduler failed to start instance "{2a7cc950-fad9-4633-9701-af75a0fd220d}" of "\stmm\Daemon"  task for user "GBLADHEDANI\N011940" . Additional Data: Error Value: 2147942667.

41
Перетворіть код помилки в шістнадцятковий, щоб отримати 0x8007010B. 7 робить це помилкою Windows. Що робить код помилки 010B 267. "Ім'я каталогу недійсне". Звичайно, це трапляється.
Ганс Пасант

1
@HansPassant, це геніально. Перетворити на шістнадцяткову, використовуй останні чотири байти для пошуку коду помилки. Сподіваюся, я можу згадати це!
Марк Беррі

FWIW Я виявив, що в інтерфейсі основного планувальника завдань було завдання із стовпцем "Останній запуск" або подібним стовпчиком, показуючи повідомлення про помилку "Ім'я каталогу недійсне". Виправленням в нашій ситуації була відповідь з jp2code нижче про видалення лапок із папки Start In, оскільки я скопіював її з цитованої Command для запуску.
Neek


1
@RJDunnill, дякую, що позначив мене на цьому. Дуже корисний!
Марк Беррі

Відповіді:


253

У мене був цей самий випуск.

Рішення для мене було знайдено в статті Microsoft KB 2452723:

Попередні заплановані завдання Windows Vista не виконуються, якщо шлях у полі "Почати в (необов'язково)" має лапки

В основному, відредагуйте заплановане завдання та вийміть котирування з поля "Старт в":

  1. Відкрийте своє заплановане завдання
  2. Перейдіть на вкладку "Дії"
  3. Відкрийте свою дію
  4. Видаліть лапки (") з поля" Почати в (необов'язково) "
  5. Збережіть і закрийте всі відкриті діалоги

Редагувати діалогове вікно дій

Щоб отримати відповідне повідомлення про помилку:

1) Перетворіть 2147942667 в шістнадцятковий: 8007010B
2) Візьміть останні 4 цифри (010B) і перетворіть у десятковий: 267
3) Запуск: net helpmsg 267
4) Результат: "Ім'я каталогу недійсне."

Вікно командного рядка


5
проблема стосувалася використання дозволу. Запускаючи за допомогою параметра Run whether user is logged on or not, я використовував іншого користувача для запуску програми. Цей новий користувач не мав відповідних дозволів на зчитування даних і, отже, помилка. Дякую.
Алок

1
Для мене це теж не було "дозволом". Це була папка " Початок в" . Якщо він є "C:\Some Path\", це неправильно, оскільки в ньому є цитати. На ньому потрібно сказати `C: \ Some Path` (без лапок).
jp2code

16
Це рішення. Видаліть цитати з текстового поля « Пуск у папці» . Досить езотеричне виправлення. Даремно витрачайте на це години - бажайте, щоб Microsoft полегшив корисні помилки або виправив цю очевидну помилку.
Йосип

6
Зважаючи на те, що варто, я отримую цю помилку, але в моєму налаштуванні "Папка в папці" немає лапок, скоріше шлях, на який посилався, не існував.
shufler

2
Я не користуюся цитатами і все ще отримую ту саму проблему. @RayofCommand: Ви знайшли рішення цього питання.
Користувач1551892

9

Для мене це було «Почати в» - я скопіював значення зі старого сервера та оновив шлях до нового .exe-місця, але забув оновити місце «start in» - якщо його не існує, ви отримати і цю помилку

Цитуючи коментар @ hans-passant зверху, оскільки це корисно для налагодження цієї проблеми:

Перетворіть код помилки в шістнадцятковий, щоб отримати 0x8007010B. 7 робить це помилкою Windows. Що робить код помилки 010B 267. "Ім'я каталогу недійсне". Звичайно, це трапляється.


7

Це може статися з декількох причин. У моєму випадку це сталося через проблему дозволів. Користувач, який виконував завдання як не мав дозволу писати в каталог журналів, тому не вдався до цієї помилки.


3

У мене була така ж проблема в Windows7.

Я отримував помилку 2147942667 та звіт про неможливість запустити c: \ windows \ system32 \ CMD.EXE. Я намагався з подвійними цитатами в Скрипті та Старті, і без жодних змін. Потім я спробував замінити всі посилання на маршрутизовані мережеві накопичувачі та посилання UNC (\ Server1 \ Sharexx \ my_scripts \ run_this.cmd), і це виправило для мене. Пат.


Це нарешті зробило це і для мене. Мені довелося скористатися "Net Use", щоб отримати ім'я сервера, а потім ping, щоб отримати ім'я домену. Зрештою, це було \\ machine.domain.local \ app.exe. \\ Machine \ app.exe не працював
greg

Зробив це і для мене. Дякую!
Джейс

2

Для отримання більш загальної відповіді перетворіть значення помилки в шістнадцятковий, а потім знайдіть значення шістнадцяткової у програмі Windows Task Scheduler Error and Conscnts Constannts


3
Привіт Майку. Я використовував калькулятор Windows в режимі програміста для перетворення 2147942667в HEX : 0x8007010B. Це значення не відображається у наданому вами посиланні. Просто FYI, звичайно.
jp2code

4
Я просто Googled його: 2147942667 in hex. Google також є калькулятором.
Баодад

0

Для мене це був "Почати в" - я випадково залишився в ".py" наприкінці назви своєї програми. І я забув писати великі літери назви папки, в якій вона знаходилась ("Додатки").


0

Для мене це було пов’язано із змінною середовища PATH користувача, яка, здається, не працювала, навіть якщо користувач був коректним, тому мені потрібно було поставити весь виконуваний шлях у програмне поле.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.