C#/ .Net启动进程,退出代码为-2146234327

时间:2012-10-04 12:39:08

标签: c# process exit-code

我有一个C#4应用程序,它启动另一个应用程序来执行一些Python代码。 Python代码可以毫无问题地执行(在PythonWin上检查) 在我的应用程序中,我看到退出代码是-2146234327。我一直在谷歌搜索,无法弄清楚它是什么意思。
任何想法?
感谢

2 个答案:

答案 0 :(得分:6)

-2146234327是HRESULT代码,通常以十六进制查找。见Interpreting HRESULTS returned from .NET/CLR: 0x8013XXXX

  

HOST_E_EXITPROCESS_TIMEOUT 0x80131029由于过程已退出   超时升级。

答案 1 :(得分:1)

我根据这是一个警告而非错误的事实编写了一个解决方法。

我在DOS批处理文件中包含以下内容,该文件运行ArcGIS的分析和索引重建过程

set myRC=%ERRORLEVEL%
echo %myRC%
set Constant=-2146234327
echo %Constant%
if %myRC% EQU %Constant% set ERRORLEVEL=0
echo %ERRORLEVEL%
  • 第1行将变量设置为从调用命令返回的值,例如调用D:\ Python27 \ ArcGIS10.2 \ python.exe D:\ Analyze \ Analyze.py>> d:\分析\ LOG \ output.txt的
  • 第2行回显了返回的值
  • 第3行设置常量变量
  • 第4行回应
  • 第5行将CALL命令返回的值与常量进行比较,如果匹配则将ERRORLEVEL变量设置为零
  • 第6行回显了返回代码。

在其他地方发现这些信息可能会对这个问题有所了解:

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