Windows Server 2008 R2上跑基於Microsoft Excel Object Library 的報表程序,報錯不能訪問文件

企業應用中後臺常常會跑一些生成、發送Excel報表的程序。app

.NET應用程序生成Excel文件,基本上有2種方法:this

1.Microsoft Excel XX Object Library (Interop.Excel.DLL文件)spa

2.NPOI開發

雖說NPOI很快,可是Excel XX Object Library是很是方便的,代碼能夠參考Excel中錄製的宏代碼。it

前段時間就遇到一個問題:.NET開發的基於Microsoft Excel XX Object Library 報表程序在Windows Server 2008 R2上運行。報錯:io

Microsoft Office Excel 不能訪問文件「XX.xls」。 可能的緣由有:模板

? 文件名稱或路徑不存在。
? 文件正被其餘程序使用。
? 您正要保存的工做簿與當前打開的工做簿同名
後臺

XX.xls就是模板文件。真是百思不得其解。file

在網上查找了一圈找到了解辦法:程序

?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目錄便可解決問題

相關文章
相關標籤/搜索