当前位置: 首页 > 编程语言 > C#

C#Excel2010工作簿打开错误分享

时间:2023-04-10 21:34:26 C#

C#Excel2010工作簿打开错误我们最近从Excel2007升级到Excel2010,我们发现现有代码开始失败。异常消息:Office检测到此文件有问题。为了帮助保护您的计算机,无法打开此文件。我们已将此跟踪到我们打开文件的行excelApp.Workbooks.Open,甚至在手动打开文件时,也会出现“受保护的视图”消息框。我们如何使用C#解决这个问题。请参阅在Open语句之前使用Application.FileValidation属性(Excel)。返回或设置Excel在打开文件之前验证文件的方式。未通过验证的读/写文件将在受保护的视图窗口中打开。如果设置FileValidation属性,该设置将在应用程序打开的整个会话期间保持有效。您可以将其设置为MsoFileValidationMode枚举中的枚举值之一msoFileValidationDefaultmsoFileValidationSkip如果您在Open语句之前将其设置为msoFileValidationSkip,则应绕过该检查。像excelApp.FileValidation=MsoFileValidationMode.msoFileValidationSkip;在公开声明之前。此处的游戏后期,但这是一个常见的烦恼:您需要定义一个“受信任的位置”。当您的代码尝试打开电子表格文件时,您不是唯一遇到此问题的开发人员,并且“Office检测到此文件有问题。为了帮助保护您的计算机,无法打开此文件。”是一个非常无用的错误信息。查看DanielPineault于2010年在DevHut.net上发布的可信位置代码:DevHut代码示例:使用VBScript的可信位置我将在C#论坛上发布VBA,因为我最好不要发布实现Daniel的代码(是的,我是一个VBA开发人员,整天都在bashVBA宏,而不是一个真正的编码员,处理尖锐的事情和大括号)。如果您真的想看VBA,这里是对另一篇文章的回复:https://stackoverflow.com/questions/2962728/office-trusted-locations/28115700#28115700我认为正确的标题是“分享和享受”。如果您要重用代码,请感谢原作者DanielPineault:它已在“专家”网站上广泛发布,但没有注明出处,而且非常粗鲁。我们有同样的问题。我们在SQLServer上的SSIS包使用Excel.Interop来解析文件。有一天,我们在一台新服务器上安装了Office2010x64,一些文件开始出现错误:Office检测到此文件有问题。为了帮助保护您的计算机,无法打开此文件。同时,其他服务器运行良好。我们发现Excel版本有所不同:14.04763.1000不起作用,但14.0.7015.1000对我们有用。最新版本号为Office2010SP2。最终我们下载并安装了SP2,错误消失了。以上就是C#学习教程:C#Excel2010工作簿打开错误分享的全部内容。如果对大家有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。涉及侵权,请点击维权联系管理员删除。如需转载请注明出处: