Microsoft.Office.Core-Referenz fehlt

93

Verwenden Sie das Beispiel in codeproject kann ich nur schwer herausfinden, wo ich den Verweis auf die Bibliothek Microsoft.Office.Core finden kann.

Ich erhalte die Fehlermeldung "Die referenzierte Komponente 'Microsoft.Office.Core' wurde nicht gefunden."

Ich habe nur Office 2007 Enterprise Edition und Outlook 2003 auf diesem System installiert. Könnte dies die Ursache dafür sein? Ansonsten auf welche spezifische DLL soll ich verweisen?

Maxim Gershkovich
quelle
Versuchte beide Vorschläge und scheint immer noch stecken zu bleiben. Die Frage ist, welche "COM-Bibliothek für Ihr System geeignet" in meinem Fall ist.
Maxim Gershkovich
Hast du das jemals herausgefunden? Ich habe das gleiche Problem.
Rd42

Antworten:

157

Sie können anhand von hinzufügen , Microsoft.Office.Corevon COM - Komponenten durch Zugabe von Referenz des Registerkarte in dem Add Referenzfenster Microsoft Office 12.0 Object Library. Der Screenshot zeigt, welche Komponente Sie benötigen.

Geben Sie hier die Bildbeschreibung ein

Adil
quelle
.NET-> Office (falls PIA installiert). Siehe Spikes Antwort unten.
Samis
3
Ich habe "Microsoft Office 14.0 Object Library" verwendet (12.0 war nicht vorhanden) und es hat auch funktioniert. Außerdem musste ich zuerst den Verweis auf "Microsoft.Office.Core" löschen.
Marsze
Jazakallah Adil Bhai. Hat für mich gearbeitet.
Shaikhspear
2
Ich verwende Visual Studio 2017, kann jedoch die "Microsoft Office XX.X-Objektbibliothek" auf der Registerkarte COM nicht sehen. Muss ich "Microsoft Office" installieren?
Casper
@Kin Hast du herausgefunden, was zu tun ist? Ich verwende auch VS 2017 und sehe keinen Verweis auf die Bibliotheken des Büros. Mussten Sie Microsoft Office installieren?
Luis Palacios
22

Keine der oben genannten Antworten hat mir geholfen. Ich habe Visual Studio 2017 verwendet. Ich habe Office / SharePoint Development mit Visual Studio Installer installiert.

Geben Sie hier die Bildbeschreibung ein

Danach konnte ich 'office' sehen, diese Assembly enthält Microsoft.Office.Core.

Geben Sie hier die Bildbeschreibung ein

Hoffe das hilft dir.

Abhimanyu
quelle
18

Sie müssen die PIA (Primary Interop Assemblys) für die von Ihnen verwendete Office-Version herunterladen und installieren. Nach der Installation können Sie Ihrem Projekt einen Verweis hinzufügen, der im Dialogfeld Verweis hinzufügen verfügbar ist. Hier sind die Links zum Herunterladen ...

Office 2010 PIA

Office 2007 PIA

Office 2003 PIA

Phil Wright
quelle
7
Versuchte alle drei. Bisher kein Glück!
Maxim Gershkovich
3
PIA wurde installiert, konnte sie jedoch nicht unter "Referenz hinzufügen" finden, aber dann funktionierte es für mich, indem die DLL direkt aus dem Pfad hinzugefügt wurde, z. B. C: \ Windows \ Assembly \ GAC_MSIL \ Microsoft.Office.Interop.Excel \ xxxx \ ... .
oo_dev
2
Ich konnte die anderen PIAs finden, aber nicht Microsoft.Office.Core
JohnD
Wird immer noch nicht in der COM-Liste angezeigt, um sie als Referenz hinzuzufügen
Edward
5

Wenn jemand keine Referenz in .NET hat. COM (Registerkarte) oder nicht Office auf einem Computer installiert haben, auf dem Visual installiert wurde, kann Folgendes tun:

  1. Herunterladen und installieren: Microsoft Office Developer Tools
  2. Referenzen hinzufügen von:

    C:\Program Files (x86)\Microsoft Visual Studio 11.0\Visual Studio Tools for Office\PIA\Office15
Artur Tarnowski
quelle
4

Fügen Sie nach der Installation von Office PIA (primäre Interop-Assemblys) einen Verweis auf Ihr Projekt hinzu -> auf der Registerkarte .NET - Komponentenname "Office"

