【问题标题】:Passing arguments when running programs via ActiveXObject (JScript)?通过 ActiveXObject (JScript) 运行程序时传递参数?
【发布时间】:2011-10-29 15:43:45
【问题描述】:

正在尝试编写 Windows 语音识别宏。使用 XML 和脚本语言编写的是 JScript。使用ActiveXObject("WScript.Shell"),可执行文件可以很好地执行。但是我们如何将参数传递给这个可执行文件呢?就像,如果我要使用上述方法打开 IE,我如何传递一个参数以便它加载指定的 URL(参数)?

在 XML 中,我们可以这样写:

<run command = "C:\Program Files\BlahBlah\MusicPlayer.exe" params = "D:\Music\Music1.mp3"/>

如何在 JScript 中做到这一点?还是VBScript? 任何帮助表示赞赏。 :)

【问题讨论】:

  • 这是很久以前的事了,但如果我是正确的,您可以在空格分隔的列表中提供参数。例如:var ws = ActiveXObject("WScript.Shell");ws.Run('"C:\Program Files\BlahBlah\MusicPlayer.exe" "D:\Music\Music1.mp3"');

标签: xml vbscript jscript wsh


【解决方案1】:
<script language="javascript">
    function RunEXE( exeApp, para ) {
        var oShell = new ActiveXObject("WScript.Shell");
        oShell.Run( "\"" + exeApp + "\"" + "\"" + para + "\"", 1 );
    }

    RunEXE ( "D:\\ProgFiles\\player.exe", "D:\\My Music\\ music.mp3" )
</script>

【讨论】:

    【解决方案2】:

    我能够从 JS 运行它。我创建了一个控制台应用程序,它接受一个参数并从 Web 应用程序调用它。

    <script language="javascript" type="text/javascript">
        function RunEXE() {
            var oShell = new ActiveXObject("WScript.Shell");
    
            var prog = "D:\\FetchParam.exe";
            oShell.Run('"' + prog + '" INITParam', 1);
        }
    </script>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-10-31
      • 1970-01-01
      • 1970-01-01
      • 2017-11-29
      • 2013-09-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多