使用C#中的Outlook对象发送电子邮件时更改发件人的电子邮件地址和名称

时间:2011-10-05 15:49:59

标签: c# outlook

过去两天我一直试图弄清楚这一个。我觉得我真的很亲密,但却无法得到它。我已经通过我的c#程序成功发送包含所有必需信息的电子邮件,但我无法更改发件人的姓名和电子邮件地址。到目前为止,这是我的代码:

Outlook.Application oApp = new Outlook.Application();

string emailrecipient = (Convert.ToString(txtAdmin1.Text) + "@domain.com");


            Outlook.MailItem email = (Outlook.MailItem)(oApp.CreateItem(Outlook.OlItemType.olMailItem));
            email.Recipients.Add(emailrecipient);
            email.Subject = "Your Recent Admin Rights Request";
            email.Body = "Your admin rights request has been processed. The user " + txtAdmin1.Text + " has been added as an administrator on computer " + txtName.Text + ". Please reboot your computer for these changes to take effect.";

            email.Send();

任何建议都会令人惊讶。我到处都搜索过,到目前为止还没找到任何有效的东西。

2 个答案:

答案 0 :(得分:0)

我相信因为你使用的是Outlook对象模型,所以From属性是只读的(我认为它叫做SenderName / SenderEmailAddress)。

Outlook在特定用户的上下文中运行,因此要更改用户,您必须使用不同的凭据登录Outlook。

答案 1 :(得分:0)

如果您使用的是Interop.Outlook.dll

,最好从服务器更改配置文件名称