最新閲覧日:

VC++にて、親プロセスから子プロセス(EXEファイル)をCreateProcessで起動し、
子プロセスが要求するダイアログ(文字とOKボタンのクリック)への入力を親プロ
セスから制御する方法を教えてください。

A 回答 (1件)

んー、これはどっちなんだろ……。



子プロセスが自分で作るプログラムなのかってあたりがキーになります。

親子ともに作るのでしたら、これはインターフェイスは色々考えられますが、どうとでもなるかと思います

子プロセスが(プログラムをいじれない)既存のものだとしたら、これはちょっと面倒なことになりますねー。その子プロセス次第ってところでしょうか。子プロセスがある特定のEXEだとしたらそのEXE次第ですかね。んでもこの場合厄介は厄介ですよ。OKボタンならOKボタンのHWND取る方法から必要になりますから、結構段階があります。

てなわけで、子プロセスの性質とか、どの辺まで実現できているのかとかその辺の補足を頂きたいです、はい。
    • good
    • 0
この回答へのお礼

ご解答ありがとうございます。

さて、子プロセスは自分のプログラムではありません。つまり、親のプロセスのみ作成し、既存の外部プログラム(これが今回の子プロセス)を呼び出しての話です。

現状はSendMessageを使って子プロセスのダイアログの文字入力フォーカスへ目的の文字列を送信(代入)するところまではなんとかできましたが、Enterキー入力の送信ができないところで止まっています。
というのも、VBではSendKeyにてEnterキー入力を簡単にできるようですが、VC++にはこの関数がないため ak1さんの言われるように「OKボタンのHWND取る方法」となるのでしょうか?
つまり、通常の文字入力があるダイアログの場合EnterキーにてOKボタンのクリックと同様の動作となると思いますので、SendKeyのような関数を作ってEnterキーを送信すればよいのではと考えていますがいかがでしょう。
ただ、SendKey関数の仕組みが分からないので作れないのが現状ですが...

お礼日時:2001/12/12 17:15

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード


人気Q&Aランキング

おすすめ情報