调用office Word Com 组件,提示权限不足处理
最近一直在处理一个项目,项目主要功能与Office-Word 有关,主要涉及到文本内容编辑与样式设置等相关内容。因项目依赖office 相关dll,需要兼容多种Office 版本(office 2007/2010/2016)(主要在Windows7/10下使用)。项目使用Winform,采用webBrowser嵌入weboffice 形式,调用服务进行功能实现。
在使用初期,发现服务无法正常使用,日志记录:word 对象无法打开文件,可能文件损坏,或权限不足。
查阅资料,定位为office的 Word com组件权限不够,需要处理调用的组件权限。
先在安装office 32位的环境上测试:
1、打开 Win+R ,输入 comexp.msc -32 ,然后 回车:

2、就可以看到 “组件服务” 窗口;依次选择打开 : 控制台根节点==》组件服务==》计算机==》我的电脑==》DCOM 配置==》找到Microsoft Office Word 97 - 2003 文档

3、==》选择 Microsoft Office Word 97 - 2003 文档 ,右击选择 属性。按下面操作步骤进行配置。
在安全选项卡中,依次编辑 启动和激活权限、访问权限、配置权限;==》选择自定义, 点击 编辑==.》组或用户名 ,添加 everone 权限((授予)勾选所有system 权限)==》确定。


