ブラウザ(HTMLかそれに類したもの)からWindowsのレジストリをいじる方法を教えてください。

何がしたいかというと、ローカルで【規定のブラウザ】をちょこちょこ変えたいと思っています。

<input type="radio" name="ie">Internet Explorer
<input type="radio" name="ff">Firefox
(略)
…といった感じで。

JavaScriptやPHPではできませんよね。

VBScript? WSH? HTA? ActiveX?
その辺りかなぁと思うのですが、それぞれの特徴/メリット/デメリットなど教えていただけたら助かります。

さらに言うと、ブラウザを指定して起動させることもできるとなお良いです。
http://q.hatena.ne.jp/ 【IEで開く】【Firefoxで開く】…(略)
といった感じで。


html系統以外でも、何か良さそうな方法があったら教えていただけると助かります。(バッチファイルとか)
できたらGUIが良いのですが。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2011/10/16 16:40:02
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答3件)

id:matane No.1

回答回数40ベストアンサー獲得回数2

ポイント34pt

・ UI いらない場合は、VBScript から WSH を使ってスクリプトを書く

・ UI をつけたい場合は、HTA に VBScript を書く


という感じなので、どれが良いとかではないです。わかりますか。


ちなみに、VBScript の部分は、JavaScript(JScript)でも可能です。

id:Cherenkov No.2

回答回数1504ベストアンサー獲得回数493

ポイント33pt

規定のブラウザを変更しなくても、標準ストリームさえできれば好きなブラウザで起動できます。

標準ストリームとは、プログラムからコマンドプロンプトを叩くイメージです。

c:\~\firefox.exe http://~

を標準ストリームに送る。

どうやってそれを実現するかは、コンテキストメニュー拡張を使ったり、標準ストリームが可能なアプリを作る。


  1. なんらかの方法でブラウザからリンク先URLを取得。
  2. なんらかの方法で、標準ストリームでプログラムファイルにURLの引数を渡す。
  3. プログラムファイルは、標準ストリームでブラウザにURLの引数をつけて実行。

ひとつ思い浮かんでいるのはAutoHotkeyを使った方法ですが、リンク先URLを取得できるかどうかちょっとわかりません。(GUIも扱えるので、どのブラウザで開くかのメニューも作れます)

外部プログラム - AutoHotkeyJp


Firefox拡張なら外部プログラムを実行するやつを作ったことがありますが、Firefox限定になるのでだめか。

id:fenstrial No.3

回答回数57ベストアンサー獲得回数14

ポイント33pt

まず、基本的にブラウザに表示したページからレジストリをいじることはできません。(セキュリティのため)

例外は、ActiveX Controlくらいでしょうか。


htaはhtml(とVBSなど)で作れる単独のアプリケーションです。

ちなみに、JScript(JavaScriptのMS版)でもレジストリはいじれます。どっちもWSHに対応していますので。

  • VBS/JS + WSH:起動すると設定変更するだけのアプリなら
  • hta + VBS/JS + WSH:GUIのアプリ

ActiveXを作れるならC++/CLIやC#,VB.netによるアプリを作ったほうが楽。



というか、FirefoxのIE Tab系のアプリじゃだめなのかね。

  • id:delighter
    質問主です。
    検索していたところ、このようなページを見つけました。
    http://www.roy.hi-ho.ne.jp/mutaguchi/wsh/whatis.htm
    WSH、良さそうですね。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません