1

我的意图是使用 Outlook 互操作库从 c# 发送邮件。但问题是生产机器中没有安装 Outlook 软件。

  1. 有没有办法在没有安装 Outlook 的情况下使用 c# 发送邮件?
  2. 即使安装了,是否需要配置帐户?3.是否可以手动指定发件人地址而不是访问outlook账号?

注意:我不会使用基于 SMTP 的电子邮件,因为发送的邮件不会与邮件服务器同步。

谢谢

4

2 回答 2

1

是的,这可以单独使用 C#。用户不需要在客户端机器上安装 Outlook。

C# 提供了一个名为System.Net.Mail. 这包含从 C# 发送邮件所需的所有类。它与 OutLook 没有任何依赖关系。看看下面的代码片段:

System.Net.Mail.MailMessage message = new System.Net.Mail.MailMessage();    
message.To.Add("jeet@abc.come");    
message.Subject = "This is the Subject line";    
message.From = new System.Net.Mail.MailAddress("From@XYZ");    
message.Body = "This is the message body";    
System.Net.Mail.SmtpClient smtp = new System.Net.Mail.SmtpClient("**yoursmtphost**");    
smtp.Send(message);

代替“yoursmtphost”,您也可以配置机器的 IP 地址。

希望这能解决您的疑问。如果完成,请不要忘记标记已回答。

于 2013-08-19T06:19:36.173 回答
1

您可以轻松使用 Gmail 免费 SMTP 服务器并使用您的 Gmail 帐户发送邮件:

            System.Net.Mail MailMessage message = new System.Net.Mail.MailMessage();
            message.To.Add("yourfriend@yahoo.com");

            message.Subject = "subject";
            message.From = new System.Net.Mail.MailAddress("yourgmailaccount@gmail.com");
            message.Body = "body";
            System.Net.Mail.SmtpClient smtp = new System.Net.Mail.SmtpClient("smtp.gmail.com", 587);
            smtp.Credentials = new System.Net.NetworkCredential("yourgmailaccount@gmail.com", "yourgmailpassword");
            smtp.EnableSsl = true;

            smtp.Send(message);
于 2013-08-19T06:27:29.567 回答