gpt4 book ai didi

javascript - 如何使用来自 javascript 的参数运行 cmd.exe

转载 作者:数据小太阳 更新时间:2023-10-29 03:54:33 26 4
gpt4 key购买 nike

我正在尝试编写 javascript,它应该像这样使用指定的命令行运行 cmd.exe docs.google.com/file/d/0B7QHCoQDlEvKWUZSX3oxUDI2SDg/edit :

我在阅读微软网站上的shellexecute方法后准备了一段代码:

var objShell = new ActiveXObject("Shell.Application");
objShell.ShellExecute("cmd.exe", "C: cd C:\\pr main.exe blablafile.txt auto", "C:\\WINDOWS\\system32", "open", "1");

但它不会在 cmd.exe 中插入命令行。

有人能帮帮我吗?先感谢您。

最佳答案

可能您的计算机上没有安装(或注册)此 ActiveX 控件。

WScript.Shell 应该在每个 Windows 中都能找到:

var run=new ActiveXObject('WSCRIPT.Shell').Run("commands to run");

如果要运行的命令中有空格,需要用双引号引起来。

编辑

以下内容主要来自MSDN:http://msdn.microsoft.com/en-us/library/windows/desktop/gg537745(v=vs.85).aspx

iRetVal = Shell.ShellExecute(
sFile,
[ vArguments ],
[ vDirectory ],
[ vOperation ],
[ vShow ]
)

让我们以 [vDirectory] 为例。文档说:“包含 sFile 指定的文件的目录的完全限定路径。如果未指定此参数,则使用当前工作目录。”

这意味着该参数的路径无效(末尾有 .cmd.exe)。所有创建 ActiveX 的例子都是这样的:

var objShell = new ActiveXObject("shell.application");

注意 "shell.application" 中的小写。

还有 May12,谢谢你提出这个问题。以前不知道这个ActiveX控件,看来对我很有用。

编辑二

但是你了解了吗?您的示例在我的应用中完美运行:

objShell.ShellExecute("cmd.exe", "cd C: C:\\cd c:\\ext_file main.exe test.txt", "C:\\WINDOWS\\system32", "open", 1);

除了三个异常(exception):

1) 我在这个答案前面提到的关于路径的那个

2) 也用于参数中的转义 \

3) 最后一个参数是数字类型,不是字符串。

关于javascript - 如何使用来自 javascript 的参数运行 cmd.exe,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10186813/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com