WPS插件开发流程(1)

2023-11-17

OneKey_Lite是一款由 @只为设计 独立开发的WPS演示免费插件。在开发过程中,感恩于网上那些无私分享代码的陌生人,给我这个开发小白提供了重要的借鉴参考。于是我决定把用C#和Visual Studio开发WPS插件的每一个具体步骤分享出来,让免费分享精神继续传递下去,希望对需要的朋友提供一些帮助。

WPS插件开发流程(1)

(一)开发前准备

1. 操作系统

在Win10系统中引用WPS的dll文件可能会受到系统权限限制的问题,可以尝试在Administrator账户中安装WPS Office 2016专业版及进行后续开发。如果使用Win7系统,比较顺利

2. IDE集成开发环境

Microsoft Visual Studio 2017 Community 社区免费版

3. WPS Office 2016

  • WPS Office 2016专业版。专业版无需激活也可进行开发,推荐
  • WPS Office 2016个人版。个人版需运行专业版自带的WPSOfficePIA.exe注册程序集后方可正常引用WPS的相关DLL

(二)创建项目

1. 启动Visual Studio-文件-新建-项目

WPS插件开发流程(1)

2. 已安装→Visual C#-类库(.NET Framework)→输入名称→选择框架→确定

WPS插件开发流程(1)

生成的新项目如下图

WPS插件开发流程(1)

3. 在解决方案资源管理器中的项目上右键→属性→应用程序→程序集信息

WPS插件开发流程(1)

4. 修改相应信息→勾选“使程序集COM可见”→ 确定

WPS插件开发流程(1)

5. 切换到“生成”→勾选“为COM互操作注册”

WPS插件开发流程(1)

6. 切换到“调试”→勾选“启动外部程序”→浏览→找到WPS安装文件夹中的相应exe程序

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

