windows10のIE11からローカルのexeを実行 (URIスキーマ,ActiveX)

  • 0
    いいね
  • 0
    コメント

    レジストリにURIスキーマを新規登録する方法

    Edgeでは実行できなかった。IEでは実行できた。

    note.reg
    Windows Registry Editor Version 5.00
    
    [HKEY_CLASSES_ROOT\note]
    "URL Protocol"=""
    
    [HKEY_CLASSES_ROOT\note\shell]
    
    [HKEY_CLASSES_ROOT\note\shell\Open]
    
    [HKEY_CLASSES_ROOT\note\shell\Open\command]
    @="\"C:\\Windows\\notepad.exe\""
    

    reg0.png
    reg1.png

    <a href="note:">notepad</a>
    

    open.png
    open2.png

    ActiveX 例1

    <script LANGUAGE="JavaScript">
    function cmd() {
        var obj = new ActiveXObject("WScript.Shell");
        obj.Run("cmd.exe");
    }
    </script>
    <body>
    <a href="javascript:cmd()">コマンドプロンプト</a><br>
    </body>
    

    ActiveX 例2

    function _notepad(filename) {
        var shell = new ActiveXObject("WScript.Shell");
        shell.Run("C:\\windows\notepad.exe" + filename);
    }
    

    ローカルにhttpサーバーを建ててそこからexe実行

    • http://localhost:8000/ にアクセスしたら c:\windows\notepad.exeを実行するようなの作るとか。