Microsoft.Office.Interop.Word 部署异常

问题描述

实现按模版导出,使用Office组件,部署后无法导出

主要引用

Microsoft.Office.Interop.Word 12.0.0.0

实际环境

Windows 2008 + iis7 + word 2007

主要异常

无法操作word
无法创建word
System.Runtime.InteropServices.COMException(0x800A13E9): Word 出现问题
System.Runtime.InteropServices.COMException(0x800A107A): 类型不匹配

问题判断

因在其他机器上部署均正常访问,判断异常原因为权限问题,windows 2008权限要求比较高,不断尝试权限修改方式。

解决方法

方法1.修改web.config

在 web.config 文件中 system.web 标签之后加入

<identity impersonate="true"userName="本机用户名" password="本机密码 "/>

方法2.修改文件夹权限

将系统中生成 word 对应文件夹赋权,iis用户赋全部操作权限(NETWORK SERVICE、IIS_IUSRS)。

方法3.添加目录

C:/Windows/System32/config/systemprofile
C:/Windows/SysWOW64/config/systemprofile

目录下创建名为Desktop目录。

方法4.修改组件服务

  1. 在运行中输入 dcomcnfg.exe
  2. 查看组件服务——》计算机——》我的电脑——》DCOM配置——》Microsoft Office Word 2003-2007文档或word应用程序
  3. 右键单击选择属性
  4. 弹出属性对话框选择标示选项卡选择交互式用户
  5. 选择安全选项卡启动和激活权限选择自定义
  6. 点击编辑按钮添加 USERS用户组 并添加 IUSR_机器名用户
  7. 再选择安全选项卡访问权限选择自定义
  8. 点击编辑按钮添加 USERS 用户组并添加 IUSR_机器名用户

注:上一步中有可能在DCOM配置中找不到 Microsoft Office Word 2003-2007文档或应用程序。由于 windows2008 是64位的原因需要在运行中输入 mmc-32 回车。进入组件服务控制台,选择文件菜单单击添加/删除管理单元,添加组件服务保存控制台1即可。

建议每修改均测试下功能是否能正常使用,若全部方法均修改后还是无法使用,条件允许的情况下建议重装系统。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,167评论 25 709
  • Ubuntu的发音 Ubuntu,源于非洲祖鲁人和科萨人的语言,发作 oo-boon-too 的音。了解发音是有意...
    萤火虫de梦阅读 99,686评论 9 468
  • 1、第八章 Samba服务器2、第八章 NFS服务器3、第十章 Linux下DNS服务器配站点,域名解析概念命令:...
    哈熝少主阅读 3,796评论 0 10
  • 跟他实在朋友聚会上认识的,年轻的他帅气,阳光,一下子吸引了我的目光。映入我眼帘 的是他,嫣然成为一副巨作,让人赏心...
    粑粑糖阅读 1,065评论 0 0
  • 图片发自简书App 风乱吹,夜还是一样的静! 风吹着,夜又怎么静? 我的爱人啊,你快回来吧! 第十章 初露 “敏...
    miss_suge阅读 206评论 0 0