Question

Je suis en train de construire actuellement sur TeamCity, qui utilise dll Microsoft.Office.Interop. Cela va construire et cependant en essayant de construire fonctionner correctement au niveau local que j'ai installé Office, sur TeamCity il échoue car il n'a pas de référence.

Je ne peux pas installer le distribuables PIA que je reçois un message d'erreur indiquant que le Office 2003 doit être installé. Je ne veux pas installer Office sur le serveur.

Y at-il moyen de contourner cela?

Était-ce utile?

La solution

Si tout le serveur TeamCity fait est une construction, puis ajoutez la Microsoft.Office.Interop DLL dans un dossier Références pour votre projet, puis configurer votre projet pour regarder dans cette références dossier.

Cependant, si le serveur TeamCity est également en cours d'exécution des tests qui utilisent Office Interop, vous aurez des problèmes à moins que vous avez Bureau installé sur la machine qui exécute les tests.

Autres conseils

Pas vraiment - la dll Interop est seulement une couche de thunk entre votre code .NET et le code Office réel (COM). Si vous avez la dll Interop sans dll Bureau sous-jacente, puis tous les appels dans l'Interop échouera car l'Interop voudra appeler des objets COM cela rend interopérable.

Les objets COM sont des objets Office, vous aurez donc besoin d'une partie du bureau installé.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top