Jump to content

Formulario de Contacto no VS 2010


Recommended Posts

Posted

Boas

Formulário de Contacto como?

1 espaço para o nome, email e mensagem, e que depois envia para o teu email / email do software1?

Isso para Windows Forms ou WebAplication?

A informática chegou para resolver problemas que antes não existiam

Quem ri por último é porque está conectado a 52 Kbs.

Posted

Boas

Crias 5 textboxes -> txt_Nome, txt_Email, txt_Assunto, txt_Anexo, txt_Mensagem

Crias também as 5 labels -> Nome, Email, Assunto, Anexo, Mensagem

Crias 3 botões ->btn_ADD_Anexo, btn_Enviar, btn_Fechar

Função para validar o email introduzido

//Função para verificar se o email é valido
private static bool Verificar_Email(string email)
{
     string mascara = @"^[a-zA-Z][\w\.-]*[a-zA-Z0-9]@[a-zA-Z0-9][\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]$";

     // Verifica se o email corresponde a pattern/mascara
     Match Resultado = Regex.Match(email, mascara);

     if (Resultado.Success)
     {
          return true;
     }
     else
     {
          return false;
     }
}

Função para enviar o email para ti

// Enviar email para o Dono do Software
private static bool enviar_email(String nome, String email, String assunto, String anexo, String mensagem)
{
     String Email_Remetente = ""; // Email de onde parte o email / email do Software
     String Senha_Email_Remetente = ""; // password do email de onde parte o email / email do Software
     String Email_Destinatario = ""; // Como o email é para nós, meter o nosso email / email do Software

     // Criar o email
     System.Net.Mail.MailMessage Mensagem = new System.Net.Mail.MailMessage();
               
     // Destinatario da Mensagem 
     // Neste caso como o email é para nós proprios, metesse o nosso
     Mensagem.To.Add(Email_Destinatario.ToString());
               
     // Email e Nome de quem envia o Email.
     Mensagem.From = new System.Net.Mail.MailAddress (Email_Remetente.ToString(), "Nome_Dono_Email");

     // Para adicionar  CC e BCC 
     // Mensagem.CC.Add(Email_Remetente.ToString());
     // Mensagem.BCC.Add(Email_Remetente.ToString());

     // Verifica se existe anexo. Se existi atacha ao email
     if (anexo != string.Empty)
     {
          System.Net.Mail.Attachment Anexo = new System.Net.Mail.Attachment(anexo.ToString());
          Mensagem.Attachments.Add(Anexo);
     }

     // Adiciona o Assunto
     Mensagem.Subject = assunto.ToString();
     
     // Adiciona a Mensagem
     Mensagem.Body = "Nome: " + nome.ToString() + System.Environment.NewLine + "Endereço de Email: " + email.ToString() + System.Environment.NewLine + System.Environment.NewLine + "Mensagem: " + System.Environment.NewLine + System.Environment.NewLine+ mensagem.ToString();


     //Enviar o email
     System.Net.Mail.SmtpClient SMTP = new System.Net.Mail.SmtpClient();
     // Host do Gmail -> smtp.gmail.com
     // Host do Hotmail -> smtp.live.com
     SMTP.Host = "smtp.gmail.com";

     // Porta do Gmail -> 587
     // Porta do Hotmail -> 587
     SMTP.Port = 587;

     // Para contas de Email que utilizem SSL (Gmail, Hotmail,...)
     // Se a conta não utilizar SSL, apagar a linha ou meter false
     SMTP.EnableSsl = true;

     // Credencias de acesso à conta de onde o email vai ser enviado
     // O teu email / email do software
     SMTP.Credentials = new System.Net.NetworkCredential(Email_Remetente.ToString(), Senha_Email_Remetente.ToString());

     try
     {
          SMTP.Send(Mensagem);
          MessageBox.Show("Email enviado com Sucesso!");
          return true;
     }
     catch (InvalidCastException erro)
     {
          MessageBox.Show("Ocorreu o Seguinte erro ao enviar o email!" + System.Environment.NewLine + erro);
          return false;
     }
}

Função para enviar copia para o utilizador

