【发布时间】:2011-07-08 19:08:43
【问题描述】:
我正面临着使用 system.diagnostics.process 对象运行 bat 文件的困境。我有在我编译为 dll 的类库中运行 bat 文件的代码。我通过使用编译时注册它使 dll com 具有互操作性。我使用强密钥对其进行签名,导出类型库并使用 regasm 和 gacutil 命令将 dll 放入 GAC。然后,我在 dll 中创建了特定类的对象,该对象具有使用 vbscript 中的 server.createobject 方法执行 bat 文件的方法。然后我调用了bat执行的方法。方法可以正常调用,但是没有弹出 cmd 提示符,也没有执行 bat 文件。我检查了互操作 dll 是否有问题,但 dll 在 VB6 代码中运行良好。有人可以帮我解决这个问题吗?我不确定它是否在 IIS 服务器上存在一些权限问题。还是无法通过 ASP 上的 vbscript for dll 执行 cmd?
谢谢, 地理位置。
【问题讨论】:
-
你的批量调用命令是否包含
cmd.exe?我想,应该是cmd.exe /C yourscript.bat。 -
IIS 6/7 默认情况下 DefaultAppPool 作为 NETWORK SERVICE 运行,IIS 7.5 作为 DefaultAppPool 运行。 learn.iis.net/page.aspx/624/application-pool-identities
标签: .net com interop asp-classic cmd