人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

JAVAでIEコンポーネントのブラウザを作りたいと思っているのですが、プロキシに関しての仕様で悩んでいます。

手作業で、登録してあるプロキシのリストより選んで、プロキシを切り替えるものに関してはあると思うのですが、それらの作業を自動化できないかと思っています。

そこで、フィールドにいくつか入力してあるプロキシのリストを読み込み、切り替えるとき、どこにプロキシのURLとポートの値を引き渡せばいいのかを知りたいと思っています。

自分で調べて、UrlMkSetSessionOptionや、UserAgentあたりがキーなのかと思ったのですが、いかがですか。


当方、初心者プログラマのため、質問の意図が伝わりにくいかも知れませんが、ご容赦ください!
回答お待ちしています。

●質問者: yoshi5231
●カテゴリ:コンピュータ インターネット
✍キーワード:IEコンポーネント Java URL フィールド ブラウザ
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● kurukuru-neko
●27ポイント

プロキシは、IPアドレス、ポートを指定方法と

自動構成スクリプを使う方法があります。

あるMS製品を使っていたりある一定以上の

企業や、自動設定をしたいところは、

自動構成スクリプト(JavaScript)を使う方法が利用します。

http://www.atmarkit.co.jp/fwin2k/experiments/ieproxy/ieproxy...

UrlMkSetSessionOption

http://msdn.microsoft.com/library/default.asp?url=/workshop/...

◎質問者からの返答

参考にはなりましたが、私が意図していたものとは若干観点が違いました。

私が求めているのは、ある自作のアイコン(IEの戻る、進む、プリンタのような)を押すことで、別に記してあったプロキシのリスト(.txtを読み込み、あるいはテキストフィールドに入れてあったもの)より値を入れ替え、プロキシを変えたいといった機能です。

上記のことをする際の、IEのコンポーネントの扱い方などを求めています。

説明不足で申し訳ありません。


2 ● ardarim
●27ポイント

InternetSetOptionを使えばよいかと思います。

http://msdn.microsoft.com/library/default.asp?url=/library/e...


hInternetにNULLを指定することで、システム全体のプロキシ設定を変更します(レジストリを書き換えます)。

dwOptionには、INTERNET_OPTION_PROXYを指定します。

lpBufferには、INTERNET_PROXY_INFO構造体を指定し、構造体にてプロキシサーバやポートを指定します。

dwBufferLengthには、INTERNET_PROXY_INFO構造体のサイズを指定します。


ちなみに該当のレジストリは下記の場所にありますが、BINARYタイプなので、InternetSetOptionを通した変更が必要です。

HKEY_CURRENT_USER\SOFTWARE\Microsoft\windows\CurrentVersion\Internet Settings\Connections:DefaultConnectionSettings


変更後、ブラウザコントロールのリフレッシュが必要になると思います。

◎質問者からの返答

回答ありがとうございました

私なりにInternetSetOptionを調べてみます。

当方 あまり理解できていないので・・

ほかにも詳しい説明等ありましたらよろしくお願いいたします。ポイントは回答ごとに

割り振らせていただきますので…


3 ● ardarim
●26ポイント

こちら(英語)にInternetSetOptionの簡単なサンプルコードが載っています。

日本語版もありますが機械翻訳なのでちょっと文意が汲み取りにくいかもしれません。


なお前回回答した方法は古い(IE 4)やり方で、IE 5以降はINTERNET_OPTION_PROXYではなくINTERNET_OPTION_PER_CONNECTION_OPTIONを使うようですので訂正しておきます。

サンプルは上記URLにあります。


具体的に何が知りたいかが分かると的確な回答もできるかと思いますが...


参考ですが、いわゆるIEコンポーネントと呼ばれているものはブラウザコントロールとも呼ばれます。ブラウザコントロールは、内部でHTTPなどのプロトコルを使用するために、WinInetライブラリを呼び出しています。InternetSetOptionはこのWinInetライブラリの設定を変更するものです。

これは、Windows CEでのInternet Explorerと関連コンポーネントの概念図ですが、デスクトップ版のInternet Explorerと大きく構成は変わりませんので参考までに。IEコンポーネントを使ったブラウザアプリは"Browser Application"の部分に位置づけられます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