Ir para conteúdo
Fórum Script Brasil
  • 0

Enviar email Outlook qualquer versão Office


Sames Davis

Pergunta

Olá pessoal,

Tenho um sistema que roda em vários micros e cada um deles com versões diferentes do office.

O meu código não está dando certo, segue

referenciei o outlook e usei o imports

 

Imports Microsoft.Office.Interop

    Private Sub btnEnviar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEnviar.Click
        Cursor.Current = Cursors.WaitCursor
        Try
            Dim tempApp As Microsoft.Office.Interop.Outlook.Application = New Microsoft.Office.Interop.Outlook.Application
            'Dim tempApp = GetObject(, "Outlook.Application")
            Dim tempNS As Outlook.NameSpace
            Dim MailFolder As Outlook.MAPIFolder
            tempNS = tempApp.GetNamespace("MAPI")
            tempNS.Logon(, , True, True)

            Dim newMail As Outlook.MailItem = Nothing
            MailFolder = tempNS.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderOutbox)
            newMail = MailFolder.Items.Add(Outlook.OlItemType.olMailItem)
            With newMail
                .To = txtPara.Text
                .Subject = txtAssunto.Text
                .Body = txtMensagem.Text
                .Send()
            End With
            newMail = Nothing
            MailFolder = Nothing
            tempNS = Nothing
            tempApp = Nothing

            DialogResult = DialogResult.Yes
        Catch ex As Exception
            MsgBox(ex.ToString())
            DialogResult = DialogResult.No
        Finally
            Cursor.Current = Cursors.Default
        End Try

    End Sub

 

se eu usar essa linha

Dim tempApp As Microsoft.Office.Interop.Outlook.Application = New Microsoft.Office.Interop.Outlook.Application

ele só funciona no office2007

se eu usar essa linha, ele dá a mensagem de que não posso criar objeto activex

Dim tempApp = GetObject(, "Outlook.Application")

o que faço ?

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

É, estranho esse comportamento, faço uso do CreateObject(), com o Word e o Excel principalmente, e sempre funcionou independente da versão. Como nunca gostei do Outlook, nem cogito a idéia de usá-lo para enviar e-mail, prefiro fazer o envio direto por SMTP.

Abraços!

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...