Erreur 'Licence expirée' lors de la génération dynamique de documents Excel dans ASP.NET

StackOverflow https://stackoverflow.com/questions/254207

  •  05-07-2019
  •  | 
  •  

Question

Quelqu'un au courant des erreurs ci-dessous? Lorsque j'exécute mon application Web pour générer un document Excel dynamique à partir de mon ordinateur local, cela fonctionne correctement, mais lorsque le même élément de code est appelé sur le serveur, l'erreur ci-dessous apparaît. Il semble que ce soit un problème d'autorisations car cela fonctionne sur ma machine mais pas sur le serveur, mais je ne sais pas par où commencer pour identifier le problème. Toute orientation / aide est grandement appréciée!

Server Error in '/' Application.
--------------------------------------------------------------------------------

This command is unavailable because the license to use this application has expired. 
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 

Exception Details: System.Runtime.InteropServices.COMException: This command is unavailable because the license to use this application has expired.

Source Error: 

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.  

Stack Trace: 


[COMException (0x800a03ec): This command is unavailable because the license to use this application has expired.]
   Microsoft.Office.Interop.Excel.Workbooks.Add(Object Template) +0
   PaymentsReport.Page_Load(Object sender, EventArgs e) +70
   System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) +15
   System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +34
   System.Web.UI.Control.OnLoad(EventArgs e) +99
   System.Web.UI.Control.LoadRecursive() +47
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1061

Office / Excel est installé sur le serveur et je peux ouvrir / enregistrer des documents Excel sur le serveur. Pourrait-il s'agir de la version d'Excel sur le serveur par rapport à ma machine locale? Si oui, comment puis-je avoir la dernière version sur le serveur?

Était-ce utile?

La solution

L'utilisation d'Office Interop nécessite que les composants Office que vous utilisez soient réellement installés sur le serveur.

Autres conseils

Outre l'installation, vous devez vous assurer que l'application est activée sur le serveur:

http://support.microsoft.com/kb/294973

A des détails sur la façon de procéder.

Je vais prendre un WAG et dire que vous ne pouvez tout simplement pas gifler une ancienne copie d'Office sur un serveur et permettre à plusieurs utilisateurs d'y accéder via votre site Web. Vous devez examiner les restrictions de licence pour utiliser MS Office dans un environnement de serveur.

Avez-vous une copie sous licence et activée d’Excel sur le serveur? Cela fonctionne probablement sur votre ordinateur local car Office / Excel est installé localement.

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