2012-03-19 45 views
1

当我在Windows Server上的IIS7.0中托管的经典asp中嵌入代码时,出现未定义对象CreateObject(“ADSystemInfo”)当我使用VBscript在该服务器上执行相同的代码时,它工作正常。有人能帮助我吗?我需要知道是否需要进行任何服务器设置更改IIS7.0中的经典ASP中的Gettin错误bjSysInfo = CreateObject(“ADSystemInfo”)

Set objSysInfo = CreateObject("ADSystemInfo") 
strUserDN = objSysInfo.UserName 
Set objUser = GetObject("LDAP://" & strUserDN) 
arrGroups = objUser.memberOf 
+0

一些代码示例如何? – RogueSpear00 2012-03-19 21:09:32

+0

我已经添加了代码,我收到以下错误“Microsoft VBScript运行时错误'800a01f4' 变量未定义:'ADSysInfo' – 2012-03-20 05:36:09

回答

2

这是因为您写的内容实际上是VBScript,而不是经典ASP。

你可以从cmd窗口运行它,它应该可以正常工作。但要将其转换为ASP,你必须做几件事情。

环绕你的代码

<% 

... code here 

%> 

然后的CreateObject每个实例更改为Server.CreateObject

您的代码应该是这样的:

<% 
Set objSysInfo = Server.CreateObject("ADSystemInfo") 
strUserDN = objSysInfo.UserName 
Set objUser = GetObject("LDAP://" & strUserDN) 
arrGroups = objUser.memberOf 
%> 

最后,请确保IIS Web服务器正在作为user that has the correct permissions.

+0

@Mike:感谢您的回复。对不起,我稍微与你的第二个混淆部分,这是否意味着我们需要将用户的ID和pwd(seerver id/pwd)发送到LDAP,或者我们需要在IIS中做什么特定的设置?我正在使用IIS 7.0。 – 2012-03-21 11:53:20

+0

@SRT_KP我更新了答案显示代码的外观 – 2012-03-21 15:43:54

+0

@Mike:谢谢你,我的ASP代码完全一样,但是我收到了错误你能不能请expian关于我们需要的“权限”的其他部分? – 2012-03-21 17:20:36