【发布时间】:2009-06-26 17:34:41
【问题描述】:
我正在尝试从一个 VBScript 文件中执行一个 .NET (3.5) 命令行程序,它主要做两件事:
- 连接到与托管脚本的服务器位于同一域的 Active Directory 以检索属性值。我使用第一个命令行参数(用户名)搜索 AD。
- 使用所述属性值和第二个命令行参数创建 DTO,然后在 WCF 服务调用中使用该参数。
当我显式运行应用程序时,一切正常。访问 Active Directory,检索属性并调用 WCF 服务并使用正确的结果(通过查看数据库进行验证)。
(编辑:抱歉,我忘了说明实际问题是什么。)
当我运行脚本时,我似乎无法在我的 .NET 代码(MyProgram 应用程序)中访问 Active Directory。
VBScript 代码:
Dim objResult
Set objShell = WScript.CreateObject("WScript.Shell")
objResult = objShell.Run("MyProgram " & strUsername & " 0", 1, True)
WScript.Shell 对象是否需要文件的特殊权限?我已经检查过它们并且执行权限在那里。通常,我传递给 .Run() 方法的第二个参数是 6,我希望它是 1 用于调试。
还有其他方法可以让我在 VBScript 中执行程序吗?
【问题讨论】:
-
非常明确地说明失败案例中会发生什么会很有帮助。
-
抱歉,我太忙于其他细节,忘记了最重要的一个。在 MyProgram 应用中似乎没有访问 AD。
标签: vbscript active-directory wsh