通过Web浏览器在vbscript中运行.BAT文件

时间:2012-11-17 18:52:28

标签: html vbscript

我是vbscript的新手。我不知道它是否发生。我有一些VB脚本代码来运行批处理文件。

我正在尝试通过HTML代码在vbscript中运行 .bat 文件:

<HTML>
<HEAD>
<TITLE>Test Button Events</TITLE>
</HEAD>
<BODY>
<FORM NAME="Form1">
   <INPUT TYPE="Button" NAME="Button1" VALUE="Run">
   <SCRIPT FOR="Button1" EVENT="onClick" LANGUAGE="VBScript">
    Set WshShell = WScript.CreateObject("WScript.Shell")
    WshShell.Run "%comspec% /K C:\path\to\the\file\a.bat", 0
    ' 0 => hide
    MsgBox("File bop.txt successfully generated")
   </SCRIPT>
</FORM>
</BODY>
</HTML>

在这里,我想通过单击运行按钮运行.bat文件,该按钮生成bop.txt。 但它没有用。 这样做的正确方法是什么?

更新

现在我可以通过将路径替换为:

来运行a.bat文件
file:///C:/path/to/the/file/a.bat

但它没有生成文件bop.txt。

a.bat包含:

@echo off
echo Hello World!>bop.txt

2 个答案:

答案 0 :(得分:1)

也许这可能是正确的起点 - 互联网设置&gt;安全&gt;自定义级别&gt;活跃x

您可能必须启用一些Activex权限。

creating object "wscript.shell" fails

答案 1 :(得分:0)

根据您的使用方式,我使用.hta文件取得了成功,例如:

<JOB ID="Test">
    <Head>
        <HTA:APPLICATION
        ID="Test"
        />

        <SCRIPT LANGUAGE="VBScript">
        Sub buttonClick
                Set WshShell = WScript.CreateObject("WScript.Shell")
            WshShell.Run "%comspec% /K C:\path\to\the\file\a.bat", 0
            ' 0 => hide
            MsgBox("File bop.txt successfully generated")
        End Sub
        </SCRIPT>

    </HEAD>
    <HTML>
        <FORM NAME="Form1">
        <INPUT TYPE="Button" NAME="Button1" VALUE="Run" ONCLICK="buttonClick">
    </HTML>
</JOB>

另存为file.hta

据我所知,HTA文件的安全范围更广,因此不会被浏览器阻止。

这里有更多信息:

http://msdn.microsoft.com/en-us/library/ms536496(v=vs.85).aspx