2012-02-16 6 views
8

La nostra app ha aggiunto funzionalità per consentire agli utenti di importare determinate informazioni da un foglio di calcolo Excel (tutti gli utenti avranno già Office 2007).È necessario che sul computer di generazione sia installato Microsoft Office 2007?

La macchina di sviluppo ha Office 2007 e lo sviluppatore ha aggiunto un riferimento a Microsoft.Office.Interop.Excel - tutto andava bene.

Tuttavia, la macchina di generazione non ha installato Office 2007. Quando la build viene eseguita sul computer di costruzione, viene visualizzato il seguente errore di compilazione: "Il nome o lo spazio dei nomi 'Office' non esiste nello spazio dei nomi 'Microsoft' (manca un riferimento all'assembly?)"

I ha scaricato il Office 2007 Primary Interop Assemblies redistributable. Ma quando eseguo quel file MSI sul computer di costruzione, ricevo una finestra di messaggio che dice "Installa Microsoft Office 2007 prima di installare questo prodotto"

È davvero necessario installare Office 2007 sul computer di costruzione? C'è un altro modo per aggirare questo?

+1

sei sicuro che Microsoft.Office.Interop.Excel è archiviato con il codice sorgente e il progetto VS lo sta facendo riferimento dall'albero di origine e non da GAC? –

+2

@DavidePiras - Questa era la risposta! Una volta modificato il riferimento da GAC ​​a albero dei sorgenti, la build ha funzionato. Fare riferimento al file dal progetto non utilizzando la scheda .net, ma sfogliare e selezionarli dal disco. Se aggiungerai il tuo suggerimento come risposta lo accetterò. Grazie! –

risposta

11

Assicurarsi che il montaggio Microsoft.Office.Interop.Excel viene controllato-in con il codice sorgente e il progetto VS fa riferimento dall'albero di origine e non da GAC.

Al termine, sicuramente non è necessario installare MS Office sul computer di costruzione, ma è necessario per l'esecuzione dell'applicazione.

-1

Sì, è necessario aver installato Excel su tutte le macchine su cui si desidera eseguire l'app.

+2

Ma non voglio eseguire la mia app sul computer di costruzione: voglio solo costruirla? –

+1

No, non è necessario installare Excel - vedere la risposta di DavidePiras sopra –

1

Basta chiedere agli sviluppatori di controllare tutte le dipendenze di DLL. Questo è un chiaro caso di "funziona sulla mia macchina" in cui è necessario trascinare gli sviluppatori nella macchina in cui non funziona e segnalare che la loro documentazione è carente nel "dipartimento delle dipendenze". Se si ha accesso al codice sorgente o si può eseguire ILSpy negli assiemi, è possibile rintracciarlo in modo appropriato.

La scommessa sicura è che è sufficiente installare Excel, ma questo sta colpendo il problema con una mazza. I suoi sviluppatori dovrebbero sapere ciò che è realmente necessario .....

Problemi correlati