4、==》选择 标识 ,更改 运行账户为 交互式用户==》 应用/确定 。配置完成。
附:
写到这里,Com 组件权限配置基本结束了。
这里有几个问题:
1、如果安装的是Office 64 位出现这种情况怎么办?
2、如果我不使用Windows 命令能否操作?
对于问题1,暂时没有很好的解决方案;目前是计划后期更改程序底层Com 组件的功能依赖,使程序在Windows 10下不依赖Office-Word 的Com组件;因为测试发现,在Windows10 下配置com 组件后,功能很不稳定。在安装office 32 位的Windows 10系统下,测试发现Com 组件的属性标识改为启动用户能够正常使用一段时间,过段时间,属性标识再改成 交互式用户就又正常了。(64位Office 下 命令打开Com 组件: (Win+R )+Dcomcnfg==》 回车 查看方式与 32 位一致。)如果有遇到类似问题解决的,欢迎评论。
问题2: 打开Com 组件的方式很多: 可以直接在控制面板进行打开:控制面板==》管理工具==》组件服务==》组件服务列表中:选择组件服务==》计算机==》我的电脑==》DCOM配置。(以安装32 位Office 的环境为例,我通过这种控制面板方式打开的Word com组件中:
Microsoft Word 97 - 2003 文档的属性中 常规:本地路径为空,身份验证级别 :无;
位置选项卡中 : 在此计算机上运行应用程序 置灰,无法勾选。
非管理员用户:administrator 用户下新建的其他用户,权限隶属于 administrator。
)
(Win+R )+Dcomcnfg==》 回车 --打开64位Office 的Com 组件。
(Win+R )+comexp.msc -32==》 回车 --打开32位Office 的Com 组件。
上面为处理过程,如有描述不合理之处,请大家多多指教。
如果您觉得本文对您有帮助,欢迎点击“推荐”按钮,您的“推荐”将是我最大的写作动力!欢迎转载,转载请注明出处。
调用office Word Com 组件,提示权限不足处理的更多相关文章
- Win2008服务启动不能调用Office Word的解决方法
本文为大家分享一下如何解决Windows Server 2008 服务启动不能调用Office Word的问题,分享这个教程的原因是,今天在Windows server2008上部署一个应用时发现了一 ...
- SVG格式转Visio的vsd格式方法,附带C#动态调用Office的Com组件方法
SVG格式可以直接显示在网页上面,用来实现诸如统计Chart图表.流程图.组织结构图的功能.为了使图像可以下载下来以便于修改,可以将SVG转为Visio的vsd格式.方法很简单,主要是使用Visio组 ...
- ASP.NET调用Office Com组件权限设置
ASP.NET在调用Office Com组件时,经常会出现权限限制的问题,而出现如下错误: 现通过以下几步设置,可解决上述问题:(1)64位系统中,请在IIS应用程序池集成模式中应启用调用32位应用程 ...
- .NET通过调用Office组件导出Word文档
.NET通过调用Office组件导出Word文档 最近做项目需要实现一个客户端下载word表格的功能,该功能是用户点击"下载表格",服务端将该用户的数据查询出来并生成数据到Word ...
- 快速解决PHP调用Word组件DCOM权限的问题
1. 首先必须要在电脑上安装 Office 2. windows+r : 输入 dcomcnfg.exe 打开组件服务,然后双击 组件服务 ==> 双击 计算机 ==> 双击 我的电脑 = ...
- .Net调用Office Com组件的原理及问题检索com类工厂组件检索 COM 类工厂中 CLSID 为 {XXX} 的组件失败
我是在本地32位操作系统+vs2010+office2007做创建并下载Excel,ppt文件的操作没有问题,发布到64位系统的服务器上报错,最开始报错:: 1:Retrieving the COM ...
- Office导入导出组件权限配置汇总
NET导出Excel遇到的80070005错误的解决方法: 检索 COM 类工厂中 CLSID 为 {00024500-0000-0000-C000-000000000046}的组件时失败,原因是出现 ...
- Asp.Net调用Office组件操作时的DCOM配置 (转)
Asp.Net调用Office组件操作时的DCOM配置 http://blog.csdn.net/gz775/article/details/6447758 在项目中将数据导出为Excel格式时出现“ ...
- [转]Office导入导出组件权限配置汇总
原文地址:Office导入导出组件权限配置汇总 具体配置方法如下: 1:在服务器上安装office的Excel软件. 2:在"开始"->"运行"中输入 ...
随机推荐
- k8s记录-安装ansible
##1.安装1) python版本需要2.6以上,不过通过centos7都会默认安装上python2.7.5,查看方法:python -V2) 添加yum 源a.vim /etc/yum.repos. ...
- 退出Vim编辑器
:q ,退出(:quit的缩写) :q!,退出且不保存(:quit!的缩写) :wq,保存并退出 :wq!,保存并退出即使文件没有写入权限(强制保存退出) :x,保存并退出(类似:wq,但是只有在有更 ...
- webpack四个基础概念
本文参考自:https://www.cnblogs.com/xiaohuochai/p/7002344.html webpack 核心概念:入口(entry).输出(output).加载器(loade ...
- qsort与sort
快排是我们平常敲代码和比赛的时候 经常使用到的方法 qsort是函数库中自带的函数 这是一个标准的快排函数 而sort比qsort更是好用 sort对于不同大小的数组 会使用不 ...
- 在使用Hanlp配置自定义词典时遇到的问题
要使用hanlp加载自定义词典可以通过修改配置文件hanlp.properties来实现.要注意的点是: 1. root根路径的配置: hanlp.properties中配置如下: #本配置文件中的路 ...
- 超级简单POI导出Excel实战
在一般的生产管理系统都会将数据通过页面导出到Excel,这里以Java为例通过第三方开源poi进行对Excel的操作,具体操作如下 1.引入jar包依赖 这里我以maven的方式引入jar包,具体依赖 ...
- Django-08-admin
1. 介绍 admin是django强大功能之一,它能共从数据库中读取数据,呈现在页面中,进行管理.默认情况下,它的功能已经非常强大,如果你不需要复杂的功能,它已经够用,但是有时候,一些特殊的功能还需 ...
- C语言提高内容目录
(1)基础 数据类型和变量 内存四区(栈 堆 全局 代码区) (2)指针和字符串操作 指针强化 字符串的基本操作 字符串一级指针内存模型图 字符串做为函数参数 (3)二级指针多级指针 二级指针的输入输 ...
- idea中的调试按键(f5,f6,f7,f8,f9)
f5: 如果断点处存在方法,f5 则强制进入方法内部,然后一步一步执行方法体, 如果再遇到方法,则继续进入方法体,如此循环,直到执行到断点开始处: f6: 从断点处一步步执行以后的代码,会跳出断点所在 ...
- c#中关于Convert.ToDouble的一个注意事项
今天在写代码的时候被一个小细节坑了,以前没注意,现在才发现,代码如下: private void btnChangeCartonID_Click(object sender, EventArgs e) ...