2017-02-23 7 views
0

파이썬이 윈도우 EXE 파일을 실행하는 것에 대한 질문을 보았습니다.하지만 조금 다른 것이 필요합니다 ... 우분투를 실행하는 컴퓨터에서하고 싶습니다.윈도우 프로그램을 운영하는 파이썬 스크립트

나는 윈도우를 여는 EXE 윈도우를 가지고 있는데, 나는 COM 포트를 선택하고 파일 이름을 입력 할 수있다. 그런 다음 그 COM 포트의 센서를 질의 할 수있는 몇 가지 버튼을 가지고있다. 파일. 이 데이터 수집 프로세스를 자동화해야하고 Ubuntu 16.04 LTS를 실행하는 MinnowBoard에서 Python 스크립트로 EXE의 동작을 모방하는 것을 좋아하지만 센서 작성자는 센서와 통신하는 데 사용하는 프로토콜을 공유하지 않습니다. 분명한 프로토콜이 제대로 작동하지 않는 것 같아서 컴파일 된 실행 파일이 남아 있습니다.

리눅스의 python에서 Windows 실행 파일을 실행하고 파일 이름 필드에 텍스트를 입력 한 다음 특정 시퀀스의 일부 버튼을 클릭하는 방법이 있습니까? 본질적으로, 나는 Wine과 같은 에뮬레이터의 일반화 된 매크로 기능을 찾고있다. EXE는 키 누르기를 통해 작동 할 수 있습니다 (마우스는 필수적이지 않습니다). 어떤 생각이 도움이 될 것입니다!

+0

Btw, * python 자동화 창 검색 * 첫 방문 : https://pywinauto.github.io/ – kazemakase

답변

0

처음 체크 아웃 시스템에서는 전달 된 문자열을 명령 줄로 호출합니다. 다음은 Windows 메모장에서 파일을 편집하는 예입니다.

from os import system 
print("input path and filename to open a file") 
print("input nothing to create a new file") 
file = input(">>> ") 
system("notepad.exe {}".format(file)) 

Windows 프로그램에는 동작을 변경하기위한 스위치 (문자 앞에 /로 표시)가 있습니다. 체크 아웃 -? 명령 줄에서 더 자세한 정보를 얻으려면 일부 Windows 프로그램에서.

Linux의 경우 가상 시스템을 설치해야합니다. 시스템에서 vm을 호출하십시오. 여기에서 위에 전달 된 파일 이름과 같은 exe를 notepad.exe에 전달했습니다.

#windowsCommandLine is the windows programfile and its parameters -> so it is the string you will pass directly to system on windows. 
system("{} {}".format(virtualBoxPath, windowsCommandLine) 

일부 연구를 통해 입력을 시뮬레이트 할 수있는 VM을 찾을 수 있었고 다른 프로그래밍 언어를 사용할 수도있었습니다. Windows-C 라이브러리에는 키보드 입력을 에뮬레이션 할 수있는 몇 가지 기능이 있습니다.