2017-08-04 5 views
0

J'essaie de modifier un document Word par programmation. Cependant, quand je débogage et d'abord essayer de créer le Word.Application, je reçoisEchec de l'exécution du serveur 80080005 NetOffice

Retrieving the COM class factory for component with CLSID {000209FF-0000-0000-C000-000000000046} failed due to the following error: 80080005 Server execution failed (Exception from HRESULT: 0x80080005 (CO_E_SERVER_EXEC_FAILURE)).

Je vois que Word.Interop est plus supporté, donc je commencé à utiliser NetOffice, mais rien n'a changé, alors peut-être je Je ne modifie pas la fonctionnalité sous-jacente.

J'ai essayé plusieurs configurations DCOM et j'utilise mon instance Visual Studio en tant qu'administrateur, mais rien ne change. Actuellement Niveau d'authentification est Aucun, je spécifie "Cet utilisateur" et j'utilise un compte avec toutes les autorisations de sécurité. J'ai également essayé l'utilisateur interactif et l'utilisateur de lancement précédemment. Je n'ai jamais eu de problème avec le débogueur avant, juste une fois qu'il a été déployé sur le serveur, donc c'est confus pour moi. Je cours Windows 8.1 (64-bit) et Office 2013 (32-bit)

J'apprécierais des idées. Et NetOffice importe-t-il du tout pour ce problème? Je vous remercie.

+0

Je pense que vous pouvez obtenir plus d'informations si vous regardez dans l'Observateur d'événements – Malick

+0

Dans les journaux système de Windows, je vois l'ID d'événement 10010, le serveur n'a pas enregistré avec DCOM dans le délai requis. Cela vous donne-t-il des idées? Je googling mais jusqu'ici rien n'a eu d'effet. Je ne suis pas un maître de visionneuse d'événements. Y a-t-il quelque part ailleurs que je devrais regarder? – erosebe

+0

cela ressemble à un message d'erreur général. Si elle n'apparaît qu'en mode débogage, vous pouvez essayer de placer votre pause de débogage après le premier appel à Word.Application et voir si cela fonctionne, peut-être que le mode de débogage est trop lent en ce qui concerne le temps d'attente maximal du client. Je n'ai pas d'autres idées désolé. – Malick

Répondre

1

Voir You may receive an "Error code 80080005 -- server execution failed." error message when you start many COM+ applications. Quoi qu'il en soit, Microsoft ne recommande pas actuellement et ne prend pas en charge l'automatisation des applications Microsoft Office à partir d'une application ou d'un composant client non assisté et non interactif (y compris ASP, ASP.NET, DCOM et NT Services), car Microsoft Office peut présenter un comportement instable et/ou un blocage lorsque Office est exécuté dans cet environnement. Si vous développez une solution qui s'exécute dans un contexte côté serveur, vous devez essayer d'utiliser des composants qui ont été sécurisés pour une exécution sans surveillance. Ou, vous devriez essayer de trouver des alternatives qui permettent au moins une partie du code de s'exécuter côté client. Si vous utilisez une application Office à partir d'une solution côté serveur, l'application ne disposera pas de nombreuses fonctionnalités nécessaires à son exécution. De plus, vous prendrez des risques avec la stabilité de votre solution globale. En savoir plus à ce sujet dans l'article Considerations for server-side Automation of Office.

Envisagez d'utiliser Open XML SDK si vous traitez uniquement des documents XML ouverts, voir Welcome to the Open XML SDK 2.5 for Office pour plus d'informations. Ou essayez simplement d'utiliser des composants de composants tiers conçus pour l'exécution côté serveur.

P.S. NetOffice ne vous aidera pas à éviter de tels problèmes car il est basé sur la technologie COM Automation.