组策略电子邮件签名脚本

组策略电子邮件签名脚本

我有一个 VBS 脚本,用于创建 Outlook 电子邮件签名并将其保存到用户的计算机。我希望每次用户使用组策略登录时都调用此脚本,但到目前为止我还没有成功。

脚本如下:

Set oShell = CreateObject("WScript.Shell")
Set objFSO = CreateObject( "Scripting.FileSystemObject" )

strUserName = oShell.ExpandEnvironmentStrings("%USERNAME%")
strTargetPath = oShell.ExpandEnvironmentStrings("%APPDATA%")

myURL = "http://example.com/tools/signature/build.php?user=" & strUserName
myPath = strTargetPath & "\Microsoft\Signatures\Default.htm"

Dim i, objFile, objFSO, objHTTP, strFile, strMsg
Const ForReading = 1, ForWriting = 2, ForAppending = 8

If objFSO.FolderExists( myPath ) Then
    strFile = objFSO.BuildPath( myPath, Mid( myURL, InStrRev( myURL, "/" ) + 1 ) )
ElseIf objFSO.FolderExists( Left( myPath, InStrRev( myPath, "\" ) - 1 ) ) Then
    strFile = myPath
Else

End If
Set objFile = objFSO.OpenTextFile( strFile, ForWriting, True )
Set objHTTP = CreateObject( "WinHttp.WinHttpRequest.5.1" )

objHTTP.Open "GET", myURL, False
objHTTP.Send
For i = 1 To LenB( objHTTP.ResponseBody )
    objFile.Write Chr( AscB( MidB( objHTTP.ResponseBody, i, 1 ) ) )
Next
objFile.Close( )

组策略是针对“用户配置”设置的

Policies -> Windows Settings -> Scripts -> Logon

这指向服务器上的脚本。

当我在本地运行该脚本时,它可以正常工作,没有任何可见的错误,并且签名也被正确创建。

有人能知道为什么它不能正确运行吗,以及(如果有的话)日志或错误会写入服务器上的哪里吗?

相关内容