CreateObjectしたIEに常にヘッダを付けるには?


ひげ「」  2006-06-20 09:11:22  No: 95795

こんにちは。

VB6.0です。

BASIC認証がかかっているページを以下のように起動して
IDとパスワード入力無しで入力したいと考えています。

-----------
Set IE = CreateObject("InternetExplorer.Application")
 IE.Visible = True
 IE.Navigate2 "http://hogehoge/index.html", , , , "Authorization: Basic (BASE64化したuser:passwd)=\n"
-----------

このコードで hogehoge/index.html は、
確かにダイアログが表示可能なのですが
index.htmlに含まれる画像ファイル
(a.gif, b.jpg)を表示する際にBASIC認証ダイアログ
が表示されてしまいます。。

index.htmlに含まれた画像ファイルもダイアログ表示することなく
表示したいのです。

素人的な考えですが、navigate2の引数でheaderを指定しているので
この現象が発生しているのかなと思っています。

 Set IE = CreateObject("InternetExplorer.Application")
 IE.header = "Authorization: Basic (BASE64化したuser:passwd)=\n"

みたいなことができれば回避できるのかなと思っているのですが。。

お気づきの点、回避方法等ご教授くださいませ。


ひげ「」  2006-06-20 09:14:15  No: 95796

一部、文章がおかしかったので修正します。

>このコードで hogehoge/index.html は、
>確かにダイアログが表示可能なのですが


このコードで、hogehoge/index.html は、
確かにBasic認証ダイアログが表示されることなく
IEオブジェクトで受信ができているのですが

大変失礼しました。


ヤマ@文系  2006-06-20 13:14:14  No: 95797

Apacheとかのhttpデーモンの
.htaccessは、httd.confのディレクトリ版みたいなもので
そのディレクトリ全てのアクセス制限を行います。

この場合IEをWitheventsなどでイベントをトラップできるようにして
beforenavigate2のところで
cancel=Trueにしてから
再度ヘッダをつけておくったらどうでしょうか?
もっとスマートな方法があるような気もしますが。。
昔はなんか、http://user:pass@domain.com/
でいけたような気もしたんですが、さっきやったら出来ませんでした。


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

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






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