日期:2014-05-20  浏览次数:21238 次

导出EXCEL时出错,奇怪的是我在VS2005调试的时候 是好的,导出代码运行就出错了-在线=
错误信息如下
“/jiudao”应用程序中的服务器错误。
--------------------------------------------

检索   COM   类工厂中   CLSID   为   {00024500-0000-0000-C000-000000000046}   的组件时失败,原因是出现以下错误:   80070005。  
说明:   执行当前   Web   请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。  

异常详细信息:   System.UnauthorizedAccessException:   检索   COM   类工厂中   CLSID   为   {00024500-0000-0000-C000-000000000046}   的组件时失败,原因是出现以下错误:   80070005。  

ASP.NET   未被授权访问所请求的资源。请考虑授予   ASP.NET   请求标识访问此资源的权限。ASP.NET   有一个在应用程序没有模拟时使用的基进程标识(通常,在   IIS   5   上为   {MACHINE}\ASPNET,在   IIS   6   上为网络服务)。如果应用程序正在通过   <identity   impersonate= "true "/>   模拟,则标识将为匿名用户(通常为   IUSR_MACHINENAME)或经过身份验证的请求用户。  

要将   ASP.NET   访问权限授予某个文件,请在资源管理器中右击该文件,选择“属性”,然后选择“安全”选项卡。单击“添加”添加适当的用户或组。突出显示   ASP.NET   帐户,选中所需访问权限对应的框。

源错误:  

执行当前   Web   请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。    

堆栈跟踪:  


[UnauthorizedAccessException:   检索   COM   类工厂中   CLSID   为   {00024500-0000-0000-C000-000000000046}   的组件时失败,原因是出现以下错误:   80070005。]
      excelprint.doPrint()   +93
      allPrint.servstatDirect(String   send_id)   +1262
      sendservdirectDeta.LinkButton1_Click(Object   sender,   EventArgs   e)   +11
      System.Web.UI.WebControls.LinkButton.OnClick(EventArgs   e)   +105
      System.Web.UI.WebControls.LinkButton.RaisePostBackEvent(String   eventArgument)   +107
      System.Web.UI.WebControls.LinkButton.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String   eventArgument)   +7
      System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler   sourceControl,   String   eventArgument)   +11
      System.Web.UI.Page.RaisePostBackEvent(NameValueCollection   postData)   +174
      System.Web.UI.Page.ProcessRequestMain(Boolean   includeStagesBeforeAsyncPoint,   Boolean   includeStagesAfterAsyncPoint)   +5102

 


------解决方案--------------------
xp没有network service帐户 就给ASPNET帐户授权