Python subprocess.call на sfxcl.exe не работает из планировщика задач Windows 2003 - PullRequest
1 голос
/ 03 августа 2011

Я написал скрипт на Python для вызова инструмента командной строки SecureFX (sfxcl.exe)

result = subprocess.call([securefx, '/NoPrompt', '/Q', '/RetryCount', retries,
                 '/RetryDelay', '1', '/Log', sfxLogFile, '/List', '/S', session])

, а затем преобразовал его в .exe, используя py2exe.

Я могу запланировать это локально на моем компьютере с WinXP, и все работает нормально. Когда я запускаю его вручную в среде Win2003, это также работает. НО, когда я планирую это с помощью Windows Task Scheduler в Win2003, он запускается через сценарий и фактически не вызывает sfxcl.exe (никаких журналов). Я довольно озадачен тем, почему это ...

На сервере Win2003 не установлен Python, а на моем WinXP (там, где я его разработал).

Я использую Python 2.7.1.

РЕДАКТИРОВАТЬ: Или в противном случае, если нет ответа на этот вопрос - я должен рассмотреть запуск сценария один раз и настроить его на повторный запуск с использованием интервалов, а что нет? Другие опции? Это должно работать каждые 15-20 минут.

1 Ответ

0 голосов
/ 04 августа 2011

Итак, я нашел проблему, и она действительно довольно глупая.Если он работает вручную, вы должны ожидать, что он будет работать в планировщике задач.

Теперь я забыл упомянуть, что он использовал другую учетную запись в планировщике, и эта учетная запись не имела сеансов / конфигурации SecureFXи, таким образом, только эта часть не запустилась.

Это не проблема Python.

...