通过outlook interop dll访问其他用户的状态

时间:2013-04-22 07:53:44

标签: c# outlook

如果我在Outlook中打开别人的日历,我可以看看他们是否有预约会议的时间。他们被设置为忙,暂时等。
是否可以通过outlook interop dll获取此信息?没有任何成功搜索解决方案...

2 个答案:

答案 0 :(得分:1)

使用Recipient.FreeBusy或AddressEntry.GetFreeBusy。

答案 1 :(得分:1)

使用这段代码结束;

Microsoft.Office.Interop.Outlook.Application outlookApp = new Microsoft.Office.Interop.Outlook.Application();
NameSpace ns = outlookApp.GetNamespace("mapi");
ns.Logon(Missing.Value, Missing.Value, false, true);
AddressEntries addressBook = ns.GetGlobalAddressList().AddressEntries;
AddressEntry testSearch = addressBook["LastName, FirstName"];
Console.WriteLine("FreeBusy: {0}", testSearch.GetFreeBusy(DateTime.Now, 30, true));

仍然必须将GetFreeBusy字符串解析为有用的东西,但就我所能找到的东西而言,没有什么比这更简单了。不确定是否有必要使用NameSpace登录(在另一段代码中使用它),但它不会减慢速度或导致任何问题......