通过组策略login脚本映射驱动器(Windows 7和8客户端的2008域)

我无法为我的域名映射驱动器。 几个月前,我们使用组策略首选项来映射驱动器,但由于某种原因,它停止了工作 – 所以我为公司的各个部门创build了几个login脚本来映射驱动器。 但那些也没有完全工作。

据我可以告诉GPOlogin脚本正在运行login,但驱动器仍然没有被映射。 手动执行.vbs脚本成功映射驱动器,只是在用户login时才映射它们。

运行gpresult / r显示login脚本GPO运行,并查看Applications and Services\Microsoft\Windows\GroupPolicy\Operational事件日志,我可以看到事件4016它说:

启动脚本扩展处理。
适用的组策略对象列表:(已检测到更改)
共享驱动器GPO

因此,GPO正在运行,并且脚本在手动执行时工作 – 但是用户login时驱动器未映射。下面是我正在使用的脚本中的一个示例:

 On Error Resume Next If err.number = vbEmpty then Set objShell = Create("WScript.Shell") objShell.run ("Explorer") ElseIf err.number = -2147022646 then Wscript.Echo "You must create" & strDriveLetter Else Wscript.echo "Unknown " & err.number End if ' Map H Drive Set objectNetwork = CreateObject("Wscript.Network") objectNetwork.RemoteNetworkDrive "H:" objectNetwork.MapNetworkDrive "H:", "\\Path\to\FileServer" Set objectShell = CreateObject("Shell.Application") objectShell.NameSpace("H:").Self.Name = "Name Applied to Drive Letter" ' Map I Drive Set objectNetwork = CreateObject("Wscript.Network") objectNetwork.RemoteNetworkDrive "I:" objectNetwork.MapNetworkDrive "I:", "\\OtherPath\to\FileServer" Set objectShell = CreateObject("Shell.Application") objectShell.NameSpace("I:").Self.Name = "Name Applied to Drive Letter" 

等等适用于用户的每个驱动器号。

您可以查看回看GPO。 如果我记得,它需要在包含计算机对象的特定OU上启用。