【发布时间】:2010-09-29 00:54:11
【问题描述】:
当我添加对 Office COM 库的引用时,我要去:
- 参考资料
- 添加参考
- 选择COM标签
- 选择Microsoft Office 12.0 对象库
出现了神奇的命名参考:
Microsoft.Office.Core
Project.csproj 文件显示了参考的详细信息:
<COMReference Include="Microsoft.Office.Core">
<Guid>{2DF8D04C-5BFA-101B-BDE5-00AA0044DE52}</Guid>
<VersionMajor>2</VersionMajor>
<VersionMinor>4</VersionMinor>
<Lcid>0</Lcid>
<WrapperTool>primary</WrapperTool>
<Isolated>False</Isolated>
</COMReference>
我将项目签入源代码管理,现在没有其他人可以构建解决方案;他们没有 Office 12,他们只有 Office 11。
另一个人检查了 .csproj 文件,删除了对以下内容的引用:
Microsoft Office 12.0 Object Library
并将 COM 引用重新添加为:
Microsoft Office 11.0 Object Library
之后,新的引用出现在解决方案中:
Microsoft.Office.Core
Project.csproj 文件显示了参考的详细信息:
<COMReference Include="Microsoft.Office.Core">
<Guid>{2DF8D04C-5BFA-101B-BDE5-00AA0044DE52}</Guid>
<VersionMajor>2</VersionMajor>
<VersionMinor>3</VersionMinor>
<Lcid>0</Lcid>
<WrapperTool>primary</WrapperTool>
<Isolated>False</Isolated>
</COMReference>
注意:阅读问题的读者会理解问题。它是同一个类型库,但版本是 2.3 而不是 2.4。
然后将项目签入源代码管理,现在使用 Office 2007(以及 Office 2000)的开发人员无法构建它,因为 Visual Studio 无法解析对以下内容的引用:
{2DF8D04C-5BFA-101B-BDE5-00AA0044DE52}\2.3\0\primary
我们显然需要一种独立于版本的方式来引用 Office。
我们如何引用开发人员在其机器上构建的 Office 版本已安装?
我们如何让多个开发人员共同开发一个引用 Office 的解决方案?
注意:此问题与另一个 Stackoverflow 问题 How to use Office from Visual Studio C#?
相同,但根本不同该问题涉及尝试从 Visual Studio 使用 Office 的所有问题。这个问题只关注一个特定的问题。
【问题讨论】:
标签: com interop automation ms-office