C# 使用RDO连接到公用文件夹&;MAPI
我正在尝试使用RDO和MAPI连接到我公司的Exchange 2003服务器,这是我以前从未使用过的。我发现了一个使用Outlook的Redemption()的非常好的网站,但是由于该网站上的所有示例都使用VB.NET,而我并不擅长编程,所以要让它工作起来有点困难 到目前为止,我有这个代码C# 使用RDO连接到公用文件夹&;MAPI,c#,outlook-redemption,rdo,C#,Outlook Redemption,Rdo,我正在尝试使用RDO和MAPI连接到我公司的Exchange 2003服务器,这是我以前从未使用过的。我发现了一个使用Outlook的Redemption()的非常好的网站,但是由于该网站上的所有示例都使用VB.NET,而我并不擅长编程,所以要让它工作起来有点困难 到目前为止,我有这个代码 static void ConnectToExchange() { object oItems; //string outLookUser = "My Profile
static void ConnectToExchange()
{
object oItems;
//string outLookUser = "My Profile Name";
string outLookUser = "username@xxx.xxxx";
string ToEmailAddress = "username@xxxx.com";
string FromEmailAddress = "username@xxx.com";
string outLookServer = "xxservernamexx";
string sMessageBody =
"\n outLookUser: " + outLookUser +
"\n outLookServer: " + outLookServer +
"\n\n";
RDOSession Session = new RDOSession();
try
{
Session.LogonExchangeMailbox(outLookUser,outLookServer);
int mailboxCount = Session.Stores.Count;
string defaultStore = Session.Stores.DefaultStore.Name;
RDOFolder TestTaxCert = Session.GetFolderFromPath(@"\\Public Folders\All Public Folders\TestTaxCert");
}
catch (Exception ex)
{
Session = null;
//System.Web.Mail.SmtpMail.Send(ToEmailAddress, FromEmailAddress, "Error", sMessageBody + " " + ex.Message);
}
finally
{
if ((Session != null))
{
if (Session.LoggedOn)
{
Session.Logoff();
}
}
}
}
}
我的问题是,一旦程序点击会话.LogonExchangeMailbox(outLookUser,outLookServer)代码>行时,会出现一个提示,询问我的凭据(用户名、域、密码),无论我提供了什么信息,提示都会拒绝权限
因此,如果有人能帮我解决这一问题,然后还能帮我连接到公共文件夹……那就太好了,请确保您的代码以LogonExchangeMailbox调用中指定的域用户身份运行。
您的意思是2003年,还是Exchange 2013?我的意思是Exchange 2003。我已经阅读到,有很多问题与这个B/C连接,它是为C++编写的,并且支持很少。NET 2003完全可以。它真的不在乎您是从.Net代码调用它。如何确保我的代码以LogonExchangeMailbox方法中使用的域用户的身份运行?您需要以拥有邮箱的域用户的身份在本地登录到您的计算机。对于服务,可以在“服务属性”对话框的“登录”选项卡上指定用户标识。