服务器端IIS中部署带Office组件程序

开发的程序需要用到Office组件(Word、Excel等)的时候,往往在开发环境中运行正常,但是部署到服务器上就出问题。

1)首先保证开发环境引用的dll正确

.net 4.0以上版本,添加引用Microsoft.Office.Interop.Word.dll

引用完成后,开发环境已经可以正常运行了。

2)如果直接将程序发布,部署到服务器IIS上的话,用到office相关功能时,系统就会报错

(检索 COM 类工厂中 CLSID 为 {000209FF-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005)

解决这个问题,首先要确保服务器上按照了Office 办公软件(完全安装)。

3)运行“dcomcnfg”,打开 DCOM 配置程序。(或者 开始→设置→控制面版→管理工具→组件服务→计算机→我的电脑→DCOM配置)

找到Office组件,将 “身份标识” 选项卡中的用户设为 “交互式用户” 。

设置选中 “安全性” 选项卡中的 “使用自定义配置权限”,点击 “编辑”。

用户添加 EveryOne ,手动添加

这样权限就配置好了,重新打开网页,相关功能都可以正常使用了。

对 Word 进行编程,实际上就是通过 .Net Framework 去调用 Word 的 COM 组件,所有要在 Web 环境下调用 COM 组件的时候,都需要对其进行相应的配置。
很多朋友都反映在 Windows 环境下调试正常的程序,一拿到 Web 环境中就出错,实际上就是因为缺少了这一步。

另外:可以考虑使用NPOI第三方组件,同样可以操作 .docx文件(doc文件目前好像无法处理),.xls / .xlsx文件;使用NPOI就不需要再在服务器上安装Office软件,再配置权限什么了。后续,整理好了,会再写篇关于NPOI的文章。

时间: 2024-10-11 06:09:34

服务器端IIS中部署带Office组件程序的相关文章

怎样在win7 IIS中部署网站?

IIS作为微软web服务器的平台,可以轻松的部署网站,让网站轻而易举的搭建成功,那么如何在IIS中部署一个网站呢,下面就跟小编一起学习一下吧. 第一步:发布IIS文件 1:发布你所要在IIS上部署的网站,在Microsoft Visual Studio中的web项目点击右键,选择发布. 2:选择文件系统,然后选择保存位置,就可以发布成部署到IIS的文件. 第二步:IIS安装(启用Windows7系统自带IIS) 1:从电脑桌面单击"开始(Start)"—单击"控制面板(Con

IIS中使用Microsoft.Office.Interop.Excel 常见问题

IIS中使用Microsoft.Office.Interop.Excel 异常1: 检索 COM 类工厂中 CLSID 为 {00024500-0000-0000-C000-000000000046} 的组件时失 败,原因是出现以下错误: 80080005. 解决方案: A. 检查IIS发布的网站上的用户组有Administrators用户权限 B. 配置COM组件,用win+r命令打开命令运行窗口,输入Dcomcnfg命令,进入组件服务配置界面,找到“Microsoft Excel Appli

Tomcat中部署Java Web应用程序的方式

Tomcat中部署Java Web应用程序的几种方式: #PetWeb是工程名 1.在TOMCAT_HOME\conf\server.xml文件的HOST节点中加入 <Context docBase="F:/workspaces/PetWeb" reloadable="false" path="/Pet"/> 其中reloadable="false"表示当应用程序中的内容发生更改之后服务器不会自动加载,这个属性在开

Tomcat中部署Java Web应用程序

在Tomcat中部署Java Web应用程序有两种方式:静态部署和动态部署. 一.静态部署 静态部署指的是我们在服务器启动之前部署我们的程序,只有当服务器启动之后,我们的Web应用程序才能访问.以下3中方式都可以部署: 1.将PetWeb目录拷贝到$CATALINA_HOME\webapps下,然后启动服务器就可以了.这种方式比较简单,访问地址如下:http://localhost:8080/PetWeb/ 2.这种方式可以不必将PetWeb目录拷贝到webapps下,直接在F:\部署.方法如下

在IIS中部署ASP.NET 5应用程序遭遇的问题

用VS2015中创建了一个非常简单的ASP.NET5程序: 在Startup.cs中只输入一行代码: using System; using Microsoft.AspNet.Builder; using Microsoft.AspNet.Http; namespace HellowAspNet5 { public class Startup { public void Configure(IApplicationBuilder app) { app.Run(context => context

IIS中部署vue程序,刷新直接404

问题描述:直接访问首页可以刷新,但是在其他页面时候是不能刷新的,原因是路由机制和iis的认知不一致,在centos中配置nginx就ok了,但是在iis中怎么整? 解决方案:一般可以直接解决的方法也就懒的记录了,但是这个真的太耽误人了(也可能之前这么写也是可以执行的,但现在不行了),原因是查到了很多链接指向了这个https://blog.csdn.net/yinjing8435/article/details/71274416,按照操作走了一遍不对啊,一直报500的错误,我就服气了,又查了半天查

在IIS中部署Asp.net Mvc

概述: 最近在做一个MVC 3的项目,在部署服务器时破费了一番功夫,特将过程整理下来,希望可以帮到大家! 本文主要介绍在IIS5.1.IIS6.0.IIS7.5中安装配置MVC 3的具体办法! 正文: IIS5.1 1. 安装Microsoft .net FrameWork 4.0安装包; 2. 安装ASP.NET MVC 3; 3. 在IIS中发布网站,创建虚拟目录,ASP.NET版本选择4.0.30196: 4. 添加MVC的解析: 右击IIS中的虚拟目录选择“属性”-“虚拟目录”-“配置”

在 IIS 中配置 ASP.NET 应用程序

参考文档: 1.win7旗舰版中IIS配置:http://www.cnblogs.com/koeltp/archive/2012/02/08/2343394.html 2.处理[由于web服务器上的“ISAPI和CGI限制”列表设置,无法提供您请求的页面]“:http://blog.csdn.net/abandonship/article/details/5834283 3.在 IIS 7.0 中配置 ASP.NET 应用程序:http://msdn.microsoft.com/zh-cn/li

在CentOS中部署C#命令行程序开发环境

为了赶时髦,体验下.net core,特在Linux下部署个开发环境 安装VSCode工具(Visual Studio Code) #添加源 sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc sudo sh -c 'echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\ne