Система не может найти файл, указанный с помощью подпроцесса Popen, и работает только на рабочем столе с простыми файлами bat - PullRequest
0 голосов
/ 09 мая 2019

В простое я получаю ошибку:

FileNotFoundError: [WinError 2] Системе не удается найти указанный файл

При попытке открыть файл в папке на рабочем столе.

p = Popen("open.bat", cwd=r"C:\Users\MSI\Desktop\Project")
stdout, stderr = p.communicate()

Строки, открывающие файл.

Стоит отметить, что это работает, если у меня на рабочем столе есть простой пакетный файл, который просто повторяет слово, но не делает для другого пакета другие вещи в папке моего проекта. Если я помещаю простой командный файл в папку моего проекта, он также не работает. Я ПОЗИТИВНО. У меня правильный путь, потому что я копирую и вставляю его из окна свойств. Я также попытался создать ярлык для файла bat, но заметил, что его путь такой же, как и в оригинале.

Я хочу, чтобы скрипт запускал файл, поэтому, если есть что-то, что я должен изменить, пожалуйста, дайте мне знать.

PS: работает на Python 3.7

1 Ответ

0 голосов
/ 09 мая 2019

Я наконец исправил это, отключив подпроцесс для os

os.chdir(r"path")
os.startfile(r"file.bat")

все еще не уверен, почему у подпроцесса были проблемы с той же самой задачей. В любом случае, я советую использовать это, так как до сих пор это работало каждый раз

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...