精易论坛

标题: win10拖放对象直接注册开机启动实现 [打印本页]

作者: endless1    时间: 2017-6-29 11:29
标题: win10拖放对象直接注册开机启动实现
调用了精易模块,此问题困扰自己已有很久。
win10拖放对象的权限不能使用管理员权限,但注册开机启动须管理员权限。
   利用两个程序完成:
  一个是拖放对象,一个是注册开机启动, 程序之间用ini配置文件联系

  
窗口程序集名保 留  保 留备 注
窗口程序集_启动窗口   
子程序名返回值类型公开备 注
__启动窗口_创建完毕  
写到文件 (取运行目录 ()“\reg.exe”, 到字节集 ( #图片1 ))
拖放对象1.注册拖放控件 (分组框1.取窗口句柄 ())  ' 用来接收拖放对象的组件的句柄
拖放对象1.接收文件 =   ' 设置拖放对象的接受文件类型
拖放对象2.注册拖放控件 (分组框2.取窗口句柄 ())  ' 用来接收拖放对象的组件的句柄
拖放对象2.接收文件 =   ' 设置拖放对象的接受文件类型
子程序名返回值类型公开备 注
_拖放对象1_得到文件 事件,为传进来的
参数名类 型参考可空数组备 注
接收到的文件路径文本型返回一个拖入文件的全路径
判断 (取反 (文件_是否存在 (取运行目录 ()“\reg.ini”)))
文件_创建 (取运行目录 ()“\reg.ini”, 0)


判断 (寻找文本 (接收到的文件路径, “.lnk”, , ) ≠ -1)
接收到的文件路径 = 取快捷方式目标 (接收到的文件路径, , , , , , , )


标签1.标题 = 接收到的文件路径
写配置项 (取运行目录 ()“\reg.ini”, “zc”, “name”, 接收到的文件路径)
写配置项 (取运行目录 ()“\reg.ini”, “zc”, “way”, “1”)
写配置项 (取运行目录 ()“\reg.ini”, “zc”, “new”, “1”)
系统_以管理员模式创建进程 (取运行目录 ()“\reg.exe”, )
结束 ()
子程序名返回值类型公开备 注
_拖放对象2_得到文件  
参数名类 型参考可空数组备 注
接收到的文件路径文本型
判断 (取反 (文件_是否存在 (取运行目录 ()“\reg.ini”)))
文件_创建 (取运行目录 ()“\reg.ini”, 0)


判断 (寻找文本 (接收到的文件路径, “.lnk”, , ) ≠ -1)
接收到的文件路径 = 取快捷方式目标 (接收到的文件路径, , , , , , , )


标签2.标题 = 接收到的文件路径
写配置项 (取运行目录 ()“\reg.ini”, “zc”, “name”, 接收到的文件路径)
写配置项 (取运行目录 ()“\reg.ini”, “zc”, “way”, “0”)
写配置项 (取运行目录 ()“\reg.ini”, “zc”, “new”, “1”)
系统_以管理员模式创建进程 (取运行目录 ()“\reg.exe”, )
结束 ()


i支持库列表   支持库注释   
edroptarget拖放支持库
eAPI应用接口支持库


以下即是#图片1的数据,可直接写到拖放文件中,运行释放即可。

  
窗口程序集名保 留  保 留备 注
窗口程序集_启动窗口   
子程序名返回值类型公开备 注
__启动窗口_创建完毕  
变量名类 型静态数组备 注
文本文本型 
操作文本型 
是否最新操作文本型 
判断 (取反 (文件_是否存在 (取运行目录 ()“\reg.ini”)))
信息框 (“未找到配置文件”, 0, , )
文本 = 读配置项 (取运行目录 ()“\reg.ini”, “zc”, “name”, )
操作 = 读配置项 (取运行目录 ()“\reg.ini”, “zc”, “way”, )
是否最新操作 = 读配置项 (取运行目录 ()“\reg.ini”, “zc”, “new”, “”)
判断 (取反 (是否最新操作 = “1”) 是否最新操作 = “”)
结束 ()


判断 (文本 = “”)
信息框 (“未找到配置文本”, 0, , )
判断 (操作 = “”)
信息框 (“未找到操作方式”, 0, , )
标签4.标题 = 文本
判断 (操作 = “1”)  ' 注册
标签6.标题 = “注册”
注册 (文本)
标签6.标题 = “删除”
删除 (文本)

结束 ()
子程序名返回值类型公开备 注
注册 事件,为传进来的 1
参数名类 型参考可空数组备 注
接收到的文件路径文本型返回一个拖入文件的全路径
变量名类 型静态数组备 注
注册注册表操作 
文件名文本型 
文件名 = 文本_取右边 (接收到的文件路径, “\”, , )
文件名 = 文本_取左边 (文件名, “.”)
输出调试文本 (接收到的文件路径, 文件名)
判断 (注册.写字符串值 (“HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Run”, 文件名, 接收到的文件路径))
信息框 (“注册成功!”, 0, , )
信息框 (“注册失败!”, 0, , )
写配置项 (取运行目录 ()“\reg.ini”, “zc”, “new”, “0”)
子程序名返回值类型公开备 注
删除  
参数名类 型参考可空数组备 注
接收到的文件路径文本型
变量名类 型静态数组备 注
注册注册表操作 
文件名文本型 
文件名 = 文本_取右边 (接收到的文件路径, “\”, , )
文件名 = 文本_取左边 (文件名, “.”)
判断 (注册.删除键名 (“HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Run”, 文件名))
信息框 (“删除成功!”, 0, , )
信息框 (“删除失败!”, 0, , )
写配置项 (取运行目录 ()“\reg.ini”, “zc”, “new”, “0”)


作者: lxwan    时间: 2017-6-29 11:35
        支持开源~!感谢分享
作者: 思雪°    时间: 2017-6-29 12:47
你可以命令行的方式调用.
作者: 猥琐小胖子    时间: 2017-6-29 21:11
我记得这个有源码修复的吧
作者: kentfung    时间: 2017-7-2 01:48
能上传一下源文件吗?
作者: 墓志铭    时间: 2017-8-17 08:10
lxwan 发表于 2017-6-29 11:35
支持开源~!感谢分享

??自己顶贴??
作者: 小小侠    时间: 2021-3-20 16:03
楼主上传一个e吧,方便一点




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4