- - PR -
Windowフォームのコマンドラインからの起動
投稿者 | 投稿内容 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-03-27 06:54
わかりにくい説明ですみません。このパイプなりを使ってコンソールがメッセージを受け取る方法を教えていただけないでしょうか?? またこのような手段をとった理由ですが、通常はGUIを使ってWindowsアプリケーションとして利用していたのですが、ある日このソフトを使って自動処理をしなければならなくなりました。あるファイルを読み込んで図化する処理(Automation)を行うのですが、ならばいちいちGUIを表示させること無く、バッチ処理で行えば実行処理が短くて扱いやすいと思ったので、コンソールからの起動方法について考えるようになったのです。 | ||||||||||||
|
投稿日時: 2006-03-27 08:49
調べていただいたらすぐに分かると思います。 _________________ 囚人のジレンマな日々 | ||||||||||||
|
投稿日時: 2006-03-27 09:27
このロジックの部位だけを見てると GUI を伴いませんので、 クラス ライブラリ化し、相互から利用する手段も考えられますね。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||||||
|
投稿日時: 2006-03-27 18:25
それだと、使い方に妙な制限が出来てしまいますね。 「Windows Forms アプリケーション」として実行ファイルを生成した場合、プロセス起動時に標準入出力が割り当てられないのが Windows OS の仕様です。 なので、コマンドライン引数などによって GUI/CUI を切り返したい場合、そこがちょっと問題になります。 一番簡単なのは、じゃんぬさんが書かれているように機能部分を .dll 化して、GUI/CUI 用の .exe を別にに作ってそれを呼び出すことです。 | ||||||||||||
|
投稿日時: 2006-03-27 19:46
>それだと、使い方に妙な制限が出来てしまいますね。
> 「Windows Forms アプリケーション」として実行ファイルを生成した場合、プロセス起動時に標準入出力が割り当てられないのが Windows OS の仕様です。 > なので、コマンドライン引数などによって GUI/CUI を切り返したい場合、そこがちょっと問題になります。 > 一番簡単なのは、じゃんぬさんが書かれているように機能部分を .dll 化して、GUI/CUI 用の .exe を別にに作ってそれを呼び出すことです。 確かにDLLの呼び出しはできますね。 じゃんぬねっとさん、渋木さんありがとうございました。 | ||||||||||||
|
投稿日時: 2006-03-27 20:43
確かに。
自動処理しなければならないのなら、コンソールにメッセージを出力しても無駄のような気はしますが。 素直にファイルにでもログを書くほうが得策ではないでしょうか。
ちなみに、exe のままでも他のアセンブリから参照できます。(呼びたい機能がpublicなら) _________________ 囚人のジレンマな日々 | ||||||||||||
|
投稿日時: 2006-03-27 21:21
その秘儀を使うのであれば、private でも良いですよ。 「それがどうした?」といった感じですけど。(;^-^) _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||||||
|
投稿日時: 2006-03-27 21:23
わはは。確かに^^; _________________ 囚人のジレンマな日々 |