Comment utiliser les composant Office sans installer Microsoft Office

nicokain Messages postés 12 Date d'inscription samedi 19 avril 2003 Statut Membre Dernière intervention 15 janvier 2009 - 14 janv. 2009 à 14:58
esus1985 Messages postés 76 Date d'inscription mercredi 1 juin 2005 Statut Membre Dernière intervention 26 février 2009 - 26 févr. 2009 à 12:04
Bonjour,

Le titre n'est peut être pas très parlant... mais voici en détails ma question.

Je développe une application en C# qui va convetir des fichier Doc en HTML via les outils Office. Pour ce faire, j'ai Office 2003 d'installer sur ma station et j'ai référencé dans mon code les objet Office (Microsoft Word 11.0).

Quand je l'exécute sur ma station tout va bien mais comme je m'y attendais, sur d'autre station ça ne marche pas du fait que Word 2003 n'est pas installé ou alors c'est une version différente.

1. Est-il possible de créer une application s'appuyant sur les objets COM Office 2003 et de l'exécuter sur n'importe qu'elle station (même si Office 2003 n'est pas installé)? Si oui, comment doit-on procéder?

2. Est-il possible dans une application d'appeler plusieurs versions d'office. Je voudrais être capable lors de l'exécution de détecter la version d'office installée sur la station et d'utiliser le COM correspondant.

Je ne sais pas si je suis assez clair dans mes questions... n'hésitez pas et merci d'avance.

Nicolas

4 réponses

cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
14 janv. 2009 à 20:34
1. Attention aux licences et droits d'utilisation. Sauf cas particulier, normalement, il n'est pas possible d'utiliser des composants de la suite Office si ceux-ci ne sont pas installés.
En gros, tu peux très bien utiliser (sous certaines conditions) des composants de Word (ou Excel ou autre) mais tu ne dois pas les intégrer à ton pack d'installation, ni les installer avec ton application. Ils doivent être installés par la suite Office. Donc sur un machine ou Office n'est pas installé c'est mort.
Cela n'est évidement pas le cas des divers packs redistribuables.

2. Cela doit être possible (par Reflexion, je crois) en chargeant dynamiquement les assembly, plutot que de les rajouter en référence dans le projet, mais ça, je ne sais pas faire.
Et ça me serait bien utile dans certains cas.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
0
nicokain Messages postés 12 Date d'inscription samedi 19 avril 2003 Statut Membre Dernière intervention 15 janvier 2009
15 janv. 2009 à 08:48
Bonjour Casy,

merci pour ta réponse, cconcernant les droits c'est vrai que je n'y avait pas trop réfléchi . Cependant, mon client (gouvernement) a ce qu'il faut en licence Office mais je cherchais une solution pour un déploiement simple. je vais regarder ce que je trouve concernant Reflexion et j'y j'ai quelque chose de concrèt j'en ferais part.

Par contre, peut être pourras tu me répondre à ma seconde question qui est d'intégrer dans mon développement X versions d'office afin que les utilisateurs puissent lancer l'API quelque soit la version d'office installé sur leur poste (Je vais me limiter aux version 2003 et 2007). Si quelqu'un a déjà mis enplace ce système un petit bout de code serait le bienvenu .

Merci encore et bonne journée.

Nicolas
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
15 janv. 2009 à 09:12
Le problème d'intégrer les références des 2 versions est que même si finalement tu n'en utilise qu'une, les dll des 2 versions devront être installées (ou alors je me suis mal démerder quand j'ai fait l'essai, ce qui est tout à fait possible).

D'ou l'idée de les charger dynamiquement à l'utilisation. Il me semble que c'est possible, mais je n'en suis pas sûr, j'ai jamais essayer.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
0
esus1985 Messages postés 76 Date d'inscription mercredi 1 juin 2005 Statut Membre Dernière intervention 26 février 2009
26 févr. 2009 à 12:04
bonjour

as tu résolu ton problème ?

le sujet m'interesse beaucoup

merci d'avance

Esus
0
Rejoignez-nous