WPS插件开发流程(1) 的相关文章

  • SL4 AutoCompleteBox 重复筛选结果问题

    我在 AutoCompleteBox 过滤方面遇到问题 它似乎记住了之前的过滤器 例如 我输入 A 它会返回 1 项 我删除 A 并输入 Z 这应该返回 1 项 问题是它返回 A 过滤器加上 Z 的结果 我删除 Z 并输入 S 这会带回 2
  • C 中的变量定义是什么意思[重复]

    这个问题在这里已经有答案了 你们能告诉我 这在 C 中意味着什么吗 define Privileged Data Privileged Data static int dVariable 编译器对变量进行寻址有特殊意义吗 这只是一个宏Pri
  • MVC 重定向到没有控制器的视图

    希望应该是一个简单的 我创建了一个通用错误视图 当整个站点的操作方法内发生异常时 我想显示该视图 我创建了一个部分页面 所有导航都位于其中 因此我不需要在此视图上使用控制器 那么如何从控制器内的操作方法重定向到它 像这样的东西 HttpPo
  • 扫描文本文件时如何跳过行?

    我想扫描一个文件并在阅读之前跳过一行文本 我试过 fscanf pointer n struct test i j 但这个语法只是从第一行开始 我可以使用 scanf 使用以下指令跳过行 fscanf config file n n 格式字
  • SetWindowsHookEx 函数返回 NULL

    我正在研究 DLL 注入 但收到错误如下 挂接进程失败 87 参数不正确 目标进程和dll都是64位的 注入代码为 BOOL HookInjection TCHAR target TCHAR dll name https msdn micr
  • Android NDK C++“wstring”支持

    我有用 C 编写的源代码 lib 现在我想在 Android NDK 项目 NDK 6 中编译并使用相同的源代码 lib 我能够编译大多数 C 文件 除了基于 std wstring 的功能 在 Application mk 中 当我指定时
  • 通过单个 GPIO 引脚转储闪存

    我正在使用 Infineon 的 XMC4500 Relax Kit 并尝试通过单个 GPIO 引脚提取固件 我非常天真的想法是通过 GPIO 引脚一次转储一位 然后用逻辑分析仪以某种方式 嗅探 数据 伪代码 while word by w
  • 在 GCC 和 Clang 下,使用 lambda 的简单 RAII 包装器的复制初始化意外失败

    我在创建一个简单的 RAII 包装器时遇到了一个意想不到的问题 更不用说下面代码的逻辑不完整性了 复制构造函数和赋值运算符未删除等 这意味着是一个SSCCE 令我印象深刻的是复制初始化我的包装器与临时 lambda 的结果会导致编译错误 而
  • 特定设备的不同字体大小

    我目前正在开发通用应用程序 我需要分别处理移动设备和桌面的文本框字体大小 我找到了一些方法 但都不能解决问题 使用 VisualStateManager 和 StateTrigger 为例
  • .net Framework (.net 4.0) 中定义 Base 3 数字的类

    我正在寻找一些可以用来定义 3 基数 三进制数 的类 有什么我可以在 net 框架中使用的东西或者我需要写一些东西吗 谢谢你的帮助 您可以使用解析Convert ToInt32 s base http msdn microsoft com
  • 使用 openssl 检查服务器安全协议

    我有一个框架应用程序 它根据使用方式连接到不同的服务器 对于 https 连接 使用 openssl 我的问题是 我需要知道我连接的服务器是否使用 SSL 还是 TLS 以便我可以创建正确的 SSL 上下文 目前 如果我使用错误的上下文尝试
  • 更改其他页面的主窗口内容

    在 WPF 应用程序的主窗口中 我有一个 Badged 元素 来自材料设计 这是我的代码
  • C# 中处理 SQL 死锁的模式?

    我正在用 C 编写一个访问 SQL Server 2005 数据库的应用程序 该应用程序是数据库密集型的 即使我尝试优化所有访问 设置适当的索引等 我预计迟早会遇到死锁 我知道为什么会发生数据库死锁 但我怀疑我能否在某个时候发布不发生死锁的
  • 如何将字符串转换为 Indian Money 格式?

    我正在尝试将字符串转换为印度货币格式 例如如果输入为 1234567 则输出应为 12 34 567 我编写了以下代码 但它没有给出预期的输出 CultureInfo hindi new CultureInfo hi IN string t
  • realloc():重新分配为 char * 上的 strcat 腾出空间时下一个大小无效 [重复]

    这个问题在这里已经有答案了 我在以下代码中收到无效内存错误 printf s n FINE 5 printf s LENGTH IS d n FINE 6 strlen buffer char realloc buffer strlen b
  • 当在 Repository/UnitOrWork 之上使用 Service 类时,我应该在哪里放置逻辑不适合 Repository 的常用数据访问代码?

    In my 先前的问题 https stackoverflow com questions 24906548 using the generic repository unit of work pattern in large projec
  • 如何强制执行特定的 UserControl 设计

    我正在编写一个基本用户控件 它将由一堆其他用户控件继承 我需要对所有这些后代控件强制执行某种设计 例如 顶部必须有几个按钮以及一个或两个标签 后代用户控件区域的其余部分可以自由放置任何内容 最初 我认为我可以将一个面板放到 Base Use
  • c# 替代方案中 cfusion_encrypt 中填充的密钥是什么?

    我找到了从这里复制 C 中的 cfusion encrypt 函数的答案 ColdFusion cfusion encrypt 和 cfusion decrypt C 替代方案 https stackoverflow com questio
  • 程序退出后,TcpListener Socket 仍处于活动状态

    当我的程序退出时 我试图停止 TCP 侦听器 我不关心套接字或任何活动客户端套接字上当前活动的任何数据 套接字清理代码本质上是 try myServer Server Shutdown SocketShutdown Both catch E
  • 将文本从文本文件添加到 PDF 文件[重复]

    这个问题在这里已经有答案了 这是我的代码 using FileStream msReport new FileStream pdfPath FileMode Create step 1 using Document pdfDoc new D

