• 错误:Microsoft Excel cannot access the file (用F5启动没问题,一部署到IIS就报错)的解决方法


    我的环境:WIN7 64,  IIS7,   VS2010

    部署到IIS报错如下:

    Microsoft Excel cannot access the file 'C:\APPLICATIONDATA\Temp\SPO\BaiKun\2013-01-16_16-57-41-461\Purchase Order Details\Purchase Order Details.xls'. There are several possible reasons:

    • The file name or path does not exist.
    • The file is being used by another program.
    • The workbook you are trying to save has the same name as a currently open workbook.
    Add
    Microsoft Excel
    at Microsoft.Office.Interop.Excel.Workbooks.Add(Object Template)
    at SPR.Common.ExcellDataSet..ctor(String FileName, String sheetName, String rowStart, String colStar, String colEnd) in D:\Project\MC_SPR_UPDATE\MC_SPR_UPDATE\Mcspr_Existing\Common\ExcellDataSet.cs:line 121
    at SPR.Common.ReadExcel.ReadExcel_PO(String FilePath, String SheetName, String p_SPRType) in D:\Project\MC_SPR_UPDATE\MC_SPR_UPDATE\Mcspr_Existing\Common\ReadExcel.cs:line 139


    **********************************************
    ErrorTime: 2013-01-16 16:57:41
    ErrorMsg:
    读取EXCEL信息出错,读取文件:C:\APPLICATIONDATA\Temp\SPO\BaiKun\2013-01-16_16-57-41-461\Purchase Order Details\Purchase Order Details.xls

    解决办法:
    1.
     1).通过webconfig中增加模拟,加入管理员权限,
     <identity impersonate="true" userName="系统管理员" password="系统管理员密码"/>
     2).这样就能够启动Application进程,操作EXCEL了,能够新建EXCEL,导出EXCEL,但是还是不能打开服务器端的EXCEL文件

    2.  
         在组件服务,DOCM设置 Microsoft Excel Application的属性,
         因为是在64位系统上面操作,组件服务中DOCOM中默认是没有的,因为Microsoft Excel Application是32的DCOM配置,所以通过如下方式解决(参考第三步)

    3.
       1).开始--〉运行--〉cmd
       2)命令提示符下面,输入mmc -32,打开32的控制台
       3).文件菜单中,添加删除管理单元--〉组件服务
       4).在"DCOM配置"中找到"Microsoft Excel 应用程序",在它上面点击右键,然后点击"属性",弹出"Microsoft Excel 应用程序属性"对话框
     5).点击"标识"标签,选择"交互式用户"
     6).点击"安全"标签,在"启动和激活权限"上点击"自定义",然后点击对应的"编辑"按钮,在弹出的"安全性"对话框中填加一个"NETWORK SERVICE"用户(注意要选择本计算机名),并给它赋予"本地启动"和"本地激活"权限
       7).依然是"安全"标签,在"访问权限"上点击"自定义",然后点击"编辑",在弹出的"安全性"对话框中也填加一个"NETWORK SERVICE"用户,然后赋予"本地访问"权限.

    4.重新启动IIS,测试通过



    如果是iis7+win2008 R2 则在组件服务中的 EXCEL Application 修改以上属性即可。
  • 相关阅读:
    springboot运行在eclipse报异常的问题
    Python random模块
    MySQL大小写敏感
    正则表达式详解
    Linux grep命令详解
    Linux printf命令详解
    Linux awk命令详解
    MySQL表介绍
    Linux sed命令详解
    Linux grep命令详解
  • 原文地址:https://www.cnblogs.com/dadongzuo/p/2863093.html
Copyright © 2020-2023  润新知