exeファイルからのエラーレベル以外の入手
-
19-09-2019 - |
質問
これは、.NET exeファイルからのエラーレベル以外の戻り値を取得することはできますか? exeファイルは、スクリプト、バッチまたはREXXから呼び出すことがある。
でない場合は、バッチまたはREXXからアセンブリ内のメソッドを呼び出し、戻り値を取得することができますか?
解決
任意の.NET実行ファイルのエントリ(及び終了)点は主な方法です、そのstaticメソッドvoid
又はint
戻り型のいずれかで宣言されなければならない。
このような理由から、あなたは直接int
以外を返すことができません。
このint
値は、エラーレベル(慣例、0によって成功を意味する)である。
あなたはまだあなたのプログラム書き込み中にあなたが好きな書き込み、そこから読み取ることができるようになる「ステータス」ファイルにすることができます。
他のヒント
C / C ++コンテキストでは、main()メソッドのシグネチャに依存します。しかし、リターンがint型でなければならないことは必須です。それでは、オデッド提案は
試してみる価値がありますの可能な代替ソリューションは、あなたの.NETメソッドは、REXXがそれを見つけることができる場所に出力しますどのrxqueue.exeにリダイレクトされ、カムどのstdoutに文字列を出力することです。それはキューからプル到着したとき、あなたのREXXラッパーで、復帰に待ってます。
'external.exe | rxqueue'
line. = ''
ndx = 0
do while queued() > 0
ndx = ndx + 1
parse pull line.ndx
end
line.0 = ndx /* this is unnecessary but is a common practice to store the
stem size in leaf 0 */
/* now deal with your results */
所属していません StackOverflow