WPS会更改PPT的注册表
现在的公司老板都爱省钱,所以强制推行WPS。这可苦了我们这些office二次开发的程序员
今天在C#调用PPT时遇到了一个异常,内容大致是这样的
System.InvalidCastException was unhandledMessage=Unable to cast COM object of type 'Microsoft.Office.Interop.PowerPoint.ApplicationClass' to interface type 'Microsoft.Office.Interop.PowerPoint._Application'. This operation failed because the QueryInterface call on the COM component for the interface with IID '{91493442-5A91-11CF-8700-00AA0060263B}' failed due to the following error: Error loading type library/DLL. (Exception from HRESULT: 0x80029C4A (TYPE_E_CANTLOADLIBRARY)).Source=Microsoft.Office.Interop.PowerPoint
大意就是创建的Microsoft.Office.Interop.PowerPoint.ApplicationClass
实例无法转换为Microsoft.Office.Interop.PowerPoint._Application
接口。
这实际上是COM组件调用的一个问题,每个COM组件会有一个接口IDIID
,另外每一个实现该接口的CLSID
那么既然一个接口可以有多个实现,那么具体哪个实现才是需要的呢?
这一切就是依赖于注册表控制的。
啊,注册表这个东西,大家说改就改了呀。
你的注册表被谁改了
首先是去注册表的HKEY_CLASSES_ROOT
中查找对应接口的IID
然后从这一项的子类TypeLib
,从中记录着CLSID
。
然后从HKEY_CLASSES_ROOT\TypeLib
中找到这个项,然后可以看到。。。
国产软件值得支持,但是这样破坏注册表的行为还是希望可以改善
参考链接:
- C#: PPT to PDF-Unable to Cast COM Object of Type ‘Microsoft.Office.Interop.PowerPoint. ApplicationClass’ to Interface Type 'Microsoft.Office.Interop.PowerPoint. _Application - TechNet Articles - United States (English) - TechNet Wiki
- 怎么通俗的解释COM组件? - 知乎
本文会经常更新,请阅读个人博客原文: https://xinyuehtx.github.io/ ,以避免陈旧错误知识的误导,同时有更好的阅读体验。
本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。欢迎转载、使用、重新发布,但务必保留文章署名黄腾霄(包含链接: https://xinyuehtx.github.io/ ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请 与我联系 。
WPS会更改PPT的注册表相关推荐
- 如何才能监控查看出注册表更改情况,本地组策略设置更改了哪些注册表对应值?
环境: Win11 专业版 HP480G7 Windows Sysinternals Suite 问题描述: 如何才能监控查看出注册表更改情况,本地组策略设置更改了哪些注册表对应值? 解决方案: 1. ...
- 计算机更改用户名修改注册表出问题,改注册表没权限?无论什么账户这么做就好...
在昨天的<除旧迎新过小年 1分钟速清电脑>留言中,有好多小伙伴说无法运行,权限不够.如果是运行BAT文件的话,用鼠标右键点击选择"以管理员身份运行"就行了. 但如果是在 ...
- Excel催化剂开源第32波-VSTO开发的插件让WPS顺利调用的方法-注册表增加注册信息...
VSTO插件开发完成后,鉴于现在WPS用户也不少,很多时候用户没办法用OFFICE软件,只能在WPS环境下办公,VSTO开发的插件,只需增加一句注册表信息,即可让WPS识别到并调用VSTO开发的功能, ...
- python32bit改64bit,从32位Python更改64位注册表
I am having difficulty do understand this. If I'm correct, A 32bit Python can't run a code and chang ...
- 使用组策略中的首选项更改域中计算机注册表
使用首选项更改注册表 使用组策略的首选项可以更改计算机的注册表键值,通过更改可以控制计算机的行为.以下示例就通过组策略的首选项配置域中计算机启用远程桌面,且更改远程桌面使用的端口.默认远程桌面的远程桌 ...
- windows 注册表讲解
注册表存储结构: 整个注册表内容主要由项(键).值(键值)构成.(通过regedit命令打开注册表) 5个根键: HKEY_CLASSES_ROOT (缩写HKCR) HKEY_CURRENT_ ...
- 服务器iis7.5 配置文件,使用注册表项 - Internet Information Services | Microsoft Docs
Internet 信息服务使用的注册表项的说明 07/21/2020 本文内容 本文介绍了 Microsoft Internet Information Services (IIS) 在 Window ...
- windowsMobile 注册表136个操作
注册表修改详解方案集合 (136个修改操作) 1.修改"china Mobile"方法:在桌面的"中国移动"随你自己心愿修改! 具体操作如下: HKEY_LOC ...
- PPC修改注册表大全 (注册表必看)(转载)
在PPC上很多功能可以通过改注册表实现 下面是一些较为常用的注册表修改方法 一共有133条 前面是目录 后面对应的是实现功能和修改方法--希望对大家有帮助 理论上通用与WM2003 5.0 6.1 ...
最新文章
- 互联网协议 — TLS — 使用 OpenSSL 自建 CA 中心
- UBUNTU衍生版制作,系统的封装
- 简单php不用mysql_简单的PHP / MySQL不工作
- 微信小程序开发教程(基础篇)8-数据绑定下
- 百度不收录你网站的原因
- Vue CLI3 基本使用配置;
- 计算机采用逻辑元件的发展顺序是,全国计算机等级考试一级选择题以及答案
- 谁说大龄程序员不能学 Java?
- SWPUACM第一届程序设计大赛
- 女孩子学前教育计算机,女孩子考什么专业比较好 适合女生的五大专业
- ps 毛发 边缘_PS技巧:毛发抠图调整边缘法
- 贴片钽电容,P型 A型 B型 C型 D型 E型怎么区分?
- 应用程序正常初始化(Oxc000007b)失败
- 机器学习中的数学——常用概率分布(三):二项分布(Binomial分布)
- 本地差分隐私 随机响应_本地化差分隐私:如何面对非可信的世界
- c语言log库,Log4g
- Go语言之分支结构(十一)
- Nginx 正向代理互联网访问
- redis分片式集群
- JAVA操作execl
热门文章
- jQuery一步一步实现跨浏览器的可编辑表格,支持IE、Firefox、Safari、
- 2021年中国政府引导基金设立数量、目标规模、认缴规模及分布[图]
- windows人大金仓定时备份脚本
- pytorch 图像分割的交并比_PyTorch深度学习框架——初识
- 论文的数据一般在哪里找?
- 分享html表格简历表
- 低保定期报告系统服务器出错怎么办,乌兰察布低保定期报告认证系统
- 扫地机器人出口欧盟办理CE认证的标准介绍
- poi在指定位置插入图片,图片可以浮动内容上方下方
- 网格化运维标书_基于网格化规划的配网运维和业扩方案工作的精益化管理