是否可以代表当前sharepoint用户在Sharepoint页面上创建Outlook会议? 我尝试通过按钮点击创建会议与下一个代码
Application oApp = new Microsoft.Office.Interop.Outlook.Application();
AppointmentItem appointment = (AppointmentItem)oApp.CreateItem(OlItemType.olAppointmentItem);
appointment.Start = DateTime.Now.AddHours(1);
appointment.End = DateTime.Now.AddHours(2);
appointment.Subject = "Some subject";
appointment.Body = "Some body";
appointment.Recipients.Add("user1@somemail.com");
appointment.Recipients.Add("user2@somemail.com");
appointment.Save();
但是我在调用appointment.Recipients时遇到了这个错误
操作中止(异常HRESULT:0x80004004(E_ABORT))
当我在控制台应用程序中运行此代码时,它工作正常。有任何想法吗? 提前致谢
答案 0 :(得分:1)
Considerations for server-side Automation of Office文章声明如下:
Microsoft目前不建议也不支持从任何无人参与的非交互式客户端应用程序或组件(包括ASP,ASP.NET,DCOM和NT服务)自动化Microsoft Office应用程序,因为Office在此环境中运行Office时,可能会出现不稳定的行为和/或死锁。
如果要构建在服务器端上下文中运行的解决方案,则应尝试使用已为安全无人值守执行的组件。或者,您应该尝试找到允许至少部分代码在客户端运行的替代方法。如果从服务器端解决方案使用Office应用程序,则应用程序将缺少许多成功运行的必要功能。此外,您将承担整体解决方案稳定性的风险。
如果您处理Exchange配置文件,则可以考虑使用EWS(Exchange Web服务)。有关详细信息,请参阅EWS Managed API, EWS, and web services in Exchange。