Позвольте мне перефразировать мой предыдущий вопрос.
Я только что создал инструмент в ArcGIS, используя pythong в качестве языка сценариев. Инструмент выполняет (запускает) внешнюю программу, используя subprocess.popen. Когда я запускаю инструмент из ArcGSIS, появляется окно, которое показывает только следующее.
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.
Спасибо