使用codeproject中提供的示例,我正在努力找出在哪里可以找到对 Microsoft.Office.Core 库的引用。
我收到错误“找不到引用的组件‘Microsoft.Office.Core’。”
我在这个系统上只安装了office 2007 企业版和outlook 2003。这可能是造成这种情况的原因吗?否则我应该引用哪个特定的 dll?
使用codeproject中提供的示例,我正在努力找出在哪里可以找到对 Microsoft.Office.Core 库的引用。
我收到错误“找不到引用的组件‘Microsoft.Office.Core’。”
我在这个系统上只安装了office 2007 企业版和outlook 2003。这可能是造成这种情况的原因吗?否则我应该引用哪个特定的 dll?
您可以Microsoft.Office.Core
通过添加. Microsoft Office 12.0 Object Library
屏幕截图将显示您需要的组件。
您需要为您使用的 Office 版本下载并安装 PIA(主要互操作程序集)。安装后,您可以添加对项目的引用,它们将在添加引用对话框中可用。这是下载它们的链接...
如果有人在 .NET 中没有参考。COM(选项卡)或没有在安装了视觉的机器上安装办公室可以做:
从以下位置添加参考:
C:\Program Files (x86)\Microsoft Visual Studio 11.0\Visual Studio Tools for Office\PIA\Office15
安装 Office PIA(主要互操作程序集)后,添加对项目的引用 -> 在 .NET 选项卡上 - 组件名称“Office”
现在有一个 nuget 包。
https://www.nuget.org/packages/NetOffice.Core.Net40/
首先我没有在 COM 中找到办公室,所以尝试了这个 nuget,它成功了!
您可以使用这个 NuGet 包,它除了 office 程序集之外还包括互操作程序集。
https://www.nuget.org/packages/Bundle.Microsoft.Office.Interop/
您是否真的去参考并添加了对“Microsoft.Office.Core”库的 .NET 参考?如果您下载了示例应用程序,答案是肯定的。如果是这种情况,请遵循文章中的建议:
如果您的系统没有 Microsoft Office Outlook 2003,您可能需要更改“OutlookConnector”项目使用的引用。也就是说,如果您收到描述为“找不到名称空间名称'Outlook'的类型”的构建错误,您可能没有Office 2003。只需展开项目引用,删除受影响的项目,然后添加适合您系统的 COM 库。如果有人有动态的方式来处理这个问题,我很想知道你已经完成了。
那应该可以解决您的问题。如果没有,请告诉我们。
如果您使用的是 Visual Studio 2012,要使其正常工作并参考 Microsoft Office Core,您必须通过 Visual Studio 通过单击顶部菜单的项目、添加参考、扩展按钮并检查 office 进行参考现在是(14.0)。
如果您无法找到 Office 2013 的 PIA,请按照以下步骤操作:
- 单击 Visual Studio 中的解决方案资源管理器
- 右键单击您的项目名称(不是解决方案名称)
- 选择“管理 Nuget 包”
- 单击浏览并搜索 PIA 2013,选择显示的 PIA 并单击安装.....
你完成了。
当我尝试将旧的 c# 项目打开到 Visual Studio 2017 版本时,我遇到了同样的问题。当您尝试打开使用以前版本的 VS 创建的项目并使用最新版本打开它时,通常会出现此问题。 我所做的是,我打开了我的项目并从我的项目中删除了引用,然后添加了 Microsoft Outlook 12.0 对象库和 Microsoft Office 12.0 对象库Microsoft Outlook 12.0 对象库
在我的情况下,当我从 Reference->COM 添加“Microsoft Excel 对象库”和“Microsoft Office 对象库”时,引用错误就消失了。
我有同样的麻烦。我去添加引用,COM选项卡,选择Microsoft Office 15.0 Objetct Library。好的,我的问题结束了。
我的部分代码是:
EXCEL.Range rango;
rango = (EXCEL.Range)HojadetrabajoExcel.get_Range("AE13", "AK23");
rango.Select();
// EXCEL.Pictures Lafoto = (EXCEL.Pictures).HojadetrabajoExcel.Pictures(System.Reflection.Missing.Value);
EXCEL.Pictures Lafoto = HojadetrabajoExcel.Pictures(System.Reflection.Missing.Value);
HojadetrabajoExcel.Shapes.AddPicture(@"D:\GENETICA HUMANA\Reportes\imagenes\" + Variables.nombreimagen,
Microsoft.Office.Core.MsoTriState.msoFalse, Microsoft.Office.Core.MsoTriState.msoCTrue,
float.Parse(rango.Left.ToString()),float.Parse(rango.Top.ToString()), float.Parse(rango.Width.ToString()),
float.Parse(rango.Height.ToString()));