前回の質問を言い換えさせてください。pythong をスクリプト言語として使用して、ArcGIS でツールを作成しました。このツールは、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.
ありがとう