INTERA?ÃO COM OUTLOOK 2013
Olá amigos, tudo bem?
tenho essa rotina de envio de email, que venho usando a muito tempo, é uma interação com MS Outllok. funcionou bem até a versão 2010. agora com a 2013 esta dando erro... o pior em tempo de design funciona perfeitamente, copilei e executa da erro ( anexo) tentei até de dentro da pasta debug pra ver se era alguma DLL faltando e mesmo assim não funciona. copiei essa C:\Windows\assembly\GAC_MSIL\Microsoft.Office.Interop.Outlook\15.0.0.0__71e9bce111e9429c\Microsoft.Office.Interop.Outlook.dll para pasta debug e tbm nada.
em design esta rodando...onde estou errado?
Private Function Enviar_Email_MSOutlook2() As Boolean
Try
[ô]Sub CreateNewDefaultOutlookMail()
Dim objOLApp As Outlook.Application
Dim NewMail As Outlook.MailItem
[ô] Set the Application object
objOLApp = New Outlook.Application
[ô] You can only use CreateItem for default items
NewMail = objOLApp.CreateItem(Outlook.OlItemType.olMailItem)
[ô] Display the new mail form so the user can fill it out
With NewMail
.UnRead = True
.To = Txt_Email_Para.Text
If Txt_Email_CC.Text <> [Ô][Ô] Then .BCC = Txt_Email_CC.Text
.Subject = MXMail.Assunto
.HTMLBody = sCorpoHTML
If Not MXMail.AnexoList Is Nothing Then
For Each Anexo As Object In MXMail.AnexoList
If IO.File.Exists(Anexo) Then .Attachments.Add(Anexo)
Next
End If
.ReadReceiptRequested = True
.OriginatorDeliveryReportRequested = True
.Display(1)
End With
objOLApp = Nothing
NewMail = Nothing
Return True
Catch ex As Exception
Trata_Erro(ex)
Return False
End Try
End Function
tenho essa rotina de envio de email, que venho usando a muito tempo, é uma interação com MS Outllok. funcionou bem até a versão 2010. agora com a 2013 esta dando erro... o pior em tempo de design funciona perfeitamente, copilei e executa da erro ( anexo) tentei até de dentro da pasta debug pra ver se era alguma DLL faltando e mesmo assim não funciona. copiei essa C:\Windows\assembly\GAC_MSIL\Microsoft.Office.Interop.Outlook\15.0.0.0__71e9bce111e9429c\Microsoft.Office.Interop.Outlook.dll para pasta debug e tbm nada.
em design esta rodando...onde estou errado?
Private Function Enviar_Email_MSOutlook2() As Boolean
Try
[ô]Sub CreateNewDefaultOutlookMail()
Dim objOLApp As Outlook.Application
Dim NewMail As Outlook.MailItem
[ô] Set the Application object
objOLApp = New Outlook.Application
[ô] You can only use CreateItem for default items
NewMail = objOLApp.CreateItem(Outlook.OlItemType.olMailItem)
[ô] Display the new mail form so the user can fill it out
With NewMail
.UnRead = True
.To = Txt_Email_Para.Text
If Txt_Email_CC.Text <> [Ô][Ô] Then .BCC = Txt_Email_CC.Text
.Subject = MXMail.Assunto
.HTMLBody = sCorpoHTML
If Not MXMail.AnexoList Is Nothing Then
For Each Anexo As Object In MXMail.AnexoList
If IO.File.Exists(Anexo) Then .Attachments.Add(Anexo)
Next
End If
.ReadReceiptRequested = True
.OriginatorDeliveryReportRequested = True
.Display(1)
End With
objOLApp = Nothing
NewMail = Nothing
Return True
Catch ex As Exception
Trata_Erro(ex)
Return False
End Try
End Function
Gente.. eu to em tempo de ficar louco!
criei um pequeno projeto apenas para rodar o email .. e funciona... oque estou fazendo de errado na minha aplicação?
porque em um funciona e no projeto grande não?
criei um pequeno projeto apenas para rodar o email .. e funciona... oque estou fazendo de errado na minha aplicação?
porque em um funciona e no projeto grande não?
MAXCIM,
Chutando...
... Pode ser que dentro do seu grande projeto tenha alguma coisa conflitando talvez ou se perdendo.
Exemplos:
- Uma variável que perde valor no meio do caminho;
- Uma OCX ou DLL anexada ao projeto apontando para o lugar errado;
O que você pode fazer.
1 - Pegue seu projeto grande e tire uma cópia.
2 - Nesta cópia comente alguns trechos e teste.
3 - Repita a operação 2 até funcionar o que você quer.
Procure lembrar o que você comentou para poder [Ô]isolar[Ô] o erro.
[][ô]s,
Tunusat.
Chutando...
... Pode ser que dentro do seu grande projeto tenha alguma coisa conflitando talvez ou se perdendo.
Exemplos:
- Uma variável que perde valor no meio do caminho;
- Uma OCX ou DLL anexada ao projeto apontando para o lugar errado;
O que você pode fazer.
1 - Pegue seu projeto grande e tire uma cópia.
2 - Nesta cópia comente alguns trechos e teste.
3 - Repita a operação 2 até funcionar o que você quer.
Procure lembrar o que você comentou para poder [Ô]isolar[Ô] o erro.
[][ô]s,
Tunusat.
Existe mesmo a necessidade de integrar com o Outlook ?
TUNUSAT, já revisei as dlls, removi e as inseri novamente...
ALEVLE, tenho outro método de envio de email pelo SMTP_CLIENTE, mas a maioria dos clientes tem preguiça de configurar SMTP, PORTA, SENHA e preferem interação com o outllok que já esta configurado.
ALEVLE, tenho outro método de envio de email pelo SMTP_CLIENTE, mas a maioria dos clientes tem preguiça de configurar SMTP, PORTA, SENHA e preferem interação com o outllok que já esta configurado.
MAXCIM,
Estou com uma ideia maluca aqui.
Pegue este projeto pequeno e transforme-o em um projeto independente e de apoio.
Em outras palavras ... crie uma OCX ou um DLL sua e retire todo código referente do seu projeto principal tornando o código algo [Ô]apartado[Ô].
Anexe seu novo projeto de duas formas (para testar uma de cada vez):
1 - [Ô]File[Ô] / [Ô]Add[Ô] / [Ô]New Project[Ô] -> Adicionando um novo projeto ao seu projeto criando uma [Ô]solution[Ô];
2 - Somente [Ô]Add Reference[Ô] de seu novo OCX ou DLL compilado;
Se funcionar ... bom ... pode ser uma alternativa ... quem sabe ...
[][ô]s,
Tunusat.
Estou com uma ideia maluca aqui.
Pegue este projeto pequeno e transforme-o em um projeto independente e de apoio.
Em outras palavras ... crie uma OCX ou um DLL sua e retire todo código referente do seu projeto principal tornando o código algo [Ô]apartado[Ô].
Anexe seu novo projeto de duas formas (para testar uma de cada vez):
1 - [Ô]File[Ô] / [Ô]Add[Ô] / [Ô]New Project[Ô] -> Adicionando um novo projeto ao seu projeto criando uma [Ô]solution[Ô];
2 - Somente [Ô]Add Reference[Ô] de seu novo OCX ou DLL compilado;
Se funcionar ... bom ... pode ser uma alternativa ... quem sabe ...
[][ô]s,
Tunusat.
Tópico encerrado , respostas não são mais permitidas