在VS7debugging模式下在Web应用程序中添加一个Excel加载项function区的客户端exception错误

我已经发布了一个Web服务(内置VS2010,.NET 4.0)在我的桌面上成功地从我的笔记本电脑IIS7.5赢得7。

C#解决scheme由…组成

MyApp.Host , MyApp.Excel, MyApp.WCF, MyApp.Web, MyAppSetup 

现在,我需要在客户端(在我的笔记本电脑上)以debugging模式运行VS2010中的C#代码 。 我已经安装了用于办公室运行时的VS2010工具。 当我的应用程序打开时,它将在Excel 2010中添加一个选项卡(一个加载项)。我已经复制

  MyApp.Excel.dll MyApp.Excel.dll.config MyApp.Excel.dll.manifest MyApp.Excel.vsto MyApp.Excel.xlsx Microsoft.Office.Tools.Common.dll Microsoft.Office.Tools.Common.v4.0.Utilities.dll Microsoft.Office.Tools.dll Microsoft.Office.Tools.Excel.dll Microsoft.Office.Tools.Excel.v4.0.Utilities.dll Microsoft.Office.Tools.v4.0.Framework.dll Microsoft.VisualStudio.Tools.Applications.Runtime.dll Microsoft.VisualStudio.Tools.Applications.Runtime.v9.0.dll Microsoft.VisualStudio.Tools.Applications.ServerDocument.v10.0.dll 

到我的C#解决scheme中的文件夹( 在客户端,在我的笔记本电脑上

 MyApp.Host\bin\debug\ 

因为这些文件已发布到我的桌面。

但是,我仍然有错误

  ************* Exception Text ************** System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information. at System.Reflection.RuntimeModule.GetTypes(RuntimeModule module) at System.Reflection.RuntimeModule.GetTypes() at System.Reflection.Assembly.GetTypes() at Microsoft.Office.Tools.Excel.WorkbookImpl.CreateRibbonObjects() at Microsoft.Office.Tools.Excel.WorkbookImpl.WorkbookExtensionImpl.Microsoft.Office Tools.Excel.IWorkbookExtension.CreateRibbonObjects() at Microsoft.Office.Tools.Excel.WorkbookImpl.GetRibbonObjects() 

我在这里错过一些工具或库吗?

我很遗憾地告诉你,但是这种情况不被支持…

Microsoft目前不推荐并不支持从任何无人参与的非交互式客户端应用程序或组件(包括ASP,ASP.NET,DCOM和NT服务)自动化Microsoft Office应用程序,因为Office可能会出现不稳定的行为和/或在此环境中运行Office时发生死锁。

如果您正在构build一个在服务器端上下文中运行的解决scheme,则应该尝试使用已经安全的组件进行无人值守的执行。 或者,您应该尝试find允许至less部分代码运行在客户端的备选scheme。 如果从服务器端解决scheme使用Office应用程序,那么应用程序将缺less许多必要的function来成功运行。 此外,您将面临整体解决scheme稳定性的风险。

请阅读“服务器端Office自动化的注意事项”文章中的更多内容。