他プログラムからIEを操作したい – プログラミング – Home

他プログラムからIEを操作したい
 
通知
すべてクリア

[解決済] 他プログラムからIEを操作したい


さっちゃん
 さっちゃん
(@さっちゃん)
ゲスト
結合: 24年前
投稿: 7
Topic starter  

こんにちは。いつも拝見させていただいております。

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

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

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


引用未解決
トピックタグ
wood
 wood
(@wood)
ゲスト
結合: 23年前
投稿: 895
 

回答ではありません

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

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


返信引用
comcom
 comcom
(@comcom)
ゲスト
結合: 22年前
投稿: 1
 

atlのプロジェクトで、[Internet Explorer?」を挿入すれば、いろいろとできる。
これを挿入してみて、codeguru辺りで、調査するほうが楽。


返信引用
RAPT
 RAPT
(@RAPT)
ゲスト
結合: 23年前
投稿: 310
 

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


返信引用
渋木宏明(ひどり)
 渋木宏明(ひどり)
(@渋木宏明(ひどり))
ゲスト
結合: 23年前
投稿: 196
 

ウィンドウハンドルからは、IE を満足に制御できません。

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

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

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

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

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

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

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


返信引用
さっちゃん
 さっちゃん
(@さっちゃん)
ゲスト
結合: 24年前
投稿: 7
Topic starter  

皆様回答ありがとうございます。

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

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


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました