ブラウザからエクスプローラーを開く方法 その1

ブラウザからエクスプローラー(ファイル一覧)を開きたい場合のメモ

ActiveXでExplorer.exeを開くのが一番簡単?

下記のコードを index.html 等の名前で保存してサーバーへアップロード。

サーバーの index.html をInternet Explorerで開くと cドライブが表示されます。
また index.html?p=C:\Program Files (x86) みたいにパラメータを指定すると指定したフォルダが開けます。

<!DOCTYPE html><html lang="ja"><head><meta charset="UTF-8"><meta name="robots" content="noindex,nofollow"><title>エクスプローラを実行</title></head><body>

<script type="text/javascript" langage="JavaScript">
	function RunApp(AppPath) {
		new ActiveXObject("WScript.Shell").Run(AppPath);
		window.open('about:blank','_self').close();	//自動でウインドウを閉じる
	}
	var getUrlVars = function(){
	    var vars = {}; 
	    var param = location.search.substring(1).split('&');
	    for(var i = 0; i < param.length; i++) {
	        var keySearch = param[i].search(/=/);
	        var key = '';
	        if(keySearch != -1) key = param[i].slice(0, keySearch);
	        var val = param[i].slice(param[i].indexOf('=', 0) + 1);
	        if(key != '') vars[key] = decodeURI(val);
	    } 
	    return vars;
	}
	var args = getUrlVars();

	///////////////////////////////////////////////////////////////////////
	var folder = "c:\\";				// 標準で開きたいフォルダ 
	///////////////////////////////////////////////////////////////////////

	if(args["p"]) folder = args["p"];	// 開きたいフォルダを指定する場合

	var exec = "explorer.exe /n /e /root,"+folder;

</script>

</head><BODY>

<script type="text/javascript" langage="JavaScript">
	var html = '<form><input type="text" name="url" size="64" value="'+folder+'"readonly></form>';
	document.write(html);
	RunApp(exec);
</script>
<script type="text/javascript" langage="JavaScript">
    var ua = window.navigator.userAgent.toLowerCase();

	if(ua.indexOf('msie') != -1 || ua.indexOf('trident') != -1){
        // セキュリティの設定ができていない
        document.write('Internet Explorer のセキュリティの設定が完了していません。');
    } else {
        // IEでない
        document.write('Internet Explorer 以外のブラウザでは動作しません。');
	}
</script>
</body></html>

実行にはIEのセキュリティ設定が必要です。

あわせて読みたい
IEでActiveXを使う設定方法 Internet ExplorerでActiveXを使う設定をメモ 今回は外部サーバーに置いたhtmlからの実行を前提としています。 通常の方法 Windowsキーを押しながら『R』ボタンを押して...

Google Chromeから実行するにはIE Tabが便利です。

あわせて読みたい
Google ChromeでIE専用ページを表示する(IE Tab) 最近はInternet Explorerでないと表示できないページはほとんど無いですが、ActiveXを使ったページではIEは大変重宝します。 Cromeをデフォルトで使う人は多いと思いま...

ActiveXのサポートは長くて2025年10月までなので、代替え方法を探していたら良さそうな方法が見つかったので、検証して次の記事に書きたいと思います。

[追記]記事を追加しました

あわせて読みたい
ブラウザからエクスプローラーを開く方法 その2 WindowsにURLスキームを設定する方法になります。 2024/02/04 追記 文中の Explorer /n /e /root,$v を、Invoke-Item $v に変更しました。 当初cmd.exeを使ってやろうと...
Internet Explorer

この記事が気に入ったら
いいねしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次