1

我正在尝试运行 shell 命令以从 JavaScript 打开记事本。这就是我的代码的样子:

 <script type="text/javascript">
     function runNotepad() {
        var oShell = new ActiveXObject("Shell.Application");
        var commandtoRun = "C:\\WINDOWS\\Notepad.exe";
        oShell.ShellExecute(commandtoRun, null, "", "open", "1");
        }
 </script>

当我尝试运行它时,它会给我一个错误提示Microsoft JScript runtime error: Permission denied

我也Allow active content to run in files on my computer加入了,IE但还是没有运气。

知道我在这里缺少什么吗?

4

2 回答 2

1

知道我在这里缺少什么吗?

没有浏览器会允许 JavaScript 任意启动进程。由于安全隐患,此功能在 Internet Explorer 中不可用。

如果从其他脚本主机(例如cscript,但不是 Internet Explorer)运行,这将起作用。

于 2012-06-07T17:51:31.577 回答
1

您不能在网页 javascript 中运行或创建本机对象。这个想法是,如果有人能做到这一点,那么他们就可以创建一个 FileSystem 对象。然后,当您无所事事地浏览他们的网页时,他们会对您的文件系统造成严重破坏。

如果您需要这样做,并将文件保存在主机的机器上,请将其保存为 HTML 应用程序 (*.hta)。

于 2012-06-07T17:52:18.043 回答