asp.net  Word 操作

 前言:这两天研究了一下office编程,主要是要实现对Word文件的操作。C#、VB的Win Form代码都写了。完全OK。等到用在asp.net上时出现了问题,出现无法创建activeX 对象和文件无法访问的错误。后来终于找到了解决办法,虽然不知道什么原理,不过代码总算能执行了。  解决办法如下:

(转)操作WORD配置说明

引入:Word的对象库文件“MSWORD.OLB”(word 2000为MSWORD9.OLB)(这是针对老版本的情况,在用vs.net2005的时候,直接在引用对话框中,在com组件里找到对word的库文件的引用就可以了,文件名好像是一样的.)

1.运行Dcomcnfg.exe
2.组件服务――计算机――我的电脑――DCOM配置――找到microsoft word 文档
3.点击属性
4.选择“安全性”
5.选定“使用自定义访问权限”和“使用自定义启动权限”
6.分别编辑权限,添加Everyone(ASPNET,VS Developers,Debugger User
)(注:其实准确的应该是"ISUR_机器名"这个用户才对)
7.选择“身份标识”,在选定“交互式用户” 即可
8.在Web.config里加 <identity impersonate="true"/> (这句插在<system.web>段里就可以了)

  我做了上面的事情还是不能运行,后来在IIS里做了下面的设置: 在IIS下右键点本地计算机/应用程序池,选择属性,点击标识,将预定义帐户改成本地系统。就可以运行了。

PS:Dim oWord as new Word.Application和 creatobject("Word.Application")没什么太大区别都可以运行。

环境:Win2003、VS2003、C#、VB

          另转asp.net的C#代码:

 
ASP.NET操作Word文档一直是一个大家比较关心的话题,其实在ASP.NET里操作Word文档一点也不难,大家只需按本文提示,就能轻轻松松操作Word文档!
一、准备工作
   
首先请确认服务端已经安装了Office Word(以下将以Office XP为例),操作系统为win2000XP,并且已配置好.NET的运行环境及安装VS.NET C#开发环境后,我们就可以打开VS.NET,并新建一个Visual C#项目>ASP.NET Web应用程序,位置为“http://localhost/word”。
二、引用Word对象库文件
   
要操作Word,我们就需要Word的对象库文件“MSWORD.OLB(word 2000MSWORD9.OLB),通常安装了Office Word后,你就可以在office安装目录的Office10文件夹下面找到这个文件,当我们将这个文件引入到项目后,我们就可以在源码中使用各种操作函数来操作Word。具体做法是打开菜单栏中的项目>添加引用>浏览,在打开的“选择组件”对话框中找到MSWORD.OLB后按确定即可引入此对象库文件,vs.net将会自动将库文件转化为DLL组件,这样我们只要在源码中创建该组件对象即可达到操作Word的目的!
三、Webform1.aspx.cs代码(vs.net2003默认新建页文件名都为webform1,在vs.net2005里已经换成了default1.aspx.cs了)
   
完成添加引用后,MSWORD.OLB已经转化为相关DLL文件并放置于项目的BIN目录下了,这样我们只需在源码中创建该对象,并使用word库文件内置的操作函数即可轻松实现操作WordWebform1.aspx.cs源码如下:
using  System;
using
 System.Collections;
using
 System.ComponentModel;
using
 System.Data;
using
 System.Drawing;
using
 System.Web;
using
 System.Web.SessionState;
using
 System.Web.UI;
using
 System.Web.UI.WebControls;
using
 System.Web.UI.HtmlControls; 
///这些引用都可以不要了.在vs.net 2005里的web.config已经添加了上述引用.
namespace
 word
{
/// <summary>
/// Webform1 的摘要说明。
/// </summary>

public class Webform1 : System.Web.UI.Page
{
protected
 System.Web.UI.WebControls.TextBox SaveAs;
protected
 System.Web.UI.WebControls.Button Button;
protected
 System.Web.UI.WebControls.Label Label2;
protected
 System.Web.UI.WebControls.Label Label1;
protected
 System.Web.UI.WebControls.Label result;
protected
 System.Web.UI.WebControls.TextBox wordText;
Web form Designer generated code
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
ASP.NET生成WORD文档服务器部署注意事项 配置详情请下载附件图解 1、Asp.net 2.0在配置Microsoft Excel、Microsoft Word应用程序权限时 error: 80070005 和8000401a 的解决总 2007-11-01 11:30 检索 COM 类工厂中 CLSID 为 {000209FF-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005。 控制面板-》管理工具-》组件服务-》计算机-》我的电脑-》DCom配置-》找到Microsoft Word文档 之后 单击属性打开此应用程序的属性对话框。 单击"安全"选项卡,分别在"启动和激活权限"和"访问权限"组中选中"自定义",然后 自定义->编辑->添加ASP.NET账户和IUSER_计算机名 * 这些帐户仅在计算机上安装有 IIS 的情况下才存在。 在标识选项卡选择下列用户,输入用户名密码 13. 确保允许每个用户访问,然后单击确定。 14. 单击确定关闭 DCOMCNFG。 检索 COM 类工厂中 CLSID 为 {000209FF-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 8000401a 。 运行dcomcnfg打开组件服务, 依次展开"组件服务"->"计算机"->"我的电脑"->"DCOM配置" 找到"Microsoft Excel应用程序"或"Microsoft Word应用程序", 右键打开属性对话框,点击"标识"选项卡, 点"下列用户",把管理员的用户密码正确填写进去... 点击"安全"选项卡, 依次把"启动和激活权限","访问权限","配置权限",都选择为自定义, 然后依次点击它们的编辑,把everyone添加进去,并加入所有的权限... OK,解决此问题! 2、请设置web.config中的帐号和密码,否则会提示检索 COM 类工厂中 CLSID 为 {000209FF-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005。 例如

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值