ハンドルを取得したいとおもっています。
ウインドウハンドルであれば、
hWnd=GetWindow(GetForegroundWindow(),GW_CHILD);
とすることで、ある程度取得できますが、
この方法は完璧ではないようです。
良い方法はないでしょうか?
テキストボックスに文字列を入力したいと言う事でしょうか?
Windows APIのGetFocusとSendMessage を使用する様です。
以下、参考になりますでしょうか?
的外れでしたらすみません。
VC■ 他のソフトのテキストボックスに文字(漢字も)を入力するには?
http://www.hey-to.net/ML-archive/vcppML/1999/msg07927.html
DL■ 他のアプリケーションがアクティブな時のGetFocus
Windows APIのGetFocusは、キーボードフォーカスを持っている、自アプリに関連したウィンドウを調べる関数です。他のアプリにフォーカスがある時に単純にGetFocusを実行しただけでは 0 が返ります。
他のアプリにフォーカスがある場合は、以下のようにする必要があります。
http://hp.vector.co.jp/authors/VA003525/tips13.htm
VB■ 他のアプリケーションのフォーカスがあるウィンドウのハンドルを取得
http://hp.vector.co.jp/authors/VA023367/neartech/vb/1.html
他のアプリケーションのフォーカスがあるウィンドウ(Formモジュールでなく、キャレットのあるTextbox等)のウィンドウハンドルを取得します
使い道としては SendMessage API と組み合わせて内容を書き換える事が出来ますが、私が実験してみた結果、Webページのフォームで作成されたテキストボックス (<INPUY TYPE="TEXT">)等は取得出来ませんでした(これが一番やりたかったのに…)
ありがとうございます。
この方法かなり有用でした!