Web site上のスクリプトからブラウザーのセキュリティレベルを下げる、若しくはインターネットなのにイントラネットと誤認させるにはどうすればいいのでしょう?
編集 削除それができてしまったら、セキュリティホールになってしまうような…。(^^;
スクリプトベースではなく、運用レベルであれば、IEのオプションで、
特定のURLを『信頼済みサイト』として登録しておけば、
「インターネット ゾーン」とは異なるセキュリティを割り当てられますので
それで回避できるかも知れません。
プログラムベースで割り当てるなら、こんな感じで。
Option Explicit
Private Const CLSIDSTR_InternetSecurityManager _
= "{7B8A2D94-0AC9-11D1-896C-00C04FB6BFC4}"
Private Const CLSIDSTR_InternetZoneManager _
= "{7B8A2D95-0AC9-11D1-896C-00C04FB6BFC4}"
Private Const IIDSTR_IInternetSecurityManager _
= "{79eac9ee-baf9-11ce-8c82-00aa004ba90b}"
Private Const IIDSTR_IInternetZoneManager _
= "{79EAC9EF-BAF9-11CE-8C82-00AA004BA90B}"
Private Sub Command1_Click()
Dim clsid As UUID
Dim iid As UUID
Dim ISM As IInternetSecurityManager
Dim ZM As IInternetZoneManager
Dim L As Long
Dim ZA As ZONEATTRIBUTES
CLSIDFromString StrPtr(CLSIDSTR_InternetSecurityManager), clsid
CLSIDFromString StrPtr(IIDSTR_IInternetSecurityManager), iid
L = CoCreateInstance(clsid, Nothing, CLSCTX_INPROC_SERVER, iid, ISM)
If L <> 0 Then
Err.Raise L
Exit Sub
End If
CLSIDFromString StrPtr(CLSIDSTR_InternetZoneManager), clsid
CLSIDFromString StrPtr(IIDSTR_IInternetZoneManager), iid
L = CoCreateInstance(clsid, Nothing, CLSCTX_INPROC_SERVER, iid, ZM)
If L <> 0 Then
Err.Raise L
Set ISM = Nothing
Exit Sub
End If
ZM.GetZoneAttributes URLZONE_TRUSTED, ZA
ZA.dwFlags = ZA.dwFlags And (Not ZAFLAGS_REQUIRE_VERIFICATION)
ZA.dwTemplateCurrentLevel = URLTEMPLATE_CUSTOM
ZM.SetZoneAttributes URLZONE_TRUSTED, ZA
Dim sPattern As String
Dim lp As Long
sPattern = Text1.Text 'https://〜〜〜
lp = StrPtr(sPattern)
ISM.SetZoneMapping URLZONE_TRUSTED, ByVal lp, SZM_CREATE
Set ISM = Nothing
Set ZM = Nothing
End Sub
おぉ。なんかよく分からんことが・・・・
.vbs で保存してみるとライン13文字15 エラー・・・
ぁ、URLは指定しましたけど・・・
むー 分からん;;
自分はVBはあまりいじったことが無くて;;
今回突然いじることになったので・・・
全然分からんです 何が書いてあるのか;;
基本的に、スクリプトベースでは「無理」という事です。
先にも書いたように、運用で回避してください。
先のコードにしても、VBSの物ではなく、VB5/VB6用のコードです。
Webと連携させたいなら、先のコードをActiveX化するか
(それにしても、実行のためにセキュリティレベルを下げる必要がある)、
または、Webアプリではなく、クライアントアプリケーションとして
組む必要があるかと。
そうですか・・・
そうですね・・・ActiveXで送り込もうとしても、その時点で警告出てちゃ意味無いですね;;
ちなみに shad = Pandora でした。最初のんミスです;;