2013-01-17 40 views
1

我正在开发一个程序,该程序使用c#显示发送的Outlook和收件箱统计信息。通过Internet连接到另一个用户的Outlook

要访问Outlook,我把Microsoft.Office.Interop.Outlook引用放在我的c#应用程序中。

我的问题是如何与其他用户连接。我可以连接我的桌​​面应用程序用户。我已经使用的代码被粘贴下面:

private void Form1_Load(object sender, EventArgs e) 
    { 
     Microsoft.Office.Interop.Outlook.Application app = null; 
     Microsoft.Office.Interop.Outlook._NameSpace ns = null; 
     Microsoft.Office.Interop.Outlook.MailItem item = null; 
     Microsoft.Office.Interop.Outlook.MAPIFolder sentFolder = null; 
     Microsoft.Office.Interop.Outlook.MAPIFolder inbox = null; 
     MAPIFolder inboxChild = null; 
     Microsoft.Office.Interop.Outlook.MAPIFolder inboxChildChild = null; 

     app = new Microsoft.Office.Interop.Outlook.Application(); 
     ns = app.GetNamespace("MAPI"); 
     ns.Logon("xxxxx","xxxxx", false, false); 
    } 

在ns.Logon( “XXXXX”, “XXXXX”,FALSE,FALSE);我与另一个用户连接,但应用程序始终与桌面用户连接。

我如何与其他用户连接?

回答

0

你的意思是在另一台机器上运行outlook.exe的一个实例吗?或另一个域用户拥有的Exchange邮箱? 在后一种情况下,您可以在Outlook对象模型中使用Namespace.GetSharedDefaultFolder。 如果使用Redemption是一个选项,您也可以使用RDOSession。GetSharedMailbox或GetSharedDefaultFolder。 RDOSession .LogonExchangeMailbox是另一种选择。

相关问题