none
SMTP - Problemas no Anexo (.dat ou sem extensão) RRS feed

  • Pergunta

  • Bom dia.

    Estou com problemas no meu projeto, com relação ao envio de e-mail com anexo. Alguns destinatários estão respondendo informando que estão recebendo o anexo sem a extensão .xml ou com a extensão .dat.

    Lembrando que não são todos os destinatários. Quando envio um e-mail para alguém aqui da empresa ou pro meu e-mail mesmo, recebo o anexo normalmente.

    Será que é alguma configuração no destinatário. Teria como configurar o e-mail de uma forma padrão para que qualquer gerenciador ou provedor receba corretamente?

    Segue abaixo o meu código:

    Dim smtp As New SmtpClient
    smtp.Host = TxtSmtp.Text
                    smtp.Port = TxtPorta.Text
                    If ChkSSL.Checked Then
                        smtp.EnableSsl = True
                    End If
                    smtp.Credentials = New System.Net.NetworkCredential(TxtEmail.Text, Txtsenha.Text)
    Dim msg As New MailMessage()
    
                msg.IsBodyHtml = True
    
                msg.From = New MailAddress("email", "email")
    msg.To.Add("email-destinatario")
    Dim enc As New UTF8Encoding
    Dim strXmlCTe As String = CMD2.ExecuteScalar
    
                If strXmlCTe = "" Then
                    Return False
                End If
                Dim ms As MemoryStream
    
                ms = New MemoryStream(enc.GetBytes("<?xml version=""1.0"" encoding=""UTF-8"" ?>" & strXmlCTe.Replace(" xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance""", "").Replace(" xmlns:xsd=""http://www.w3.org/2001/XMLSchema""", "")))
    Dim anexos As New Attachment(ms, NumCTe & "-CTe", System.Net.Mime.MediaTypeNames.Text.Xml)
    
                msg.Attachments.Add(anexos)
                msg.Subject = "CT-e " & NumCTe
     smtp.Send(msg)
                smtp.Dispose()
    
                msg.Dispose()
    
                msg = Nothing
                smtp = Nothing

    Desde já, agradeço a atenção.

    segunda-feira, 18 de novembro de 2013 12:11

Respostas

  • Bom dia.

    Consegui resolver o problema.

    Mudei a seguinte linha

    Dim anexos As New Attachment(ms, NumCTe & "-CTe", System.Net.Mime.MediaTypeNames.Text.Xml)
    

    Para

    Dim anexos As New Attachment(ms, NumCTe & "-CTe.xml", System.Net.Mime.MediaTypeNames.Text.html)
    

    Coloquei a extensão direto no nome do arquivo (resolveu o problema de anexo sem extensão), e mudei o mediatype para html (resolveu o problema da extensão sendo substituída por .dat).

    • Marcado como Resposta Adriano Forster sexta-feira, 22 de novembro de 2013 13:09
    sexta-feira, 22 de novembro de 2013 13:09

Todas as Respostas

  • Adriano!

    Como você disse que isso acontece com alguns clientes deve ser a própria configuração do servidor de e-mail ou até serviço de anti-virus rodando no pc do cliente!

    Filtre qual clientes e como eles estão fazendo para ler esses e-mails ???

    Bom é mais uma dica porque sua codificação ta correta

    Talvez mudando para um .Rar ou um .Zip talvez funcionaria melhor mais seria mais um teste!!!


    Fulvio Cezar Canducci Dias

    terça-feira, 19 de novembro de 2013 19:25
  • O mais engraçado é que quando pego esse e-mail que é enviado pelo sistema e encaminho para o cliente, o anexo chega correto, com a extensão e sem o .dat.
    quinta-feira, 21 de novembro de 2013 16:15
  • O mais engraçado é que quando pego esse e-mail que é enviado pelo sistema e encaminho para o cliente, o anexo chega correto, com a extensão e sem o .dat.
    Talvez algum detalhe sei lá!!!

    Fulvio Cezar Canducci Dias

    quinta-feira, 21 de novembro de 2013 18:52
  • Bom dia.

    Consegui resolver o problema.

    Mudei a seguinte linha

    Dim anexos As New Attachment(ms, NumCTe & "-CTe", System.Net.Mime.MediaTypeNames.Text.Xml)
    

    Para

    Dim anexos As New Attachment(ms, NumCTe & "-CTe.xml", System.Net.Mime.MediaTypeNames.Text.html)
    

    Coloquei a extensão direto no nome do arquivo (resolveu o problema de anexo sem extensão), e mudei o mediatype para html (resolveu o problema da extensão sendo substituída por .dat).

    • Marcado como Resposta Adriano Forster sexta-feira, 22 de novembro de 2013 13:09
    sexta-feira, 22 de novembro de 2013 13:09