環境変数を変更するには?

解決


VB.NET  2003-09-11 05:55:42  No: 79365

VBでオリジナルブラウザーを製作中ですが、UserAgentを独自にしたいのですが、
どなたかご存知でしたら、教えてください。


魔界の仮面弁士  2003-09-11 07:28:09  No: 79366

「オリジナル」という事は、WinSock等でHTTP通信を行っているのだと想像しますが、
それであれば、その「オリジナルブラウザ」がデータをリクエストする際に、
HTTP要求ヘッダで、任意の文字列を「User-Agent」として指定するだけで済みますよ。

あるいは、XMLHTTPオブジェクトで通信している場合や、WebBrowserコントロールを
流用しているような場合でも、ヘッダの上書き指定は可能ですよね。

ただし、WinSock等で独自に通信している場合はともかくとして、
WebBrowserをカスタム化しているような場合は、スクリプトの制御が
非常に面倒かも知れませんけれどね。。。。
# 徹底的にやろうとするならば、User-Agentヘッダを送るだけではなく、
# クライアントスクリプト上における、navigatorオブジェクトの
# userAgentプロパティも偽装しなければいけなくなるでしょうし。


VB.NET  2003-09-13 09:08:13  No: 79367

WebBrowserコントロールで行おうとしていますが、フレーム等がうまく表示されません、根本的にuserAgentを変更してしまう方法はありませんか?


魔界の仮面弁士  2003-09-13 09:31:47  No: 79368

具体的なコードは書きませんが、サーバサイドに対するUser-Agentに関しては、
BeforeNavigate2イベントでナビゲーションをキャンセルし、その後改めて、
Navigate2メソッドをHeaders引数付きで呼び出す事で解決できると思います。


VB.NET  2003-09-13 10:53:39  No: 79369

一応そのような対応をしておるのですが、表示されるのは連続でフレームが表示され、バラバラの状態になってしまいます。1枚のページとして表示されません。
レジストリの設定等では無理なのでしょうか?


魔界の仮面弁士  2003-09-13 21:29:03  No: 79370

> レジストリの設定等では無理なのでしょうか?
一応、HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\User Agent\ に、
UserAgent修正用のエントリが幾つか用意されているのですが、これらはアプリケーション単位で
設定するための物ではなく、OS全体に影響を与えてしまうものなので、あまりお奨めできません。

下記も参照してみてください。
http://support.microsoft.com/default.aspx?kbid=183412


VB.NET  2003-09-25 03:08:37  No: 79371

ありがとうございました。
もう少し色々試行錯誤してみます。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加