Python插件 - 通过注册表的方式打开本地exe文件支持【HTML5】【WPF客户端】
本文简单描述下通过注册表打开EXE的程序。
**用户客户端安装的软件可能都在不同的路径 A/B/C/D... 盘**
**注册表中存在了启动的目录**就可以从注册表获取应用的路径
**注册表名称/shell/open/command**下有启动路径
# 第一步 - 查找到对应注册表
![image.webp](/download/01006379f7ffc017479c8fb229d9c0b75ed0.webp)
# 第二步 - 设置一个链接控件
- 客户端打开exe时使用
![image.webp](/download/0100277d55e13af846f5b57d52743722bc06.webp)
# 第二步 - 根据注册表名称启动程序
- mindeeprintsoft 为注册表名称
- keyValue=123456 为启动软件的参数
``` python
import clr
clr.AddReference("System")
clr.AddReference("System.Core")
clr.AddReference("Kingdee.BOS")
clr.AddReference("Kingdee.BOS.App")
clr.AddReference("Kingdee.BOS.Core")
from Kingdee.BOS import *
from Kingdee.BOS.Core.DynamicForm import *
from Kingdee.BOS.Core.DynamicForm.PlugIn import *
from Kingdee.BOS.Core.DynamicForm.PlugIn.Args import *
from Kingdee.BOS.Core.DynamicForm.PlugIn.ControlModel import *
from Kingdee.BOS.Util import *
from System import *
def BarItemClick(e):#EntryBarItemClick 表体菜单按钮事件、【BarItemClick】菜单按钮事件
if e.BarItemKey.Equals("SMTO_Open2", StringComparison.OrdinalIgnoreCase):#按钮标识
#如果是客户端则使用链接的方式打开
if this.Context.ClientType == ClientType.WPF:
linkBtnKey = "F_SMTO_Link";
this.View.GetControl(linkBtnKey).InvokeControlMethod("SetClickFromServer", "mindeeprintsoft://keyValue=ZY0230821002299");
else:
this.View.AddAction("ShowWebURLExt", "mindeeprintsoft://keyValue=ZY0230821002299");
```
***mindeeprintsoft*替换成您需要打开的注册表名称**
# 效果
![打开exe.webp](/download/0100fc9c29b723374bdc8a3282e618dcaa45.webp)
**完美~~**
这个好外挂程序的一个实现方式
Python插件 - 通过注册表的方式打开本地exe文件支持【HTML5】【WPF客户端】
本文简单描述下通过注册表打开EXE的程序。**用户客户端安装的软件可能都在不同的路径 A/B/C/D... 盘****注册表中存在了启动的目录**就可...
点击下载文档
本文2024-09-16 17:13:34发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-14340.html
您需要登录后才可以发表评论, 登录登录 或者 注册
最新文档
热门文章