2012-10-04 3 views
4

일부 Python 코드를 실행하기 위해 다른 C# 응용 프로그램을 시작하는 C# 4 응용 프로그램이 있습니다. Python 코드는 문제없이 실행될 수 있습니다 (PythonWin에서 확인).
내 앱에서 이탈 코드가 -2146234327임을 알 수 있습니다. 나는 인터넷 검색을하고 있었는데 그게 무슨 뜻인지 알 수 없었다.
아이디어가 있으십니까?
감사합니다.종료 코드가있는 순 시작된 프로세스 -2146234327

답변

6

-2146234327는 일반적으로 16 진수로 검색됩니다. Interpreting HRESULTS returned from .NET/CLR: 0x8013XXXX 참조 :

HOST_E_EXITPROCESS_TIMEOUT0x80131029 프로세스로 인해 시간 초과 상승을 종료.

+0

감사합니다. 그것이 의미하는 바를 약간 넓힐 수있는 기회는 무엇입니까? 이 프로세스는 주어진 파이썬 코드를 성공적으로 실행하지만 어떤 이유로이 종료 코드를 반환합니다. – Noich

+1

MSDN에는 코드가 설명되어 있지 않지만 기본 내부적으로 더 깊기 때문에 코드를 설명하지 않습니다. 내 생각에 코드는 실행되었지만 호스팅 프로세스는 잠시 동안 (예기치 않게) 살아 있었고 나중에는 강제로 닫아서 코드를 닫았습니다. 코드는 동작을 나타냅니다. Puthon 코드 자체에 문제가 있다고 말할 수 없습니다. –

1

나는 이것이 오류가 아니라 경고라는 사실을 기반으로 해결 방법을 작성했습니다.

내가 분석하고 지수는 ArcGIS에 대한 프로세스를 다시 실행 DOS 배치 파일에 다음을 포함했다

set myRC=%ERRORLEVEL% 
echo %myRC% 
set Constant=-2146234327 
echo %Constant% 
if %myRC% EQU %Constant% set ERRORLEVEL=0 
echo %ERRORLEVEL% 
  • 1 호선 값에 변수가 예를 들어, 호출 명령에서 반환 설정
  • 줄 2는 반환 된 값을 에코합니다.
  • 줄 3은 상수를 설정합니다. D : \ Python27 \ ArcGIS10.2 \ python.exe D : \ Analyze \ 변수
  • 4 호선 에코이 밖으로
  • 5 호선은 값이 일정에 대한 CALL 명령에서 반환 된 비교가
  • 라인 (6) 반환 코드를 에코 일치하는 경우 제로로 ERRORLEVEL 변수를 설정합니다.

이 문제에 좀 더 많은 빛을 흘릴 수 다른 곳에서이 정보를 찾았습니다

https://github.com/ucd-cws/arcpy_metadata/issues/13

관련 문제