如何从c更改后期绑定Outlook邮件中的发件人#

如何从c更改后期绑定Outlook邮件中的发件人#,outlook,late-binding,sender,Outlook,Late Binding,Sender,我想使用后期绑定通过Outlook发送电子邮件。到目前为止,它工作正常,但我想使用另一个“发件人”地址,而不是outlook帐户使用的地址。 有人知道怎么做吗 通过尝试早期绑定,我发现了一些属性“Sender”,“senderemailAddress”。。。但是没有什么对我有用或者我做错了。。。(我想是的) 这是我创建邮件和打开outlook的代码 try { CreateObject co = new CreateObject("Outl

我想使用后期绑定通过Outlook发送电子邮件。到目前为止,它工作正常,但我想使用另一个“发件人”地址,而不是outlook帐户使用的地址。 有人知道怎么做吗

通过尝试早期绑定,我发现了一些属性“Sender”,“senderemailAddress”。。。但是没有什么对我有用或者我做错了。。。(我想是的)

这是我创建邮件和打开outlook的代码

        try
        {
            CreateObject co = new CreateObject("Outlook.Application");
            object[] parms = new object[1];
            parms[0] = 0;
            object mailitem = co.Execute("CreateItem", parms);

            // define TO
            object recipients = mailitem.GetType().InvokeMember("Recipients", BindingFlags.GetProperty, null, mailitem, null);
            object[] address = new object[1];
            address[0] = toAdress;
            recipients.GetType().InvokeMember("Add", BindingFlags.InvokeMethod, null, recipients, address);

            // define subject
            parms[0] = subject;
            mailitem.GetType().InvokeMember("Subject", BindingFlags.SetProperty, null, mailitem, parms);

            // define MailText
            parms[0] = mailText;
            mailitem.GetType().InvokeMember("Body", BindingFlags.SetProperty, null, mailitem, parms);

            // open Outlook to send manually
            mailitem.GetType().InvokeMember("Display", BindingFlags.InvokeMethod, null, mailitem, null);
        }
        catch (Exception ex)
        {

            throw;
        }

您只能更改SentOnBehalfOfName属性;Sender和SenderEmailAddress是只读属性。如果需要使用不同的发件人发送,则需要将SendUsingAccount属性设置为代表为该发件人配置的帐户的帐户对象。

这正是我要查找的,谢谢<代码>//定义发送方对象[]addressSend=新对象[1];addressSend[0]=strFrom;mailitem.GetType().InvokeMember(“SentonBehalfName”,BindingFlags.SetProperty,null,mailitem,addressSend)