让我重新说明我以前的问题。 我刚刚在ArcGIS中使用pythong作为脚本语言创建了一个工具。该工具使用subprocess.popen执行(运行)外部程序。当我从ArcGSIS运行该工具时,会出现一个仅显示以下内容的窗口。Python打印缓冲
Executing: RunFLOW C:\FLOW C:\FLOW\FLW.bat
Start Time: Mon Nov 30 16:50:37 2009
Running script RunFLOW...
Completed script RuFLOW...
Executed (RunFLOW) successfully.
End Time: Mon Nov 30 16:50:48 2009 (Elapsed Time: 11.00 seconds)
该脚本是如下
# Import system modules
import sys, string, os, arcgisscripting, subprocess
# Create the Geoprocessor object
gp = arcgisscripting.create()
# Read the parameter values:
# 1: input workspace
prj_fld = gp.GetParameterAsText(0)
Flow_bat = gp.GetParameterAsText(1)
os.chdir(prj_fld)
p=subprocess.Popen(Flow_bat,shell=True,stdout=subprocess.PIPE)
stdout_value = p.communicate()[0]
print '\tstdout:', repr(stdout_value)
当我从命令窗口运行同一程序,它打印一个完整的信息(日期,迭代的数量等)的屏幕。我想在从ArcGIS运行模型之后出现的窗口中查看所有这些信息,以及它现在正在打印的内容。 我试过打印,沟通,冲洗但无法做到。有什么建议么?
当我运行该脚本,因为它是现在,它运行的可执行文件,但如下
ERROR 999998: There are no more files.
感谢
1.请忽略混淆和无关的垃圾,如“让我重述我以前的问题”。然后,请查看页面右侧的格式化提示。 – 2009-12-01 01:46:17
@Mesut:重新格式化您的问题:请参阅编辑器帮助,了解如何执行代码块 – jkp 2009-12-01 01:48:53
感谢您的格式化... – Mesut 2009-12-01 01:56:28