У меня есть скрипт на python, который делает скриншоты через каждые 5 минут, когда я запускаю его в командной строке, он работает хорошо, он делает скриншоты и сохраняет его в папке, как я хочу.Затем я создал исполняемый файл этого скрипта, он также отлично работает.Но настоящая проблема возникает, когда я пытаюсь запустить свой исполняемый файл как сервис.Я хочу, чтобы этот сценарий запускался при запуске и в фоновом режиме, поэтому я использую для этого nssm (диспетчер служб без присоски).Но когда я создаю сервис и запускаю его, он запускается, но не делает снимок экрана.В папке нет файлов.
Вот мой код для снимков экрана:
import datetime
import os
import sys
import time
import pyautogui
import schedule
def TakeSS():
TodayDate = datetime.datetime.now()
while True:
TodayDate = datetime.datetime.now()
if (TodayDate.hour==21):
break
CurrentFolder = os.getcwd()
fp = CurrentFolder +"\\" + TodayDate.strftime('%Y%m%d')
if os.path.exists(fp):
pass;
else:
os.mkdir(fp)
# Take screensot
pic = pyautogui.screenshot()
#Name the file with data and time
ts = time.strftime("%Y%m%d-%H%M%S")
filename = "screenshot"
filename += str(ts)
filename += ".png"
# Save the image
pic.save('{}\\{}'.format(fp,filename))
time.sleep(300)
И, да, у меня также есть другой файл, который вычисляет время простоя процессора и сохраняет его вфайл JSON, который сохраняется в той же папке.Работает просто отлично.После создания сервиса я вижу файл json, но не файл скриншотов.
Кстати, у меня есть основной файл, из которого я вызываю оба этих скрипта.Спасибо.