Форум программистов, компьютерный форум, киберфорум
Администрирование Windows
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.61/64: Рейтинг темы: голосов - 64, средняя оценка - 4.61
2 / 2 / 0
Регистрация: 13.04.2013
Сообщений: 45

Планировщик заданий не запускает .exe

21.08.2020, 01:38. Показов 14642. Ответов 25

Студворк — интернет-сервис помощи студентам
Здравствуйте!
Имеется простая программа, которая была написана на Python и с помощью PyInstaller скомпилирована в .exe исполняемый файл. Сам скрипт весьма незамысловатый по импортируемым модулям, работает довольно быстро и без нареканий. Суть её сводится к тому, что она скачивает из интернета кое-какие данные в текстовом формате, обрабатывает их и выдает в конечном итоге в формате excel.
При запуске программы в ручном режиме все работает прекрасно. Однако, мне требуется автоматизировать выполнение этой программы.
Поставив ее исполнение с ежедневным повтором в планировщик заданий, я сразу же обнаружил, что задание не выполняется. Во время исполнения по расписанию на одну-три секунды появляется консольное окно без каких-либо записей, после чего оно пропадает и всё. Программа не исполняется, "выхлопа" нет.
Альтернативно, я пробовал создать .bat файл, который бы запускал с помощью start мой exe-шник. Приблизительно тот же самый результат. Появляется консольное окно, потом исчезает, безрезультатно. Добавил в bat pause, но в консоли просто прописан рабочий каталог, ничего более.
Не подскажите, как правильно настроить планировщик заданий под мою задачу?
Спасибо!
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
21.08.2020, 01:38
Ответы с готовыми решениями:

Запуск скрытого exe через планировщик заданий!
Всем привет! Как через планировщик запустить СКРЫТЫЙ exe файл? Есть задание в планировщике, стоит триггер на бездействие и при включение...

Как настроить планировщик заданий на запуск программы всеми пользователями компьютера
Здравствуйте . Подскажите пожалуйста как можно настроить планировщик заданий так чтобы задача выполнялась для любого пользователя...

Не выполняется часть батника через Планировщик заданий Win Server 2008
Добрый времени суток! Подскажите, пожалуйста, по какой причине может не запускаться часть bat-файла в планировщике задач? В файле две...

25
Эксперт .NET
 Аватар для Rius
13121 / 7681 / 1675
Регистрация: 25.05.2015
Сообщений: 23,432
Записей в блоге: 14
21.08.2020, 06:10
Программа читает или создаёт файлы в своём каталоге?
0
225 / 113 / 18
Регистрация: 27.09.2012
Сообщений: 575
21.08.2020, 09:48
В логах может быть информация что произошло.
Ещё если в bat файле написать в конце
Bash
1
cmd /k
то консоль не закроется. И посмотришь что пишет.
0
2 / 2 / 0
Регистрация: 13.04.2013
Сообщений: 45
21.08.2020, 10:16  [ТС]
Rius,
Цитата Сообщение от Rius Посмотреть сообщение
Программа читает или создаёт файлы в своём каталоге?
Если конкретно, программа загружает txt из интернета, сохраняет его в папку temp, которая автоматически создается (если ее нет) в том же каталоге, откуда запускается программа, работает с этим txt в этой папке (там создаются и обрабатываются еще несколько txt файлов). После этого в каталоге с программой создается еще одна папка data, куда сохраняется конечный результат работы программы.

kroniel,
Цитата Сообщение от kroniel Посмотреть сообщение
то консоль не закроется. И посмотришь что пишет.
Как я упоминал, я уже вставлял в bat-ник "pause", и консоль не закрывалась. Но ровным счетом ничего в ней написано не было.
0
2 / 2 / 0
Регистрация: 13.04.2013
Сообщений: 45
21.08.2020, 10:18  [ТС]
Следующим образом я пытаюсь настроить bat на автозапуск exe-шника:

При этом я заметил, что батник все же запускает мой exe (появляется второе консольное окно), но он по-прежнему не срабатывает.
Миниатюры
Планировщик заданий не запускает .exe   Планировщик заданий не запускает .exe   Планировщик заданий не запускает .exe  

0
Эксперт .NET
 Аватар для Rius
