2009-07-02 13 views
1

Supposons que j'utilise SharpDevelop/VS pour développer une application utilisant PowerPoint.Compilation de la version PowerPoint

Ai-je besoin de recompiler l'application pour qu'il y ait une version pour chaque version de MS Office?

J'ai MS Office 2007, mais je voudrais aussi que l'application fonctionne avec Office 2003 et plus tard, sans avoir à recompiler l'application pour chaque version. Dois-je simplement installer le package/msi redistribuable Office Interop approprié sur l'ordinateur client et expédier mon application en l'état?

Merci d'avance pour votre aide.

Répondre

0

Si vous utilisez les bibliothèques Microsoft.Office.Interop dont vous avez besoin que la version 2007, il sera rétrocompatible avec les anciennes docs

0

J'ai trouvé que vous devez construire contre le plus ancien MS Office que vous avez. Nous utilisons toujours MS Office 2000.

La pensée derrière ceci:

  • Tout MS Office 2000 peut faire toute version ultérieure de MS Office peut faire.
  • Beaucoup de choses que MS Office 2007 peut faire est impossible à faire dans les versions antérieures de MS Office.
0

Je suis absolument d'accord avec Nifle. Utilisez les plus anciens que vous pouvez trouver. Si vous utilisez 2007, il y a de fortes chances que cela ne fonctionnera pas avec les anciennes versions.

Comme je ne voulais pas installer la version Office la plus ancienne sur mon PC de développement, j'ai utilisé Virtual PC pour créer un environnement de "construction finale". Je développe avec mon PC habituel puis déplace les fichiers sources sur le Virtual PC avec Office 2003 et VS installé, et crée la version client finale là.

Vous devrez modifier le fichier CSPROJ pour référencer les anciennes bibliothèques Office avec cette méthode. Vous pouvez le faire en ouvrant simplement VS sur le PC virtuel de build, en supprimant les références à Office et en les ajoutant à nouveau.

0

Juste pour confirmer ceci avec n'importe qui qui essaye ceci. J'ai un projet .NET 4 qui fait référence à la bibliothèque 15.0 PowerPoint Interop et à la bibliothèque Office 15.0 (Office 2013). J'ai configuré le projet sur "Intégrer les types d'interopérabilité".

J'ai configuré une machine virtuelle avec Office 2007 Ultimate sur et exécuté l'application (sans copier de DLL supplémentaires). Il a correctement interagi avec PowerPoint pour extraire les données que mon application cherchait.

Les bibliothèques Interop sont rétrocompatibles d'après mon expérience.