随机推荐

  • java金额的正则表达式,【转】关于金额应验的Java方法(采用正则表达式)

    public static boolean isNumber String str java util regex Pattern pattern java util regex Pattern compile 0 9 java util
  • 2016阿里云121款产品和解决方案全向图(9月制)

    2016阿里云121款产品和解决方案全向图 9月制 摘要 云栖社区在9月底又更新了 2016阿里云产品全向图和解决方案全向图 导语 DT时代 一切都将走向数据化 可视化 在阿里云所阐述的 技术拓展商业的边界 商业驱动技术的变革 理念中 密集
  • 汇编语言(王爽第三版) 实验5编写、调试具体多个段的程序

    参考 http blog sina com cn s blog 171daf8e00102xclx html 汇编语言实验答案 王爽 https wenku baidu com view a1cd7c6c1fb91a37f111f18583
  • muduo网络库学习笔记(13):TcpConnection生命期的管理

    本篇通过分析muduo中TcpConnection对断开连接事件的处理 来学习muduo网络库对TcpConnection生命期的管理 TcpConnection对连接断开事件的处理 首先 我们来看一下TcpConnection处理连接断开
  • 华为OD题目: 整理扑克牌

    package com darling boot order od od12 import java util 整理扑克牌 题目描述 给定一组数字 表示扑克牌的牌面数字 忽略扑克牌的花色 请按如下规则对这一组扑克牌进行整理 步骤1 对扑克牌
  • 关于Bert被质疑利用“虚假统计性提示”的ACL论文

    曾经狂扫11项记录的谷歌NLP模型BERT 近日遭到了网友的质疑 该模型在一些基准测试中的成功仅仅是因为利用了数据集中的虚假统计线索 如若不然 还没有随机的结果好 这项研究已经在Reddit得到了广泛的讨论 引用自 新智元 真的不想那么标题
  • 社会中的学费

    上学期间 我们交学费是为了学习课本知识 我们也确实从中学到了很多有用的东西 这些学费我们觉得是物有所值的 当我们踏入社会的时候 我们也是要向社会交一定的学费 这种学费 我们能够学到的东西就是社会经验 这是东西是无形的 我们总会觉得自己的钱没
  • ImportError: /lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.29‘ not foun

    复现代码过程中 无意间出现这个问题 本以为很好解决 没想到还是花了我好几个小时的时间 总结一下趴 我的环境是cuda11 3 python3 9 pytoch1 10 问题如图 图1 bug示意图 在网上找了很多答案 要么就是没说清的 要么
  • HTTPS网络编程——S代表SSL协议也叫TLS协议

    参考 HTTPS简介以及SSL协议详解 地址 https qingmu blog csdn net article details 108209248 spm 1001 2014 3001 5502 目录 1 HTTPS简介 2 SSL协议
  • stm32 的 ESP8266 wifi 模块 (ESP - 12s) 的使用

    1 ESP8266 的器件介绍 2 ESP2866外设 的引脚 3 我所用的的ESP2866 的引脚图 4 代码 编程的串口 5 wifi 的指令 1 AT 测试指令 2 AT RST 重启模块 3 AT GMR 查看版本信息 4 AT R
  • 家政行业丨制作便捷高效的家政小程序

    随着现代生活节奏的加快和家庭需求的多样化 越来越多的人开始寻找一种更方便 更高效的方式来获取家政服务 而家政小程序的兴起为这一需求提供了理想的解决方案 本文将简要介绍家政小程序是什么 探讨家政小程序的好处 并提供一些制作搭建家政小程序的方法
  • 【Python】记录一次 Linux + Python + RocketMQ 辛酸历程

    文章目录 安装Python 准备环境 编译安装 遇到问题 安装openssl 重新编译 安装依赖库 准备代码 验证 这是记录一次辛酸的Linux Python RocketMQ使用历程 需求背景是需要验证线上一个RocketMQ服务和里面的
  • 2014.12.17笔记

    我记得科学松鼠会的姬十三曾在一篇文章中写到 开始干一件好事情就像拿着锣一敲 然后志同道合的人就从四面八方赶来 开源之美 仅在于此 不要问怎么入门 直接上路吧 您刚才那个问题是说大数据跟人工智能和深度学习怎么划等号 是这么一个关系 大数据是一
  • XML可扩展标记语言

    XML可扩展标记语言 XML ExtensibleMarkup Language 可扩展标记语言是一种基于文本的格式用于展示结构化的信息 主要用于传输和存储数据 属于W3C World Wide Web Consortium 标准 XML的
  • hdfs怎么处理小文件问题

    一 HAR文件方案 为了缓解大量小文件带给namenode内存的压力 Hadoop 0 18 0引入了Hadoop Archives HAR files 其本质就是在HDFS之上构建一个分层文件系统 通过执行hadoop archive 命
  • 递归下降算法语法分析c语言

    递归下降算法 自上而下文法的递归下降的预测分析 从根节点出发逐步构造分析树 所以被称作自上而下文法 在文法中有递归的函数 例如 E gt TE 所以叫做递归下降算法 使用的文法如下 E gt TE E gt TE e T gt FT T g
  • fcfs调度算法_使用C程序实现先到先服务(FCFS)CPU调度算法

    fcfs调度算法 CPU scheduling decides which of the available processes in the ready queue is to be allocated the CPU There are
  • ORACLE 序列sequence小结

    创建序列语法 需要获取相应的权限 create sequence NAME INCREMENT BY START WITH integer 初始值和递增间隔 MAXVALUE integer NOMAXVALUE 上界或无上界 MINVAL
  • python实训报告心得体会-Python学习心得体会

    首先最开始 我们要明确一点 学习编程不是一日之功 需要每天投入时间学习 也不可纸上谈兵 需要自己亲自操作 不动手就不会发现问题 动了手印象才会深刻 记得更靠 接下来我就稍微总结一下 我在学习中遇到的问题和一些心得体会 1 修改字符串大小写时
  • WPS插件开发流程(1)

    OneKey Lite是一款由 只为设计 独立开发的WPS演示免费插件 在开发过程中 感恩于网上那些无私分享代码的陌生人 给我这个开发小白提供了重要的借鉴参考 于是我决定把用C 和Visual Studio开发WPS插件的每一个具体步骤分享