나는 C++로 작성된 프로그램을 가지고 있으며 예외를 만들기 위해 1/0을 나눕니다.파이썬 하위 프로세스 예외 처리
이 프로그램의 .exe는 Python의 서브 프로세스 라이브러리를 통해 실행됩니다. 내 목표는 파이썬 내에서 C++ 프로그램이 만드는 예외를 캡처하고 기록하는 것입니다.
p = subprocess.Popen(['C:\\Users\\name\\Desktop\\Win32Project1.exe'])
이 코드 줄을 실행하면 p는 0이 아닌 값으로 오류가 발생했음을 의미합니다. Windows 7을 실행하고 Python 3.4.1을 사용합니다.
:
은 그럼 당신은 뭔가 등을 말할 수있다. 아마도 [check_output] (https://docs.python.org/3.3/library/subprocess.html#subprocess.check_output)이 도움이됩니까? – FlorianLudwig
_이 코드 줄이 실행될 때 p는 0이 아닌 값이므로 오류가 발생했음을 의미합니다. - 아니요, 이는 발생하지 않습니다. 'subprocess.Popen'은 절대로 0이 아닌 Popen 객체를 반환합니다. 원하는 경우'p.wait()'를 호출하고 리턴 코드를 얻을 수 있습니다. – tdelaney