나는 비디오 상단에 그려지는 테두리 상자를 포함하는 XML 파일을 사용하는 한 장의 코코아 코드를 가지고 있습니다 (각 상자에는 연결된 프레임이 있습니다) . Cocoa 프로그램은 커맨드 라인에서 실행될 것입니다. (모든 매개 변수를 명령 행 인자로 취합니다)subprocess.call을 실행하여 코코아 명령 줄 응용 프로그램 실행
모든 XML 문서로 프로그램을 실행할 수 있습니다. 그러나 Python 스크립트 내에서 프로그램을 실행하려고하면 문제가 발생합니다. 예를 들어 :
with file("test.xml") as temp:
temp.write(doc.toprettyxml())
# cval is my cocoa program to call, the other arguments are given to the Python script and parsed with optparser
command = ["./cval", "-o", options.output, "-i", str(options.interval), "-s", "%dx%d" % (options.width, options.height), "-f", str(options.frames), "-x", temp.name]
subprocess.call(command)
는 때때로 이것은 다른 시간 (동작을 변경할 수있는 XML 문서에서 하나 개의 번호를 변경)하지 실패 내 'cval'을하게됩니다. 또한 거기에없는 XML 요소를 읽으려고 할 때 깨지는 것을 확인할 수 있습니다. 단지 'test.xml'을 열고 요소가 실제로 존재하는지 확인합니다.
그러나 'test.xml'을 사용하여 'cval'(Python 스크립트 외부)을 실행하면 정상적으로 작동합니다. 이것은 내가 subprocess.call을 할 때 이상한 일이 일어난다는 것을 믿게한다. 그러나 나는 그것이 무엇이 될 수 있을지 확신하지 못한다. 필자는 임의로 이상한 동작을 보이지만 본질적으로 더 복잡한 다른 작업 (즉, XML을 사용하지 않음)을 수행하는 다른 Cocoa/Python 믹스가 있습니다.
누군가가이 문제에 부딪혔거나이 이상 함을 디버깅하는 다음 단계를 알기를 바랍니다.
어떤 오류 메시지가이 점점? –