Riferimento Microsoft.Office.Core mancante


93

Utilizzando l'esempio fornito in codeproject sto lottando per capire dove posso trovare il riferimento alla libreria Microsoft.Office.Core.

Ricevo l'errore "Impossibile trovare il componente di riferimento" Microsoft.Office.Core "."

Ho solo Office 2007 Enterprise Edition e Outlook 2003 installati su questo sistema. Potrebbe essere questa la causa di questo? Altrimenti a quale specifica dll dovrei fare riferimento?


Ho provato entrambi i suggerimenti e sembra ancora bloccato. La domanda è: qual è la "libreria COM appropriata per il tuo sistema" nel mio caso?
Maxim Gershkovich

L'hai mai capito? Ho lo stesso problema.
rd42

Risposte:


157

È possibile aggiungere il riferimento Microsoft.Office.Coredalla scheda Componenti COM nella finestra Aggiungi riferimento aggiungendo il riferimento di Microsoft Office 12.0 Object Library. La schermata mostra quale componente ti serve.

inserisci qui la descrizione dell'immagine


.NET-> Office (se PIA installato). Vedi la risposta di Spike di seguito.
samis

3
Ho usato "Microsoft Office 14.0 Object Library" (12.0 non esisteva) e ha funzionato. Inoltre, ho dovuto eliminare prima il riferimento a "Microsoft.Office.Core".
marsze

Jazakallah Adil bhai. Ha funzionato per me.
shaikhspear

2
Utilizzo Visual Studio 2017 ma non riesco a vedere la "Libreria oggetti di Microsoft Office XX.X" nella scheda COM. Devo installare "Microsoft Office"?
Casper

@Kin Hai scoperto cosa fare? Sto anche usando VS 2017 e non vedo alcun riferimento alle librerie dell'ufficio. Hai dovuto installare Microsoft Office?
Luis Palacios,

22

Nessuna delle risposte precedenti mi ha aiutato, stavo usando Visual Studio 2017. Quello che ho fatto è stato installare Office / SharePoint Development utilizzando Visual Studio Installer.

inserisci qui la descrizione dell'immagine

Dopodiché, ho potuto vedere "office", questo assembly contiene Microsoft.Office.Core.

inserisci qui la descrizione dell'immagine

Spero che questo ti aiuti.


18

È necessario scaricare e installare PIA (assembly di interoperabilità primari) per la versione di Office in uso. Una volta installati, puoi aggiungere un riferimento al tuo progetto e saranno disponibili dalla finestra di dialogo Aggiungi riferimento. Ecco i link per scaricarli ...

Office 2010 PIA

Office 2007 PIA

Office 2003 PIA


7
Ho provato tutti e tre. Finora nessuna fortuna!
Maxim Gershkovich

3
PIA installato ma non sono riuscito a trovarli in "Aggiungi riferimento", ma poi ha funzionato per me aggiungendo direttamente la DLL dal percorso, ad esempio C: \ Windows \ assembly \ GAC_MSIL \ Microsoft.Office.Interop.Excel \ xxxx \ ... .
oo_dev

2
Sono stato in grado di trovare gli altri PIA ma non Microsoft.Office.Core
JohnD

Ancora non compare nell'elenco COM da aggiungere come riferimento
Edward

5

Se qualcuno non ha riferimento in .NET. COM (tab) o non avere Office installato sulla macchina in cui è stato installato visual può fare:

  1. Scarica e installa: Microsoft Office Developer Tools
  2. Aggiungi riferimenti da:

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

4

Dopo aver installato Office PIA (assembly di interoperabilità primari), aggiungi un riferimento al tuo progetto -> si trova nella scheda .NET - nome del componente "Office"


1
Upvoted perché questo effettivamente ha fatto a me. L'impostazione iniziale dei riferimenti a .COM non ha risolto il problema.
DrMarbuse

Sii gentile sapere dove si trova questa scheda .NET
Edward

3

Ora c'è un pacchetto nuget per questo.

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

Per prima cosa non ho trovato l'ufficio in COM, quindi ho provato questo nuget e ha funzionato!


1
Aggiunta alla risposta: se si installa una libreria di Office Interop tramite la console del gestore di pacchetti NuGet (ad esempio PowerPoint o Excel), sembra installare anche questo ... lo stesso non sembra essere vero se si utilizza la GUI di Visual Studio NuGet
Thumper

2

Sei effettivamente andato ai tuoi riferimenti e hai aggiunto un riferimento .NET alla libreria "Microsoft.Office.Core"? Se hai scaricato l'applicazione di esempio, la risposta sarebbe sì. In tal caso, segui i consigli nell'articolo:

Se il sistema non dispone di Microsoft Office Outlook 2003 potrebbe essere necessario modificare i riferimenti utilizzati dal progetto "OutlookConnector". Vale a dire, se hai ricevuto un errore di compilazione descritto come "Impossibile trovare il tipo di nome dello spazio dei nomi 'Outlook'", probabilmente non hai Office 2003. Espandi semplicemente i riferimenti al progetto, rimuovi gli elementi interessati e aggiungi la libreria COM appropriata per il tuo sistema. Se qualcuno ha un modo dinamico per gestirlo, sarei curioso di vedere che hai fatto.

Questo dovrebbe risolvere il tuo problema. In caso contrario, faccelo sapere.


2

Nel caso in cui si utilizzi Visual Studio 2012, affinché funzioni e per fare riferimento a Microsoft Office Core, è necessario fare riferimento tramite Visual Studio facendo clic sul pulsante Progetto, Aggiungi riferimento, Estensioni del menu in alto e selezionando Office quale è ora (14.0).


1

Se non riesci a trovare PIA per Office 2013, segui questi passaggi:

  1. Fare clic su Esplora soluzioni in Visual Studio
  2. Fare clic con il tasto destro sul nome del progetto (non sul nome della soluzione)
  3. Seleziona "Gestisci pacchetti Nuget"
  4. Fare clic su Sfoglia e cercare PIA 2013, scegliere il PIA mostrato e fare clic su Installa .....

E hai finito.



0

Ho affrontato lo stesso problema quando ho provato ad aprire il mio vecchio progetto c # nella versione Visual Studio 2017. Questo problema si verifica in genere quando si tenta di aprire un progetto creato con la versione precedente di VS e aprirlo con la versione più recente. quello che ho fatto è aprire il mio progetto ed eliminare il riferimento dal mio progetto, quindi ho aggiunto la libreria di oggetti di Microsoft Outlook 12.0 e la libreria di oggetti di Microsoft Office 12.0 Libreria di oggetti di Microsoft Outlook 12.0


-1

Apri le proprietà della soluzione e fai clic su pubblica. Quindi, fai nuovamente clic sui file dell'applicazione. Modificare il prerequisito da includere.


-1

Ho lo stesso problema. Sono andato su Aggiungi riferimenti, scheda COM, una libreria di oggetti Microsoft Office 15.0 selezionata. Ok, e il mio problema finisce.

parte del mio codice è:

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()));
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.