windows 2003 sbs 当前已修补
客户端包括 Windows XP、Vista 和 Windows 7 的混合。
这是我创建的简单登录脚本。如果我手动运行该脚本,它会正常工作,并且不会出现任何错误。如果我在 AD 帐户的用户配置文件下设置登录脚本,它似乎没有运行。没有打印机获得映射,也没有驱动器映射发生。我在这里做错了什么。问题发生在 XP 上,我还没有在 Vista 或 Windows 7 上测试过。
还有一件事是的,我正在从 \server.local\NETLOGON\tmg_login.vbs 调用脚本
Option Explicit
Dim WSHShell, wshNetwork
Set WSHShell = CreateObject("WScript.Shell")
Set wshNetwork = CreateObject("WScript.Network")
wshNetwork.AddWindowsPrinterConnection "\\server.local\TMG-HP3600"
wshNetwork.AddWindowsPrinterConnection "\\server.local\TMG-xerox2240"
'wscript.sleep 30
wshNetwork.MapNetworkDrive "S:","\\server\DATA", True
WScript.Quit
答案1
尝试调用它没有完整路径。如果登录脚本位于 netlogon 的根目录下,则只需在登录脚本中包含“tmg_login.vbs”即可。
答案2
如果这种情况只发生在 Vista(也可能是 Windows 7)上,您可能需要降低或禁用 UAC。这可能会干扰登录脚本处理(UAC 确实应该具有域感知功能,但唉……)
答案3
您是否将该脚本保存在 NETLOGON 共享中,然后通过完整路径调用它?(例如 \\myDomain.loc\NETLOGON\myLogonScript.vbs
)
编辑:
我想知道这是否是上下文问题。有时映射将以运行脚本的帐户(系统)的形式进行,因此作为普通用户您看不到映射。
可以尝试以下两件事:
在脚本中添加
MsgBox
一行。如果登录时出现此消息,则说明存在上下文问题要确认这是上下文问题,请在登录并清除消息框后,打开 CMD 窗口并输入
Net Use
。您应该看不到任何映射。然后,输入Net Use S: \\server\DATA
。您应该会收到一条错误消息,指出驱动器正在使用中
如果是这种情况,请告诉我,我会告诉你如何解决它。
如果不是这种情况,则根本就不会调用该脚本。
答案4
为什么不将脚本添加到用户 GPO?在用户对象上设置脚本并将其放入 netlogon 文件夹是运行脚本的传统方法。我并不是说它导致了您的问题,但请尝试从 GPO 运行它,看看是否有任何变化。