微软VSTO功能如何放到WPS中用

案例需求:

针对Vsto加载项功能,office中显示,但wps中没显示的解决方式

修复步骤:

组建名称对应表:
组建MicrosoftKingsoft
文字WordWPS
表格ExcelET
幻灯片PowerPointWPP
移植步骤:
  1. 打开微软的加载项注册表,找到列表中你需要的加载项
    微软加载项注册表地址: HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\{组建名称}\Addins 在这里插入图片描述

  2. 找到,并复制第一步中的加载项名称,如:上图中Excel里面的 TCSCConv.SharedAddin.16 加载项

  3. 打开Kingsoft的加载项列表
    金山加载项注册表地址: HKEY_CURRENT_USER\SOFTWARE\kingsoft\Office\{组建名称}\AddinsWL在这里插入图片描述

  4. 添加一个TCSCConv.SharedAddin.16的值,如图
    在这里插入图片描述
    在这里插入图片描述

  5. 重新打开WPS/ET/WPP

扩展:

如果是想要打包生成安装后wps可用的安装包,参考以下文档

  1. VSTO打包加载项 WPS可用 Advanced Installer (csdn)
  2. VSTO插件供WPS使用 (csdn)
### VSTOWPS的集成可能性分析 Visual Studio Tools for Office (VSTO) 是一种用于开发 Microsoft Office 应用程序加载项的技术框架,主要针对 Microsoft Office 套件中的应用程序(如 Word、Excel 和 PowerPoint)。然而,WPS Office 并不原生支持 VSTO 或类似的 .NET Framework 集成技术。这是因为 WPS 使用其自身的 API 和插件机制来实现功能扩展[^2]。 尽管如此,在某些情况下可以通过间接方式尝试让 WPS 支持部分基于 COM 的自动化操作。以下是关于如何在 WPS 中使用或模拟 VSTO 功能的一些探讨: #### 1. **理解 WPS 插件架构** WPS 提供了自己的插件开发工具链和支持文档。如果目标是为 WPS 文字或 WPS 表格创建外接程序,则需要遵循特定的注册路径规则。例如,对于 WPS 文字而言,它对应的组件名类似于 `Word` 和 `WPS`;而对于 WPS 表格来说,它的组件名为 `Excel` 和 `ET`[^1]。 #### 2. **利用 COM 自动化桥接** 如果希望借助 VSTO 实现的功能能够在 WPS 上运行,可以考虑通过 COM 接口作为桥梁。具体做法如下: - 创建一个独立的应用服务层或者中间件,该模块负责处理业务逻辑并通过标准 COM 调用来控制 WPS。 - 此种方案依赖于 WPS 是否开放足够的 COM 对象模型接口给开发者调用。通常这类接口会覆盖文件读写、样式设置以及宏录制等功能[^3]。 #### 示例代码:启动并访问 WPS Com 对象 ```csharp using System; using System.Runtime.InteropServices; class Program { static void Main(string[] args){ Type wpsType = Type.GetTypeFromProgID("Kwps.Application"); dynamic appInstance = Activator.CreateInstance(wpsType); Console.WriteLine($"当前版本号:{appInstance.Version}"); appInstance.Visible=true; // 显示窗口 var doc=appInstance.Documents.Add(); // 新建空白文档 doc.Range(0,0).Text="测试文本"; } } ``` 上述 C# 程序展示了如何通过反射获取 WPS 的 ProgID 来实例化对象,并执行简单的命令序列。 #### 3. **探索第三方解决方案** 当前市场上可能存在一些商业化的跨平台兼容库,它们允许用户编写一次代码即可部署到多个办公套件上,包括但不限于 MS Office 和 WPS。这些产品可能提供更高层次抽象封装好的 API 方法集合,从而简化迁移过程。 --- ###
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值