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

Envio de Email com Anexo


malufla

Pergunta

Estou tentando desenvolver um formulário que envia um e-mail com anexo, mas estou com probleminha. Quando tento enviar um pdf em anexo aparece esse erro "erro '80004005' /novo/envia_email.asp, line 22".

Erro nessa linha msg.AttachFile caminho

O que estou fazendo de errado ?

Me ajudem!! Obrigada

INDEX.ASP

<html>
<head>
<title>ENVIA E-MAIL COM ANEXO</title>
</head>
<body>
<%
Select Case Request.QueryString("acao") 'Verifica parametro acao para executar determinado script
	Case "upload" 'caso a acao seja upload, executa script do SaFileUp
		Set Upload = Server.CreateObject("Persits.Upload.1")
		Count = upload.Save("d:\web\localuser\nomedapasta\www\novo\anexo")
 
		Set FSO = CreateObject("scripting.FileSystemObject")
		Set Folder = FSO.GetFolder("d:\web\localuser\nomedapasta\www\novo\anexo")
		Set Files = Folder.Files
 
		For each objUploadedFile In Upload.Files
		arquivo = objUploadedFile.ExtractFileName
		'response.Write(": " & objUploadedFile.ExtractFileName)
		seq = seq + 1
		Next
 
		'criei uma session para armazenar o no do arquivo
		session("arquivo") = arquivo
 
	Case "email" 'caso a acao seja email, executa script do CDOSYS
 
End Select
%>
<div style=" margin:20px 0 10px;" id="form-anexo">
  <form action="?acao=upload" method="post" enctype="multipart/form-data" name="frm_upload" id="frm_upload">
    <input name="file" type="file" size="40" required>
    <input name="Upload" type="submit" id="Upload" value="Anexar">
  </form>
</div>
<form method="POST" action="envia_email.asp">
  <div>
    <label>Nome </label>
    <input type="text" name="txt_nome" size="24">
  </div>
  <div>
    <label>E-mail </label>
    <input type="text" name="txt_email" size="24">
  </div>
  <div>
    <label>Assunto:</label>
    <input type="text" name="txt_assunto" size="24">
  </div>
  <div>
    <label>Mensagem:</label>
    <textarea rows="2" name="txt_mensagem"cols="20"></textarea>
  </div>
  <div>
    <label>Anexo:</label>
    <input type="text" name="txt_anexo" size="24" value="<%= session("arquivo") %>">
  </div>
  <input type="submit" value="Enviar" name="b1">
</form>
</body>
</html>

ENVIA_EMAIL.ASP

<%
dim arquivo
arquivo = session("arquivo")
caminho = "d:\web\localuser\nomedapasta\www\testeanexo\arq\"
caminho = caminho & arquivo
 
'Vamos recuperar os valores do formulário
nome = Request.Form("txt_nome")
email = Request.Form("txt_email")
assunto = Request.Form("txt_assunto")
mensagem = Request.Form("txt_mensagem")
 
'Agora vamos criar o objeto Cdonts e enviar a mensagem
Set msg = Server.CreateObject("CDONTS.NewMail") 
msg.From = email 
msg.To="seuemail@provedor.com"
msg.Subject = assunto& " Curriculo" 
texto = mensagem
msg.Body = nome&vbcrlf&texto
 
'Bom ai esta a linha onde vai anexar o arquivo ao e-mail
msg.AttachFile caminho   'ERRO NESSA LINHA
msg.Send
Set msg = Nothing
 
'Avisamos ao usuário que sua mensagem foi enviada corretamente.
Response.write "<script type=""text/javascript"">"
Response.write "alert('Sua mensagem foi enviada com sucesso!...');"
Response.write "window.location.href='index.asp';"
Response.write "</script>"
session.Abandon()
%>

 

Editado por malufla
Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Teste assim!

Coloque um componente FileUpload para envio dos arquivos.

No codigo deixei a explicação de cada item.

Também chame os Using System.Web, System.Net e System.Net.Email

Bom qualquer duvida estou a disposição.

 public void enviar()
        {
            try
            {
                //Estancia da class messagm
                MailMessage ObjMsg = new MailMessage();

                // Remetente
                ObjMsg.From = new MailAddress(txtFrom.Text);
                // Destinatario
                ObjMsg.CC.Add(txtCC.Text);
                ObjMsg.To.Add(txtTo.Text);
                //ObjMsg.To.Add(txtTo.Text);
                ObjMsg.SubjectEncoding = Encoding.GetEncoding("ISO-8859-1");
                ObjMsg.BodyEncoding = Encoding.GetEncoding("ISO-8859-1");
                // Assunto
                ObjMsg.Subject = txtTitulo.Text;
                // A mensagem é do tipo HTML ou Texto Puro?
                ObjMsg.IsBodyHtml = false;
                // Corpo da Mensagem
                //ObjMsg.Body = txtTo.Text + " " + txtMsg.Text;
                ObjMsg.Body = txtMsg.Text;

                // Recupera o binario enviado pelo FileUpload
                MemoryStream MS = new MemoryStream(fileAnexo.FileBytes);
                // Anexa o Stream do arquivo
                Attachment anexo = new Attachment(MS, fileAnexo.FileName);
                ObjMsg.Attachments.Add(anexo);

                // Estancia a Classe de Envio
                SmtpClient smtpClient = new SmtpClient("smtp.############.com");
                // Credencial para envio por SMTP Seguro (Quando o servidor exige autenticação)
                smtpClient.Credentials = new NetworkCredential(txtFrom.Text, txtSenha.Text);
                // Envia a mensagem
                smtpClient.Send(ObjMsg);
                lblMsgem.Text = "Email Enviado com Sucesso";

            }
            catch (Exception ex)
            {

                lblMsgem.Text = "Erro ao enviar o E-mail: " + ex.Message;
            }

Link para o comentário
Compartilhar em outros sites

  • 0

Você pode experimentar o Softaken IMAP Anexo EXtractor. O software fornece um resultado preciso e também é uma ferramenta 100% segura. Exporta facilmente anexos de arquivos grandes e grandes. (Excel, PDF, jpg, HTML e quaisquer outros arquivos). Softaken IMAP Anexo EXtractor extrai todos os seus anexos muito facilmente, sem formatar seus dados e quaisquer outros arquivos.

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,3k
    • Posts
      652,5k
×
×
  • Criar Novo...