2011-05-09 142 views
72

使用codeproject中提供的示例,我正努力找出可以找到对库Microsoft.Office.Core的引用的位置。Microsoft.Office.Core参考丢失

我收到错误“无法找到引用的组件'Microsoft.Office.Core'”。

我只在这个系统上安装了office 2007企业版和outlook 2003。这可能是这个原因吗?否则,我应该引用哪个特定的dll?

+0

试过这两个建议,似乎仍然卡住了。问题在于我的情况是什么“适合您的系统的COM库”? – 2011-05-09 05:55:36

+0

你有没有想过这个?我有同样的问题。 – rd42 2011-10-10 14:36:05

回答

122

您可以从COM组件选项卡中添加引用窗口中添加的Microsoft.Office.Core参考加入的参考Microsoft Office 12.0 Object Library。屏幕截图将显示您需要的组件。

enter image description here

+0

这实际上工作,最高的答案没有。 – Dave 2012-12-06 18:47:12

+0

拒绝投票的理由? – Adil 2014-03-06 09:22:53

+0

.NET-> Office(如果安装了PIA)。请参阅下面的Spike的答案。 – samosaris 2014-12-30 21:34:44

1

你是否真的去了你的引用,并添加了一个.NET引用到'Microsoft.Office.Core'库?如果你下载了示例应用程序,答案会是肯定的。如果是这种情况,请按照文章中的建议操作:

如果您的系统没有Microsoft Office Outlook 2003,则可能需要更改“OutlookConnector”项目使用的引用。也就是说,如果您收到了名为“无法找到名称空间名称的类型”的构建错误,则您可能没有Office 2003.只需展开项目引用,删除受影响的项目,然后添加适合您的系统的COM库。如果有人有一个动态的方式来处理这个问题,我会很好奇你看到你已经完成了。

这应该可以解决您的问题。如果没有,请告诉我们。

17

您需要为您正在使用的Office版本下载并安装PIA(主互操作程序集)。安装完成后,您可以添加对项目的引用,并且可以从添加引用对话框中使用它们。下面是下载它们的链接...

Office 2010 PIA

Office 2007 PIA

Office 2003 PIA

+6

试了三次。到目前为止没有运气! – 2011-05-09 08:58:36

+2

安装了PIA,但是在“添加引用”中找不到它们,但是它通过直接从路径中添加DLL等工作。 C:\ Windows \ assembly \ GAC_MSIL \ Microsoft.Office.Interop.Excel \ xxxx \ .... – copa017 2015-12-08 07:41:54

+1

我已经能够找到其他PIA但不是Microsoft.Office.Core – JohnD 2016-03-16 19:43:32

2

安装Office PIA(主互操作程序集)之后,引用添加到您的项目 - >其.NET选项卡上 - 组件名称为 “办公室”

+0

Downvoted,因为声明是错误的。 – TheMathemagician 2015-04-29 09:31:29

+0

Upvoted,因为这实际上对我做了。最初设置对.COM的引用并未解决问题。 – DrMarbuse 2016-11-08 08:58:55

+0

很高兴知道这个.NET选项卡的位置是 – Edward 2017-06-03 03:26:12

2

如果您正在使用Visual Studio 2012,为了这个工作,并且为了引用Microsoft Office Core,您必须通过点击顶部菜单的Project,Add Reference,Extensions按钮并检查现在是(14.0)的办公室来通过Visual Studio进行参考。

5

如果有人在.NET中没有参考。COM(标签),或者没有安装在那里的视觉安装可以做机上办公:

  1. 下载并安装:Microsoft Office开发人员工具
  2. 从添加引用:

    C:\Program Files (x86)\Microsoft Visual Studio 11.0\Visual Studio Tools for Office\PIA\Office15 
    
-1

打开解决方案的属性并单击发布。然后,重新点击应用程序文件。更改包含的先决条件。

-1

我有同样的麻烦。我去添加引用,COM选项卡,选择Microsoft Office 15.0 Objetct库。好的,我的问题结束了。我的代码

部分是:

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())); 
2

现在有一个NuGet包了点。

https://www.nuget.org/packages/NetOffice.Core.Net40/

首先,我并没有在COM找到办公室,所以尝试这样的NuGet和它的工作!

+1

添加回答:如果您通过NuGet程序包管理器控制台(比如PowerPoint或Excel)安装Office Interop库,它也会安装它,同样不会如果您使用Visual Studio NuGet GUI似乎是真的 – Thumper 2017-07-11 21:45:18

3

以上答案都不对我有帮助,我使用的是Visual Studio 2017.我所做的是使用Visual Studio Installer安装了Office/SharePoint Development。

enter image description here

在那之后,我能看到 '办公室',该组件包含Microsoft.Office.Core。

enter image description here

希望这有助于你。

1

如果你无法找到PIA为Office 2013,然后按照下列步骤操作:

  1. 在Visual Studio中点击Solution Explorer中
  2. 您的项目名称右键单击(不解决方案名称)
  3. 选择 '管理的NuGet包' Browse(浏览)
  4. 点击和搜索PIA 2013,选择显示PIA并单击Install .....

然后你就完成了。