经典ASP - 从Localhost上的网页运行.exe

时间:2011-09-14 21:37:20

标签: asp-classic localhost server-side wsh

我正在尝试使用以下代码执行.bat以在我的localhost(服务器端)上启动notepad.exe:

的index.asp

<%
set wshell = CreateObject("WScript.Shell") 
return = wshell.run("c:\file.bat", 4, false)
response.write(return)
set wshell = nothing 
%>

file.bat

notepad.exe

当我打开ASP页面时,没有任何反应。由于变量“return”,返回值0。所以我尝试将 false 值设置为 true ,然后服务器冻结并且没有返回任何内容;我认为这是因为没有从.bat文件返回的值。 我还尝试直接运行notepad.exe( C:\ Windows \ notepad.exe ),而不是使用.bat文件,但仍然没有发生任何事情。我也尝试过使用ASPExec.dll,但也无济于事。

有谁知道我做错了什么?

更多信息:

我的本​​地Web服务器是Windows 7附带的IIS7。我在localhost上执行此操作仅用于测试目的。我必须在Classic ASP中实现这一点,因为最终我必须将网站导入WinCE7设备。我知道WshShell不适用于WinCE但是现在我只是想看看它是否有效。最终,我需要能够运行一个.exe,通过网站在设备上安装更新。

1 个答案:

答案 0 :(得分:4)

您的代码作为非交互式IIS用户运行;它无法与本地桌面交互。