У меня есть несколько приложений .exe, которые мне предоставил поставщик датчиков. Они позволяют мне получать данные в определенное время и преобразовывать типы файлов. Но мне нужно запустить их через cmd вручную, и я пытаюсь автоматизировать этот процесс с помощью Python. У меня проблемы с тем, чтобы это работало.
Пока у меня есть:
import sys
import ctypes
import subprocess
def is_admin():
try:
return ctypes.windll.shell32.IsUserAnAdmin()
except:
return False
if is_admin():
process = subprocess.Popen('arcfetch C:/reftek/arc_pas *,2,*,20:280:12:00:000,+180', shell=True, cwd="C:/reftek/bin",
stdout=subprocess.PIPE, stderr=subprocess.PIPE,)
out = process.stdout.read()
err = process.stderr.read()
else:
# Re-run the program with admin rights
ctypes.windll.shell32.ShellExecuteW(None, "runas", sys.executable, __file__, None, 1)
Но exe-файл arcfetch не запускался. Кроме того, это требует, чтобы я разрешил Python каждый раз вносить изменения на жесткий диск, что не будет работать автоматически.
Будем очень благодарны любой помощи!
CD
- это внутренняя команда вcmd.exe
. Не могли бы вы объяснить, что вы собираетесь здесь делать"cd", "cd C:/reftek/bin",
? - person Compo   schedule 17.10.2020