Microsoft Office Excel 不能访问文件

本文详细描述了在VS2010开发环境下,实现Excel导出功能后,在WindowsServer2008X64上部署时遇到的无法打开导出文件的问题及解决方案。问题表现为.NET调用Excel时无法访问已存在的文件,错误提示包括文件路径不存在、被其他程序使用等。通过在网络上的搜索,发现了解决方案,即在特定目录下创建Desktop文件夹,以解决Office自动化问题。

在VS2010 中写了一个EXCEL的导出功能的东西,但在Windows Server 2008 X64上发布后遇到个问题,EXCEL文件确实存在,但.net调用的EXCEL却不能打开这个EXCEL文件,代码执行到打开文件的时候报错,抛出异常如下:

Microsoft Office Excel 不能访问文件“XXXXX.xls”。 可能的原因有:

? 文件名称或路径不存在。 
? 文件正被其他程序使用。 
? 您正要保存的工作簿与当前打开的工作簿同名

 此代码在2003的服务器上运行的没有问题,在给工作目录加上了相应的权限后发现问题依旧。无奈,上网去转了一圈,找到了一个解决方法,以下是其中关键的部分:

This solution is ...

?Windows 2008 Server x64 
  Please make this folder.

  C:/Windows/SysWOW64/config/systemprofile/Desktop

?Windows 2008 Server x86

  Please make this folder.

  C:/Windows/System32/config/systemprofile/Desktop

  ...instead of dcomcnfg.exe.

This operation took away office automation problems in my system.

A Desktop folder seems to be necessary in the systemprofile folder to open file by Excel.

It disappears from Windows2008, Windows2003 had the folder, 
and I think it cause this error.

即在C:/Windows/System32/config/systemprofile和C:/Windows/SysWOW64/config/systemprofile目录下创建名为Desktop目录即可解决问题。

转载于:https://www.cnblogs.com/-andyguo-/p/5026151.html

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值