Eu tive muita sorte com um roteiro que escrevi. Ele grava de vários campos do AD em um documento do Word invisível e copia-o no Outlook 2007 como assinatura padrão e de resposta.
Afastei-me de executar automaticamente cada login. Muito raramente eu teria problemas no primeiro login de um usuário em uma máquina, onde o Outlook ainda não podia abrir sem percorrer o assistente. A partir de agora é um GPO que apenas envia um atalho para os desktops dos usuários chamado "Reset Email Signature". Isso também permite que os usuários tenham assinaturas não padrão sem que sejam substituídas a cada vez.
On Error Resume Next
Set objSysInfo = CreateObject("ADSystemInfo")
strUser = objSysInfo.UserName
Set objUser = GetObject("LDAP://" & strUser)
strName = objUser.FullName
strTitle = objUser.Title
strDepartment = objUser.Department
strCompany = objUser.Company
strPhone = objUser.telephoneNumber
strFax = objUser.faxNumber
strStreet = objUser.StreetAddress
strCity = objUser.L
strState = objUser.St
strPOBox = objUser.postalCode
strFirstName = objUser.givenName
strInitials = objUser.initials
strLastName = objUser.sn
If strInitials = "" Then
strFullName = strFirstName & " " & strLastName
Else
strFullName = strFirstName & " " & strInitials & ". " & strLastName
End If
Set objWord = CreateObject("Word.Application")
Set objDoc = objWord.Documents.Add()
Set objSelection = objWord.Selection
objSelection.Style = "No Spacing"
objSelection.Font.Name = "Calibri"
objSelection.Font.Size = "11"
Set objEmailOptions = objWord.EmailOptions
Set objSignatureObject = objEmailOptions.EmailSignature
Set objSignatureEntries = objSignatureObject.EmailSignatureEntries
objSelection.TypeParagraph()
objSelection.TypeText "Sincerely,"
objSelection.TypeParagraph()
objSelection.TypeParagraph()
objSelection.TypeText "ORGANIZATION NAME"
objSelection.TypeParagraph()
objSelection.TypeParagraph()
objSelection.TypeText strFullName & ", " & strTitle
'objSelection.TypeText strName & ", " & strTitle
objSelection.TypeParagraph()
objSelection.TypeParagraph()
objSelection.TypeText strStreet
objSelection.TypeParagraph()
objSelection.TypeText strCity & ", " & strState & " " & strPOBox
objSelection.TypeParagraph()
objSelection.TypeText "Desk: " & strPhone
objSelection.TypeParagraph()
objSelection.TypeText "Fax: " & strFax
objSelection.TypeParagraph()
'Hyperlink below
objDoc.Hyperlinks.Add objSelection.Range, "www.yoursitename.com", "", "", "www.yoursitename.com", ""
objSelection.TypeParagraph()
objSelection.TypeParagraph()
'Picture below
Set objShape = objSelection.InlineShapes.AddPicture("\fileserver\path\to\image.BMP")
Set objSelection = objDoc.Range()
objSignatureEntries.Add "AD Signature", objSelection
objSignatureObject.NewMessageSignature = "AD Signature"
objSignatureObject.ReplyMessageSignature = "AD Signature"
objDoc.Saved = True
objWord.Quit
Se você tiver alguma dúvida, é só me avisar!