Spitze
quelle
1
Upvoted, weil mir das tatsächlich angetan hat. Das anfängliche Setzen der Verweise auf .COM löste das Problem nicht.
DrMarbuse
Seien Sie nett zu wissen, wo sich diese .NET-Registerkarte befindet
Edward
3

Jetzt gibt es dafür ein Nuget-Paket.

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

Zuerst habe ich kein Büro in COM gefunden, also habe ich dieses Nuget ausprobiert und es hat funktioniert!

Herr Ott
quelle
1
Hinzufügen zur Antwort: Wenn Sie eine Office Interop-Bibliothek über die NuGet-Paketmanagerkonsole (z. B. PowerPoint oder Excel) installieren, wird diese ebenfalls installiert. Dies scheint nicht der Fall zu sein, wenn Sie die Visual Studio NuGet-Benutzeroberfläche verwenden
Klopfer
2

Haben Sie tatsächlich Ihre Referenzen aufgerufen und der .bibliothek 'Microsoft.Office.Core' eine .NET-Referenz hinzugefügt? Wenn Sie die Beispielanwendung heruntergeladen haben, lautet die Antwort Ja. Wenn dies der Fall ist, befolgen Sie die Hinweise im Artikel:

Wenn Ihr System nicht über Microsoft Office Outlook 2003 verfügt, müssen Sie möglicherweise die vom Projekt "OutlookConnector" verwendeten Verweise ändern. Das heißt, wenn Sie einen Build-Fehler erhalten haben, der als "Der Typ des Namespace-Namens 'Outlook' konnte nicht gefunden werden" beschrieben wurde, haben Sie wahrscheinlich kein Office 2003. Erweitern Sie einfach die Projektreferenzen, entfernen Sie die betroffenen Elemente und fügen Sie sie hinzu die für Ihr System geeignete COM-Bibliothek. Wenn jemand eine dynamische Art hat, damit umzugehen, wäre ich gespannt, ob Sie das getan haben.

Das sollte dein Problem lösen. Wenn nicht, lassen Sie es uns wissen.

IAmTimCorey
quelle
2

Wenn Sie Visual Studio 2012 verwenden, damit dies funktioniert und um auf Microsoft Office Core zu verweisen, müssen Sie die Referenz über Visual Studio erstellen, indem Sie auf die Schaltfläche Projekt, Referenz hinzufügen, Erweiterungen im Hauptmenü klicken und Office überprüfen ist jetzt (14.0).

Humbert
quelle
1

Wenn Sie PIA für Office 2013 nicht finden können, gehen Sie folgendermaßen vor:

  1. Klicken Sie in Visual Studio auf Projektmappen-Explorer
  2. Klicken Sie mit der rechten Maustaste auf Ihren Projektnamen (nicht auf den Lösungsnamen).
  3. Wählen Sie "Nuget-Pakete verwalten".
  4. Klicken Sie auf Durchsuchen und suchen Sie nach PIA 2013, wählen Sie die angezeigte PIA aus und klicken Sie auf Installieren .....

Und du bist fertig.

Deepesh
quelle
0

Ich hatte das gleiche Problem, als ich versuchte, mein altes c # -Projekt in der Visual Studio 2017-Version zu öffnen. Dieses Problem tritt normalerweise auf, wenn Sie versuchen, ein Projekt zu öffnen, das Sie mit einer früheren Version von VS erstellt haben, und es mit der neuesten Version zu öffnen. was ich getan habe ist, öffnete ich mein Projekt und die Referenz von meinem Projekt löschen, dann hinzugefügt Microsoft Outlook 12.0 - Objektbibliothek und Microsoft Office 12.0 - Objektbibliothek Microsoft Outlook 12.0 - Objektbibliothek

Jobayer Rifad
quelle
-1

Öffnen Sie die Eigenschaften der Lösung und klicken Sie auf Veröffentlichen. Klicken Sie dann erneut auf Anwendungsdateien. Ändern Sie die Voraussetzung, um einzuschließen.

Nedimnamo
quelle
-1

Ich habe die gleichen Probleme. Ich ging zu Verweise hinzufügen, Registerkarte COM, und wählen Sie Microsoft Office 15.0 Objetct Library aus. Ok, und mein Problem endet.

Ein Teil meines Codes ist:

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()));
Giovanni Rodrigo Garcia Rada
quelle