Bon*_*ngo 10 c# vsto add-in excel-2007 excel-2010
我目前正在使用Excel 2010加载项,以前是Excel 2007加载项.在切换计算机的过程中,我认为加载项已被转换.
我的一些客户表示加载项不再适用于Excel 2007,因此我尝试在安装了Excel 2007和Visual Studio 2010的VirtualBox中对其进行调试.
现在我收到错误信息:
您无法调试或运行此项目,因为未安装所需的Microsft Office应用程序版本.
我开始了一个新的Excel 2007加载项目,并尝试找出差异是什么,并想出它与dll有点关系,所以我改变了我的2010插件,直到它看起来像2007插件.
我仍然收到错误消息,指出我的项目无法调试.
有什么我可以忘记改变的吗?
遗憾的是,编写一个全新的插件不是一种选择.
到目前为止,这些问题对我没有帮助:
要使VS 2010与Office 2007一起使用,请修改项目文件(.csproj),以便它在Office 2007中打开,而不是在运行时查找Office 2010(因此上面的错误消息).
这是项目设置更改(Excel示例):
源XPath:
//项目/ ProjectExtensions/VisualStudio中/ FlavorProperties/ProjectProperties/@ DebugInfoExeName
旧价值(Office 2010):
DebugInfoExeName = "#软件\微软\办公室\ 14.0\EXCEL\InstallRoot \路径#EXCEL.EXE"
新价值(Office 2007):
DebugInfoExeName ="#Software\Microsoft\Office\12.0\Excel\InstallRoot\Path#excel.exe"
更改此项目设置后,当您启动调试器(F5)时,它将加载Excel 2007应用程序而不是查找Excel 2010.
通常,当我使用VSTO加载项针对多个版本的Office进行开发时,我为每个目标版本的Office都有一个项目.我将项目之间的所有公共代码放入一个项目(通常是最旧的项目)并使用链接文件,我将公共文件添加到较新的项目中.这允许我编写一组通用核心代码,从每个版本的Office的要求中抽象出来.这意味着我不再为每个版本的Office编译VSTO的不同方式.使用共享文件夹和虚拟机可以使这更容易,因此我可以在没有多台计算机的情况下进行开发和测试.它绝不是优雅的,但对我来说效果很好.这应该允许您针对Office 2007和Office 2010开发VSTO加载项,而不会出现太多问题.
| 归档时间: |
|
| 查看次数: |
4060 次 |
| 最近记录: |