2012-07-22 8 views
9

Ciò non suggeriscono: http://msdn.microsoft.com/en-us/library/ee519072(v=vs.110).aspxPosso utilizzare VS 2012 per creare un componente aggiuntivo di Office 2007?

Ma, ma ... davvero?

Office 2007 è ancora onnipresente - sicuramente non hanno già abbandonato il supporto per questo? Devo supportarlo, e sembra che questo significherebbe che non posso usare VS2012.

O forse questa limitazione si applica solo al RC? (Per favore). O forse crea componenti aggiuntivi che sono targettizzati al 2010 ma possono ancora funzionare nel 2007? (Stringendo le cannucce).

Dimmi che non è così ...

+0

Sembra così, ma questa è una speculazione a questo punto. – JimmyPena

risposta

3

È possibile creare un Office addin that targets 2010, but that still works in Office 2007. Il trucco è che devi essere consapevole di quali tipi e eventi di interoperabilità sono presenti nel 2007 rispetto al 2010. Se provi ad accedere ad un evento o membro della classe che non esiste nel 2007, avrai problemi.

Visual Studio 2012 include solo i modelli di progetto di Office 2010. Un altro fastidio/limitazione è che hanno eliminato il supporto di Setup Projects che è il modo in cui abbiamo rilasciato il nostro plugin. I progetti di installazione sono stati replaced by InstallShield Limited Edition (ISLE).

+0

Grazie. Che ne dici delle cose NoPIA? Presumo che non funzionerà, almeno per il 2007? Sembra che devo attenermi a VS 2010 :-( –

2

FYI, intorno al marzo 2013, Ho appena creato un componente aggiuntivo di Excel mirato a Excel 2013 che corre bene in Excel 2007.

ho dovuto togliere/sostituire le chiamate a get_Range ma questo non è una sorpresa dal momento che il get_Range sembrava sempre un po 'un trucco.

#if PRE_VSTO_2012 
Excel.Range vsto_range = vsto_sheet.Cells.get_Range( 
    vsto_sheet.Cells[1, 1], 
    vsto_sheet.Cells[rowCount, colCount]) as Excel.Range; 
#else 
    Excel.Range top_left = vsto_sheet.Cells[ 1, 1 ]; 
    Excel.Range bottom_right = vsto_sheet.Cells[ rowCount, colCount ]; 
    Excel.Range vsto_range = vsto_sheet.Range[ top_left, bottom_right ]; 
#endif 

ho ancora ancora creare un pacchetto InstallShield LE. Questo è il prossimo ...

+2

"Devo ancora creare un pacchetto di InstallShield LE .Qui è il prossimo ..." - Povera cosa, pensi di aver fatto il 90%, ma in effetti Il 90% del dolore e della frustrazione si trova davanti. Buona fortuna :-) –

+0

@GaryMcGill è così dannatamente giusto. La prima volta che si utilizza installshield è un incubo orribile rispetto ai progetti di installazione precedentemente disponibili. In bocca al lupo ;) –