IEでアクセスすると,ローカルファイルシステムに書き込むサンプル

注意と免責事項:

下記の手順を実行する前に,このHTMLページのソースをお読みになり,
安全性を理解したうえで実行を継続なさることを推奨します。
このページに記載されている技術情報は,有益な目的のためのプログラミングの情報であり,
いかなる悪意のある攻撃的用途にも利用してはなりません。


このページにIE(8以降)でアクセスすると,アドオンの実行許可を求められます。
「アドオンの実行を許可するには,ここをクリックして下さい」をクリックし,
「このActiveXコントロールを実行しますか」のダイアログ上で「実行する」をクリックすると,ページがリロードされます。

すると,IEはActiveXの実行に取り掛かりますが,セキュリティの設定上,まず下記のエラーになります。
「メッセージ: オートメーション サーバーはオブジェクトを作成できません。」
IEのステータスバーには「ページでエラーが発生しました。」と表示されます。

上記のエラーを発生させずに,IEがクライアントPCのローカル・ファイルシステムに書き込み可能にするには,
下記の手順を実行します。ただし,この操作はセキュリティレベルの操作にかかわるため,自己責任で行なって下さい。
また,動作確認後はすぐにセキュリティレベルを元に戻すべきです。


IEで,ツール→インターネットオプション→セキュリティで,インターネットのゾーン・セキュリティレベルを「レベルのカスタマイズ」します。
ActiveXに関する設定項目の中で,「スクリプトを実行しても安全だとマークされていないActiveXコントロールの初期化とスクリプトの実行」
という項目を探し,「無効にする(推奨)」となっているのを「有効にする(セキュリティで保護されていない)」に変更してOKを押下。
「現在のセキュリティ設定では,コンピューターが危険にさらされます。」という警告が出るので,はい→OKを押下してダイアログを閉じます。
このタイミングで,マカフィーなどのウイルス対策ソフトがブラウザ上で警告を発する場合がありますが,それを無視します。

これで,このページのActiveXを含むコードを実行する準備が整いました。

IE上で,ページをリロードします。すぐにスクリプトが実行され,ローカルに C:\hoge.txt が生成されます。
このテキストファイルの中身を確認したら,ブラウザからローカルのファイルシステムに書きこむ実験は成功です。
すぐにセキュリティ設定をもとに戻して下さい。

以上


This document was written by id:language_and_engineering,
thx to information from this forum, inspired by this question.