首页 / C# / c# – 嵌入式Outlook视图控件
c# – 嵌入式Outlook视图控件
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了c# – 嵌入式Outlook视图控件,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1868字,纯文字阅读大概需要3分钟。
内容图文
![c# – 嵌入式Outlook视图控件](/upload/InfoBanner/zyjiaocheng/782/9cb48b7632784f6f8ec4799d08c2b8af.jpg)
我试图在Windows XP SP3和Internet Explorer 7上使用Visual Studio 2008制作Outlook 2003加载项.
我的加载项是使用自定义文件夹主页,它显示我的自定义窗体,它包装Outlook视图控件.
每当我尝试设置OVC的Folder属性时,我都会得到’Exception from HRESULT:0xXXXXXXXX’的COM Exception.错误代码是一个随机数,每次都不同.它不是第一次访问控件的属性,在此之前,已经设置了View和ViewXML属性.控件标记为安全脚本.
我正在使用活动资源管理器的CurrentFolder.FolderPath属性的值,这似乎是正确的:
Outlook.Explorer currentExplorer = app.ActiveExplorer();
if (currentExplorer != null)
{
ovcWrapper.Folder = currentExplorer.CurrentFolder.FolderPath;
}
这是堆栈跟踪的顶部:
System.Runtime.InteropServices.COMException (0xXXXXXXXX): Exception from HRESULT: 0xXXXXXXXX
at Microsoft.Office.Interop.OutlookViewCtl.ViewCtlClass.set_Folder(String pVal)
at AxMicrosoft.Office.Interop.OutlookViewCtl.AxViewCtl.set_Folder(String value)..
仅当文件夹位于非默认PST文件中时才会发生这种情况.更改为默认PST文件中的文件夹不会产生任何异常.
我必须强调,在我去度假之前一切正常.:)似乎Windows XP安装了一些更新,这些更新在我不在时更改了Internet Explorer或Outlook 2003的默认安全性.
在另一台(虚拟机)上使用Office 2007和Internet Explorer 6,没有任何更新,一切正常.
解决方法:
过了一会儿,我终于找出了解决方案:将外部存储的名称更改为新的名称.
在启动插件期间,它会加载非默认的PST文件,并将其名称(不是pst文件的名称,而是根文件夹的名称)更改为“Documents”.
这是代码:
session.AddStore("C:\\test.pst"); // loads existing or creates a new one, if there is none.
storage = session.Folders.GetLast(); // grabs root folder of the new fileStorage.
if (storage.Name != storageName) // if fileStorage is brand new, it has default name.
{
storage.Name = "Documents";
session.RemoveStore(storage); // to apply new fileStorage name, it have to be removed and added again.
session.AddStore(storagePath);
}
解决方案不是再使用’Documents’作为名称,而是使用新的东西.问题与具体名称无关.
内容总结
以上是互联网集市为您收集整理的c# – 嵌入式Outlook视图控件全部内容,希望文章能够帮你解决c# – 嵌入式Outlook视图控件所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。