13121 / 7681 / 1675
Регистрация: 25.05.2015
Сообщений: 23,432
Записей в блоге: 14
21.08.2020, 10:22
Цитата Сообщение от DimitryS Посмотреть сообщение
(если ее нет) в том же каталоге, откуда запускается программа
Вот покажите код, в котором вы указываете, где создавать этот каталог.

Добавлено через 1 минуту
Точнее, меня интересует значение этого пути, как вы его получаете.
0
2 / 2 / 0
Регистрация: 13.04.2013
Сообщений: 45
21.08.2020, 10:24  [ТС]
Rius,
Цитата Сообщение от Rius Посмотреть сообщение
Вот покажите код, в котором вы указываете, где создавать этот каталог.
Как я уже говорил, при запуске от руки все работает прекрасно: все каталоги, временные файлы и конечный результат создаются как надо. Но если это критично, то вот:
Миниатюры
Планировщик заданий не запускает .exe  
0
Эксперт .NET
 Аватар для Rius
13121 / 7681 / 1675
Регистрация: 25.05.2015
Сообщений: 23,432
Записей в блоге: 14
21.08.2020, 10:26
Ну вот, как я и думал...
Почитайте Относительное зло

Добавлено через 1 минуту
Цитата Сообщение от DimitryS Посмотреть сообщение
Как я уже говорил, при запуске от руки все работает прекрасно
Как я уже говорил (по ссылке), это типичное заблуждение
0
2 / 2 / 0
Регистрация: 13.04.2013
Сообщений: 45
21.08.2020, 14:03  [ТС]
Rius,
Статья и правда потрясающая, спасибо, сохранил. Не всё я в ней понял, правда, но теперь поступил с путями создания папок и с путями к временным рабочим файлам следующим образом.
Правда, это не помогло. По-прежнему, планировщик запускает мой exe-шник, но сам он не работает, консольное окно почти сразу исчезает. Хотя, при запуске от руки все по-прежнему работает.
Миниатюры
Планировщик заданий не запускает .exe   Планировщик заданий не запускает .exe  
0
Эксперт .NET
 Аватар для Rius
13121 / 7681 / 1675
Регистрация: 25.05.2015
Сообщений: 23,432
Записей в блоге: 14
21.08.2020, 14:44
Вы её внимательно прочитали?
Вариант ошибки №3 из статьи.

Что такое getcwd()? Что оно возвращает при запуске из планировщика?
Вы явно подставили значение current directory вместо и так неявно подразумеваемой current directory.

Добавлено через 52 секунды
Для проверки я создал задачу и сохранил вывод getcwd в файл, вышло как и ожидалось:
Code
1
C:\WINDOWS\system32
Добавлено через 1 минуту
Код сюда лучше вставлять текстом в тегах
Code
1
[PYTHON]код[/PYTHON]
, а не скриншотами.

Добавлено через 9 минут
Вот это
Python
1
os.path.dirname(os.path.abspath(__file__))
вроде бы выдаёт полный путь к каталогу исполняемого модуля.
Из планировщика и при ручном запуске результат одинаковый. При запуске py файла. С exe не знаю.
1
2 / 2 / 0
Регистрация: 13.04.2013
Сообщений: 45
21.08.2020, 14:46  [ТС]
Rius,
Прочитал статью внимательно, но, к сожалению, понять всё я не способен в силу скудоумности и отсутствия какого-либо опыта. Кроме того, в статье я не смог найти вариант получения абсолютного пути для Python.

Добавлено через 1 минуту
Rius,
Цитата Сообщение от Rius Посмотреть сообщение
вроде бы выдаёт полный путь к каталогу исполняемого модуля.
"вроде бы"? Спасибо, буду пробовать
0
Эксперт .NET
 Аватар для Rius
13121 / 7681 / 1675
Регистрация: 25.05.2015
Сообщений: 23,432
Записей в блоге: 14
21.08.2020, 14:50
Вроде бы. Я python не знаю.
0
2 / 2 / 0
Регистрация: 13.04.2013
Сообщений: 45
21.08.2020, 15:06  [ТС]
Rius,
что ж, сделал так:
Python
1
2
3
4
5
6
7
path = os.path.dirname(os.path.abspath('dec.py'))
 