// Enviar email para o utilizador
private static bool enviar_copia_email(String nome, String email, String assunto, String anexo, String mensagem)
{
     String Email_Remetente = ""; // Email de onde parte o email / email do Software
     String Senha_Email_Remetente = ""; // password do email de onde parte o email / email do Software

     String Email_Destinatario = email;

     // Criar o email
     System.Net.Mail.MailMessage Mensagem = new System.Net.Mail.MailMessage();

     // Destinatario da Mensagem 
     // Neste caso como o email é para nós proprios, metesse o nosso
     Mensagem.To.Add(Email_Destinatario.ToString());

     // Email e Nome de quem envia o Email.
     Mensagem.From = new System.Net.Mail.MailAddress(Email_Remetente.ToString(), "Nome_Dono_Email");

     // Para adicionar  CC e BCC 
     // Mensagem.CC.Add(Email_Remetente.ToString());
     // Mensagem.BCC.Add(Email_Remetente.ToString());

     // Verifica se existe anexo. Se existi atacha ao email
     if (anexo != string.Empty)
     {
          System.Net.Mail.Attachment Anexo = new System.Net.Mail.Attachment(anexo.ToString());
          Mensagem.Attachments.Add(Anexo);
     }

     // Adiciona o Assunto
     Mensagem.Subject = assunto.ToString();

     // Adiciona a Mensagem
     Mensagem.Body = "Nome: " + nome.ToString() + System.Environment.NewLine + "Endereço de Email: " + email.ToString() + System.Environment.NewLine + System.Environment.NewLine + "Mensagem: " + System.Environment.NewLine + System.Environment.NewLine + mensagem.ToString();


     //Enviar o email
     System.Net.Mail.SmtpClient SMTP = new System.Net.Mail.SmtpClient();
     // Host do Gmail -> smtp.gmail.com
     // Host do Hotmail -> smtp.live.com
     SMTP.Host = "smtp.gmail.com";

     // Porta do Gmail -> 587
     // Porta do Hotmail -> 587
     SMTP.Port = 587;

     // Para contas de Email que utilizem SSL (Gmail, Hotmail,...)
     // Se a conta não utilizar SSL, apagar a linha ou meter false
     SMTP.EnableSsl = true;

     // Credencias de acesso à conta de onde o email vai ser enviado
     // O teu email / email do software
     SMTP.Credentials = new System.Net.NetworkCredential(Email_Remetente.ToString(), Senha_Email_Remetente.ToString());

     try
     {
          SMTP.Send(Mensagem);
          MessageBox.Show("Email enviado com Sucesso!");
          return true;
     }
          catch (InvalidCastException erro)
     {
          MessageBox.Show("Ocorreu o Seguinte erro ao enviar o email!" + System.Environment.NewLine + erro);
          return false;
     }
}

Botão Enviar

private void brn_Enviar_Click(object sender, EventArgs e)
{
     if (txt_Nome.Text == string.Empty)
     {
          MessageBox.Show( "Introduza o seu Nome!");
     }

     if (txt_Email.Text == string.Empty)
     {
          MessageBox.Show ( "Introduza o seu Email!");
     }
     else
          if (Verificar_Email(txt_Email.Text) == false)
          {
               MessageBox.Show("Introduza um Email Válido!");
          }


     if (txt_Assunto.Text == string.Empty)
     {
          MessageBox.Show("Introduza o Assunto!");
     }


     if (txt_Mensagem.Text == string.Empty)
     {
          MessageBox.Show ("Introduza a sua Mensagem!");
     }

     if (txt_Nome.Text != string.Empty & txt_Email.Text != string.Empty & Verificar_Email(txt_Email.Text) == true & txt_Assunto.Text != String.Empty & txt_Mensagem.Text != string.Empty)
     {
          enviar_email(txt_Nome.Text.ToString(), txt_Email.Text.ToString(), txt_Assunto.Text.ToString(), txt_Anexo.Text.ToString(), txt_Mensagem.Text.ToString());        
     }


     //Verificar se o utilizador quer uma copia

     if (cB_copiaemail.Checked == true)
     {
          enviar_copia_email(txt_Nome.Text.ToString(), txt_Email.Text.ToString(), txt_Assunto.Text.ToString(), txt_Anexo.Text.ToString(), txt_Mensagem.Text.ToString());        
     }
}

Botão Adicionar Anexo

private void btn_ADD_Anexo_Click(object sender, EventArgs e)
{
     if (openFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK)
     {
          txt_Anexo.Text = openFileDialog1.FileName.ToString();
     }
}

Botão Fechar

private void btn_Fechar_Click(object sender, EventArgs e)
{
     Application.Exit();
}

A informática chegou para resolver problemas que antes não existiam

Quem ri por último é porque está conectado a 52 Kbs.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.