- - PR -
コンソールアプリケーションの出力をバッチファイルに渡したい
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-07-03 11:47
文字列を出力するコンソールアプリケーションAがあります。
Aを起動するバッチファイルの中で、Aの実行結果を利用する方法はありますでしょうか? もう少し簡単に申し上げますと、仮に、アプリケーションのリターンコード(バッチファイルのErrorLevel)として文字列を利用することができれば解決できる問題です。 簡単に何とかなりそうで、調べてみるとなかなか難しいことなのかと感じています。 アドバイスをお願いします。 | ||||
|
投稿日時: 2006-07-03 11:51
A から外部ファイルへ出力しな限り、ExitCode しか無理だと思います。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||
|
投稿日時: 2006-07-03 11:54
ググってみたところ次のようなページが見つかりました
http://pegalabo.net/archives/VB.NET/source/PingCheck.html 参考になりますでしょうか? # リターンコードではなく標準出力を取得して なので # 目的とはあわないかも… [ メッセージ編集済み 編集者: Katze 編集日時 2006-07-03 11:56 ] | ||||
|
投稿日時: 2006-07-03 12:04
じゃんぬねっとさん、Katzeさん、早速の返答をありがとうございます。
> A から外部ファイルへ出力しな限り、ExitCode しか無理だと思います。 私も調べていて、↑こうなのかなー・・・、と感じてきたところで、確認のために質問させて頂いた次第でした。 どうもありがとうございました。 外部ファイルに出力するわけにも行かない問題なので、別の方法を検討してみます。 Katzeさんの紹介してくれたようなやり方になるかと思います。 #これができると割りと便利かと思うんですがね・・・ | ||||
|
投稿日時: 2006-07-03 12:17
んあ?バッチのプログラムの中で受け取りたいんじゃないの?
何か質問と解答ずれてるような気がするんだけど。気のせいか? | ||||
|
投稿日時: 2006-07-03 12:28
なぜ外部ファイルに出力するわけにも行かないのか書いてないので、
はずしているかもですが、 hoge.bat の中身 A.exe | B.exe のようにパイプを使って、A.exeの標準出力をB.exeの標準入力に つなげたらどうでしょう? | ||||
|
投稿日時: 2006-07-03 12:43
失礼しましたm(_ _)m 「バッチのプログラムの中で」というのを コンソールアプリケーションAを起動する プログラムと勘違いしました | ||||
|
投稿日時: 2006-07-03 13:26
質問主です。
具体的に説明させて頂きたいと思います。 やりたいことは、以下のような感じです。 ・SQL*Loaderを使って、テキストファイルの内容をOracleのテーブルに、定期的に、人手を介さずにアップロードしたい。 ・通常であれば、1行のバッチファイルで可能であるが、社内ポリシー上、DBパスワードを平文でテキストファイルに保存することが認められないため、工夫が必要。 ・暗号化したDBパスワードがレジストリに保存されている。(特に、こうでなければいけないというわけではない) ・複合を行うためのDLLが提供されている。 以上で、状況が伝わりますでしょうか。 一時的にしろ、DBパスワードをディスクに保存することはNGなので、外部ファイル出力はできません。 今後、DBパスワードの変更を行いたい、というニーズが発生することも踏まえ、なるべくシンプルで、運用担当者にも分かりやすくなる方法を検討したいと思っています。 良いアイデアがありましたらお願いします。 今のところ、SQL*Loaderのコマンドのパスワードの部分を"PPPPP" にでも置き換えた文字列を引数にして、複合化用のアプリケーションに渡す方法で行こうかなーと思っています。 #Katzeさんが紹介してくれたコードの中身を良く見もせずに、「参考にする」ようなことを言ってすみませんでした。 |