if not os.path.isdir(f"{path}\\temporary_files"):
     os.mkdir(f"{path}\\temporary_files")
 
if not os.path.isdir(f"{path}\\data"):
     os.mkdir(f"{path}\\data")
К сожалению, безрезультатно. При выполнении по расписанию, запускается консольное окно, через секунду пропадает, программа не выполняется. И да, от руки все идеально.
0
Эксперт .NET
 Аватар для Rius
13121 / 7681 / 1675
Регистрация: 25.05.2015
Сообщений: 23,432
Записей в блоге: 14
21.08.2020, 15:12
Сохраните переменную path в файл, с явно прописанным путём,в каталог куда точно есть права на запись. Посмотрите, что получится.

Добавлено через 1 минуту
В статье всё просто : надо получить в переменную абсолютный путь к файлу или каталогу. Тогда проблема пропадёт.
А новички все поголовно получают относительный. Вы вот уже 3 варианта привели.

Добавлено через 2 минуты
Для ленивых есть костыль : в свойствах задачи планировщика явно указать рабочий каталог.
Тогда заработает, вероятно, но проблема вечно будет вас преследовать.
0
2 / 2 / 0
Регистрация: 13.04.2013
Сообщений: 45
21.08.2020, 15:16  [ТС]
Rius,
спасибо, сейчас буду пробовать (как узнать, в каком каталоге точно есть права на запись?).

Приведенный Вами выше вариант (с os.path.dirname) даёт абсолютный или относительный путь?

С костылями конечно в крайнем случаю сделаю, но это фи.
0
Эксперт .NET
 Аватар для Rius
13121 / 7681 / 1675
Регистрация: 25.05.2015
Сообщений: 23,432
Записей в блоге: 14
21.08.2020, 15:22
Не системный диск. Или каталог системного, к которому все права выставлены для всех.

Абсолютный, к каталогу, где лежит текущий исполняемый модуль.
0
2 / 2 / 0
Регистрация: 13.04.2013
Сообщений: 45
21.08.2020, 15:31  [ТС]
Хорошо, сделал вот так, записал путь на системный диск:
Python
1
2
3
path = os.path.dirname(os.path.abspath('dec.py'))
with open(r'C:\test\path.txt', 'w') as pouf:
    pouf.write(path)
При ручном запуске, результат на пикче. Сейчас сделаю с планировщиком.
Миниатюры
Планировщик заданий не запускает .exe  
0
2 / 2 / 0
Регистрация: 13.04.2013
Сообщений: 45
21.08.2020, 15:35  [ТС]
Ха, при запуске из планировщика:
Code
1
C:\WINDOWS\system32
Таааак...
0
Эксперт .NET
 Аватар для Rius
13121 / 7681 / 1675
Регистрация: 25.05.2015
Сообщений: 23,432
Записей в блоге: 14
21.08.2020, 15:45
Да, про это я в статье и писал.
0
2 / 2 / 0
Регистрация: 13.04.2013
Сообщений: 45
21.08.2020, 16:40  [ТС]
Rius,
Что интересно, мне даже не удается найти в интернете, как получить абсолютный пусть исполняемого файла. Казалось бы, такой пустяк, а именно на нём я застопорился.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
21.08.2020, 16:40
Помогаю со студенческими работами здесь

Не запускается планировщик заданий
Добрый день Не могу запустить службу планировщик заданий, пишет "Отказано в доступе". Права администратора. Как быть?

Не запускается планировщик заданий.
С недавнего времени не запускается планировщик заданий. Посмотрел в службах. Стоит тип запуска вручную. Поменять нельзя, потому...

Не запускается приложение через планировщик заданий
Добавляю задание на запуск программы, допустим notepad.exe от имени пользователя с админскими правами. Пароль на пользователя стоит. Вход в...

Планировщик заданий
Всем привет! На днях я создал небольшой php скрипт и поставил его выполняться в планировщик заданий. Он выполняется каждые 5 минут,...

Планировщик заданий
Что то я тупанул и наверно создал не правильную задачу "по выключению компа". Создавал по данному мануалу. А как теперь посмотреть что я...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru