一般情况下,不能正确导出excel的原因有三个1、用户权限不够;2、应用程序池没有配置正确;3、导出后是在服务器还是客户端没有搞清楚。

 

第一步:64位兼容32office操作配置:

 

由于dcomcnfg32位配置,在64位系统下能够完全被支持。所以只需要找到打开32位的dcomcnfg的方式就可以解决找不到的问题:

1.运行:mmc -32;

2.打开文件添加或删除管理单元-选择组件服务-点击添加-确定;

3.可以在DCOM组件中找到Microsoft Excel Application了。 

 

找到后,对Microsoft Excel进行设置1.右击选择属性,点击"标识"标签,选择"交互式用户";

2.点击"安全"标签,"启动和激活权限"上点击"自定义",然后点击对应的"编辑"按钮,在弹出的"安全性"对话框中填加一个"NETWORK SERVICE"用户(注意要选择本计算机名),并给它赋予"本地启动""本地激活"权限;

 

 

3.依然是"安全"标签,"访问权限"上点击"自定义",然后点击"编辑",在弹出的"安全性"对话框中也填加一个"NETWORK SERVICE"用户,然后赋予"本地访问"权限。 

 

 

 

4.依然是"安全"标签,"跟改配置权限"上点击"自定义",然后点击"编辑",在弹出的"安全性"对话框中也填加一个"IUSER"用户,然后赋予"本地访问"权限。 

 

 

第二步:接下来是IIS7.0的配置

用户有了权限,还需要对应用程序池正确配置,不然仍然有可能导出不成功。打开iis,然后打开应用程序池的高级设置,点击进程模式,将网站的AppPool标识设置为NetworkService;打开常规,设置启动32位应用程序为true

 

 

第三步:对文件夹权限进行设置如下图:

 

下面用户的所有权限都是一样的。根据图设置。

 

 

第四步:web.config设置

 

去掉这句配置:<identity impersonate="true" />