Cada pasta na hierarquia do Exchange Server Public pode ter um endereço de e-mail. Caso saiba o endereço do SMTP, pode enviar mensagens, ou mesmo pedidos de reunião (Invites), diretamente desta pasta.
O código abaixo mostra como obter o endereço da pasta usando a biblioteca Redemption para evitar o desencadeamento solicitado pela segurança do Outlook.Também pode utilizar a mesma técnica com o objeto AddressEntry CDO, mas obviamente isso provocaria avisos de segurança em muitos ambientes (versões/instalações) do Outlook.
Use esta versão de código com uma biblioteca qualquer de 'Resgate' de terceiros (Por exemplo o SafeOutlookLibrary), para evitar os avisos de segurança geradas por tentativas de acesso aos objetos e as propriedades de endereço quando o Outlook E-mail Security Update estiver instalado.
Function R_GetPFAddress(objFolder)
Dim oSafeFolder 'As New Redemption.MAPIFolder
Dim objUtils 'As Redemption.MAPIUtils
Dim arrBytes
Dim strAddress, strEntryID 'As String
Dim oAE 'As Redemption.AddressEntry
Const PR_ADDRESS_BOOK_ENTRYID = & H663B0102
Const PR_EMAIL = & H39FE001E
On Error Resume Next
Set objUtils = CreateObject ("Redemption.MAPIUtils")
Set oSafeFolder = CreateObject ("Redemption.MAPIFolder")
oSafeFolder.Item = objFolder
arrBytes = oSafeFolder.Fields (PR_ADDRESS_BOOK_ENTRYID)
strEntryID = objUtils.HrArrayToString (arrBytes)
Set oAE = objUtils.GetAddressEntryFromID (strEntryID)
R_GetPFAddress = oAE.Fields (PR_EMAIL)
End Function
Fonte: OutlookCode
Tags: Outlook, SMTP, exchange, server, public, addressentry
Tags: Outlook, SMTP, exchange, server, public, addressentry
André Luiz Bernardes
A&A® - Work smart, not hard.
Nenhum comentário:
Postar um comentário