こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

-広告-

解決済みの質問

Cコードでのパイプの疑似的な再現方法

どうも、他の人が作ったコマンドプロンプトで利用するプログラムをDLLに変更したいと思っています。

hoge.txt > mage.exe

という風にテキストを引き渡すと、構文解析を行って必要な情報を返してくれるプログラムなので、テキストを引き渡さないときは、入力するためのプロンプトを出してきます。

このプログラムをdllにしてC#等から呼び出せるようにしたいのです。

最初は何処かでchar*とかを引数に取る関数があるだろうと思っていたのですが
実際は結構呼び出しの深いところの複数個所でgetcharが呼ばれていて、直すのが大変そうなので
内部のgetchar渡した文字列を取り出せるように、パイプのデータ渡しを疑似的に再現できないでしょうか?

ちょっとこのあたりの知識がないのでお力添えをお願いいたします。

ちなみに触っているのはyaccで生成したパーサーで構文解析を行ってくれるプログラムです。

投稿日時 - 2015-11-21 02:04:12

QNo.9083624

困ってます

質問者が選んだベストアンサー

そのコンソールアプリを呼び出すDLLでいいのではと。

参考URL:http://relog.xii.jp/mt5r/2005/03/win32api.html

投稿日時 - 2015-11-21 07:04:50

補足

なるほど、これならDLLは作らないでC#で側だけ作ってあげればうまくいきそうですね。
あとでAndroid版でも同じ物作ろうと思って居たのですが、同じ方法でうまくいくかな。

投稿日時 - 2015-11-21 18:40:34

お礼

ありがとうございました。
最終的にはC#でアプリを作ってそこからコマンドを直に叩く方法が楽そうなので、それで実装する方針にしました。
ありがとうございます。
http://dobon.net/vb/dotnet/process/standardoutput.html

投稿日時 - 2015-11-21 22:54:41

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

-広告-
-広告-

回答(1)

-広告-
-広告-

あなたにオススメの質問

-広告-
-広告-