wps插件开发中com组件权限
需要对wps写一个小的插件,也就是几行代码的事情,但却碰到了一个坑
wps中的com组件的调用和MSoffice非常的相似,几乎只需要把包的头修改一下就可以用了。
比如开发wps文档的插件,需要引用
- Kingsoft Add-In Designer
- Kingsoft Wps 2.0 Object Library
- kingsoft Office 2.0(1.0) Object Library (选2.0的的时候会勾选1.0)
然后继承一个IDTExtensibility2接口并设置一个[ComVisible(true)]就可以开始开发了,但是在接下来的事情里面就是一个坑了。
在OnConnection事件里面添加一条弹出一个框
MessageBox.Show("aaa");
设置启动类库设置-》生成中设置com互操作组成,然后编译.
编译的时候由于设置为Com互操作需要使用管理员权限,如果不使用管理员权限会提示
错误 7 无法注册程序集“E:\test\WordItemDev\WpsItemInsert\bin\Debug\WpsItemInsert.dll”- 拒绝访问。请确保您正在以管理员身份运行应用程序。对注册表项“HKEY_CLASSES_ROOT\WpsItemInsert.Init”的访问被拒绝。 WpsItemInsert
于是使用管理员启动visual Studio,但是编译的时候却找不到wps上面的三个组件。
未能添加对"kingsoft WPS 2.0 Object Library"的引用
大概就是管理员下com组件没有注册,所以手工来给几个lib注册
C:\WINDOWS\system32>regsvr32 D:\Program Files\WPS Office\9.1.0.4468\office6\ksaddndr.dll
注册下面dll
C:\WINDOWS\system32>regsvr32 D:\wps\9.1.0.4468\office6\ksoapiv8.dll
提示模块xxx已经加载,但找不到入口点DllRegisterServerXXXXXXX
也就是说我在普通模式下编译无法注册com组件,而在管理员模式无法调用wps的com组件。
在wps论坛上问了这个问题,给的回答是
使用管理员权限运行vs,但是引wps的com组件出现了问题,在普通运行的时候是没有问题的”这个貌似有点吻合。楼主用登录管理员安装WPS2013试试?
ps:一般的软件在安装的时候都会提示该软件是仅适用我,还是所有人。如果是仅适用于我的话,就会将注册表信息保存在CurrentUser下,这样只有该用户登录才能看到该软件;如果是选择所有人的话,就会写到LocalMachine节点下
确实是wps默认只给当前用户注册了com组件,所以在管理员权限下面会找不到wps的com组件
解决方法
是去administrator用户下重新安装一下wps就好了。在具有管理员权限的其他用户下使用管理员权限也不行,一定要到adminsitartor用户下才行。
如果不能进管理员权限,在当前用户下使用管理员权限运行cmd执行
net user administrator /active:yes
注销后就能够看到adminsitrator用户了。
wps插件开发中com组件权限的更多相关文章
- Android中Intent组件详解
Intent是不同组件之间相互通讯的纽带,封装了不同组件之间通讯的条件.Intent本身是定义为一个类别(Class),一个Intent对象表达一个目的(Goal)或期望(Expectation),叙 ...
- ASP.NET调用Office Com组件权限设置
ASP.NET在调用Office Com组件时,经常会出现权限限制的问题,而出现如下错误: 现通过以下几步设置,可解决上述问题:(1)64位系统中,请在IIS应用程序池集成模式中应启用调用32位应用程 ...
- Android 短信模块分析(二) MMS中四大组件核心功能详解
接下来的分析先从MMS中四大组件(Activity ,BroadCastReceiver,Service,ContentProvider),也是MMS中最核心的部分入手: 一. Activity 1 ...
- [转]Office导入导出组件权限配置汇总
原文地址:Office导入导出组件权限配置汇总 具体配置方法如下: 1:在服务器上安装office的Excel软件. 2:在"开始"->"运行"中输入 ...
- drf框架中认证与权限工作原理及设置
0909自我总结 drf框架中认证与权限工作原理及设置 一.概述 1.认证 工作原理 返回None => 游客 返回user,auth => 登录用户 抛出异常 => 非法用户 前台 ...
- drf框架 - 三大认证组件 | 认证组件 | 权限组件 | 频率组件
RBAC 基于用户权限访问控制的认证 - Role-Based Access Control Django框架采用的是RBAC认证规则,RBAC认证规则通常会分为 三表规则.五表规则,Django采用 ...
- 第四章、drf框架 - 三大认证组件 | 认证组件 | 权限组件 | 频率组件
目录 RBAC 基于用户权限访问控制的认证 - Role-Based Access Control 三大认证组件 源码分析 一.认证组件 自定义认证类 使用: 二.权限组件 自定义权限类 三.频率组件 ...
- 描述下什么是springcloud,springcloud中的组件有哪些?分别描述下它的原理?
1.什么是springcloud,springcloud中的组件有哪些? Spring cloud是一个基于Spring Boot实现的服务治理工具包,在微服务架构中用于管理和协调服务的微服务:就是把 ...
- rest_framework 认证组件 权限组件
认证组件 权限组件 一.准备内容 # models class User(models.Model): name = models.CharField(max_length=32) pwd = mod ...
随机推荐
- WebXml.com.cn 中国股票行情数据 WEB 服务(支持深圳和上海股市的全部基金、债券和股票),数据即时更新
http://www.webxml.com.cn/WebServices/ChinaStockWebService.asmx
- TV和BTV(全变分和双边全变分)
TV:Total Variation BTV:Bilateral Total Variation Osher等在1992 年提出了总变分(TV)超分辨率重建方法,该方法能够有效地去除噪声和消除模糊,但 ...
- iOS app开发入门
https://github.com/qinjx/30min_guides/blob/master/ios.md
- 用highcharts展现你的数据
摘要: 前面已经分享过图表插件,今天在来将下如何使用highcharts来绘制图表.highcharts支持在线定制,你可以选择你所需要的模块,然后点击build就会生成一个js文件链接,右键保存到本 ...
- 几个实用的sublime text 2的快捷键
Sublime text快捷键 Sublime text 2是一款轻量.简洁.高效.跨平台的编辑器,他适合编写javascript,html,css,php,paython等等, 作为程序员,编码效率 ...
- splash渲染网页
#coding=utf8 import requests,time,random import threadpool render_html = 'http://192.168.30.128:8050 ...
- 正则 /\D/g
onKeyUp="this.value=this.value.replace(/\D/g,'');"红色的是什么意识 /g是什么意思 ----------------------- ...
- 为什么要使用JS模板引擎
我之前在写一个输入联想控件的时候,改过好几个版本,每个版本不是因为性能不好就是因为代码凌乱而被推翻,最后用了understore模板引擎,效果有明显改善.整好这两天在研究互联网技术架构,发现很多的开发 ...
- win7+ oracle +php环境的搭建
http://blog.csdn.net/chchmlml/article/details/6887326 先下载个wmpp1.7.5(之前在xp上也是这个,所以就继续),安装,一切顺利,打开phpi ...
- weblogic12C出现“java.lang.ArrayIndexOutOfBoundsException: 48188”
最近将10G的一个项目转移到12C出现数组越界的问题: 解决办法: jaxen-1.1.1.jarxom-1.0.jaricu4j-2.6.1.jar 把项目中这三个jar包删除后就可以正常部署了 ...