他プログラムからIEを操作したい

[戻る]
さっちゃん 2003/09/18(木) 10:22:09
こんにちは。いつも拝見させていただいております。

早速ですが、既に立ち上がっているIEを操作したいと考えております。
やりたい事は、特定のページが開かれたら特定のページに飛ばす。という事です。

プログラム自身がIEのウィンドウハンドルを持っているとして
SendMessage等でメッセージを送信してページを移動させると言った事は可能でしょうか?
また、IEから情報を取ってくる(現在のページと履歴など)事など出来ますでしょうか?

ご存知の方いらっしゃいましたら、宜しくお願いします。

wood 2003/09/19(金) 07:05:45
回答ではありません

>やりたい事は、特定のページが開かれたら特定のページに飛ばす

IEの乗っ取り技術に関連するようなのは、回答してくれる人いないと
思います
誇大的(私のような考え)の人は犯罪加担になると思ってしまいます
実現できるなら、「特定のページ」で無くとも
常に「特定のページに飛ばす」ことが出来ますから...

comcom 2003/09/19(金) 22:36:02
atlのプロジェクトで、[Internet Explorer?」を挿入すれば、いろいろとできる。
これを挿入してみて、codeguru辺りで、調査するほうが楽。

RAPT 2003/09/20(土) 00:57:59
もし、必要なら、IEコンポーネントを埋め込んだ独自のブラウザを用意し、
そちらを使わせるようにした方が楽な場合があるかもしれません。
# 用途による。

渋木宏明(ひどり) [E-Mail] [HomePage] 2003/09/21(日) 23:07:07
ウィンドウハンドルからは、IE を満足に制御できません。

IE や Office は、「オートメーション」という技術を使うことによって他のアプリケー
ションと連携できるように設計されているので、それを使います。

「オートメーション」による操作を行うためには、操作対象となるアプリケーションが
公開する操作用の「インターフェースポインタ」を入手しなくてはなりません。

通常、インターフェースポインタは、操作対象のアプリケーションインスタンスの作成
時に入手できます。

実行中の IE の「インターフェースポインタ」を取得するのは多少面倒です。

codeguru にサンプルがあったと思うので、探してみてください。

で、IE が公開する「インターフェースポインタ=IWebBrowser2」が入手できれば、指定
の URL を表示させるのは簡単です。

IWebBrowser2::Navigate2() メソッドを呼び出せば、指定の URL を表示させることが出
来ます。

さっちゃん 2003/09/22(月) 09:02:15
[[解決]]
皆様回答ありがとうございます。

codeguruが何か良くわからないのですが、それらしいサイトに行き、
それらしいサンプルにお目にかかることが出来ました。

これから解析し、理解したいです。いろいろ、ご親切にありがとうございました。

古いスレッドには追加発言できません。