开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 108|回复: 13
收起左侧

[完成] 新手求助

 关闭 [复制链接]
结帖率:33% (1/3)
发表于 4 天前 | 显示全部楼层 |阅读模式   湖南省湘潭市
10精币
错误(37): 找不到指定的命令/子程序/Dll命令调用名称“如果真结束”。
错误(37): 找不到指定的命令/子程序/Dll命令调用名称“否则”。
516 ' 右键按下 错误(25): 不能为参数数据,必须为命令。

最佳答案

查看完整内容

直接调用了精易模块,应该不许要我发你模块吧 原理和ai给你生成的是一样的,都是调用系统api 模块给封装好了,直接调用就行 [e=0].版本 2 .支持库 spec .程序集 窗口程序集_启动窗口 .程序集变量 钩子, 类_钩子 .程序集变量 键盘句柄, 整数型 .程序集变量 鼠标句柄, 整数型 .子程序 __启动窗口_创建完毕 键盘句柄 = 钩子.安装钩子_键盘 (_启动窗口.取窗口句柄 (), &键盘回调, ) 鼠标句柄 = 钩子.安装钩子_鼠标 (_启动窗口. ...
结帖率:94% (17/18)

签到天数: 2 天

发表于 4 天前 | 显示全部楼层   山东省临沂市
longtxiao 发表于 2026-4-29 23:03
是啊  我不会写 我想做个 组合快捷键使用程序 用ai弄得 结果不行  哈哈

直接调用了精易模块,应该不许要我发你模块吧
原理和ai给你生成的是一样的,都是调用系统api
模块给封装好了,直接调用就行
  
窗口程序集名保 留  保 留备 注
窗口程序集_启动窗口   
变量名类 型数组备 注
钩子类_钩子  
键盘句柄整数型  
鼠标句柄整数型  

子程序名返回值类型公开备 注
__启动窗口_创建完毕  
键盘句柄 = 钩子.安装钩子_键盘 (_启动窗口.取窗口句柄 (), &键盘回调, )
鼠标句柄 = 钩子.安装钩子_鼠标 (_启动窗口.取窗口句柄 (), &鼠标回调, )
判断 (键盘句柄 = 0)
调试输出 (“键盘钩子安装失败”)
结束 ()
调试输出 (“键盘钩子安装成功”)

判断 (鼠标句柄 = 0)
调试输出 (“鼠标钩子安装失败”)
结束 ()
调试输出 (“鼠标钩子安装成功”)

子程序名返回值类型公开备 注
键盘回调  
参数名类 型参考可空数组备 注
按键状态整数型
键代码整数型
调试输出 (“键盘键代码”, 按键状态)
调试输出 (“键盘按键状态”, 键代码)
如果真 (键代码 = 13 按键状态 = 256)  ' 256是按下,13是回车
结束 ()  ' 检测到热键直接结束软件运行
' 注意添加一个这这结束的,不然调试的时候容易卡住
' 导致键盘鼠标失灵,只能物理重启电脑(强制关机来关闭软件)

如果真 (键代码 = 32 按键状态 = 257)  ' 32是空格,257是松开
信息框 (“你松开了空格”, 0, , )

' 13是回车,32代码空格
' 这些是虚拟键码
' 直接问ai就能给你列表
' 鼠标的原理和键盘一样,自己按照自己需求改就行
子程序名返回值类型公开备 注
鼠标回调  
参数名类 型参考可空数组备 注
消息标识整数型
水平坐标整数型
垂直坐标整数型
附加数据整数型
调试输出 (“鼠标消息标识”, 消息标识)
调试输出 (“鼠标水平坐标”, 水平坐标)
调试输出 (“鼠标垂直坐标”, 垂直坐标)
调试输出 (“鼠标附加数据”, 附加数据)
子程序名返回值类型公开备 注
__启动窗口_将被销毁  
判断 (钩子.卸载 (键盘句柄))
调试输出 (“键盘钩子卸载成功”)
调试输出 (“键盘钩子卸载失败”)
返回 ()

判断 (钩子.卸载 (鼠标句柄))
调试输出 (“鼠标钩子卸载成功”)
调试输出 (“鼠标钩子卸载失败”)
返回 ()


i支持库列表   支持库注释   
spec特殊功能支持库

列子.e (960.1 KB, 下载次数: 0)
回复

使用道具 举报

结帖率:94% (17/18)

签到天数: 2 天

发表于 4 天前 | 显示全部楼层   山东省临沂市
代码贴出来啊。。。。
回复

使用道具 举报

结帖率:94% (17/18)

签到天数: 2 天

发表于 4 天前 | 显示全部楼层   山东省临沂市
ai生成的吧
回复

使用道具 举报

结帖率:94% (17/18)

签到天数: 2 天

发表于 4 天前 | 显示全部楼层   山东省临沂市
ai生成易语言代码序号带否则,正常不要的,我给你写一个列子
回复

使用道具 举报

结帖率:94% (17/18)

签到天数: 2 天

发表于 4 天前 | 显示全部楼层   山东省临沂市
  
窗口程序集名保 留  保 留备 注
窗口程序集_启动窗口   
子程序名返回值类型公开备 注
__启动窗口_创建完毕  
' 这个是正确的调用
如果 (1 = 1)  ' 判断1等于1,等于是真,不等于是加
' 真执行
调试输出 (“1等于1”)


' 这里是假执行的
调试输出 (“1不等于1”)

' 如果是ai生成的他会这样
如果 (1 = 1)  ' 判断1等于1,等于是真,不等于是加
' 真执行
调试输出 (“1等于1”)
否是
' 这里是假执行的,ai在别的语言需要写否则,但是易语言不需要
调试输出 (“1不等于1”)
如果结束   ’其他语言需要写这个,但是易语言不需要写,删除就行
错误 (37): 找不到指定的命令/子程序/Dll命令调用名称“如果结束”


i支持库列表   支持库注释   
spec特殊功能支持库



补充内容 (2026-4-28 22:53):
如果看不懂的话需要去看基础课程了,bibi搜易语言基础语法:如果、判断、如果真
回复

使用道具 举报

结帖率:33% (1/3)
 楼主| 发表于 3 天前 | 显示全部楼层   湖南省湘潭市
是永乐哟 发表于 2026-4-28 22:48
代码贴出来啊。。。。
  
窗口一代码
窗口程序集名保 留  保 留备 注
窗口程序集_启动窗口   
变量名类 型数组备 注
延坐标坐标组6 
偏坐标坐标组6 
全局确认X整数型  
全局确认Y整数型  
鼠标钩子句柄整数型  
键盘钩子句柄整数型  
右键按下逻辑型  
左键按下逻辑型  
组合已触发逻辑型  
当前类型文本型  
当前方向文本型  

子程序名返回值类型公开备 注
__启动窗口_创建完毕  
全局确认X = 0
全局确认Y = 0
标签_状态.标题 = “状态:未启用钩子”
子程序名返回值类型公开备 注
__启动窗口_将被销毁  
如果真 (鼠标钩子句柄 ≠ 0)
UnhookWindowsHookEx (鼠标钩子句柄)
如果真 (键盘钩子句柄 ≠ 0)
UnhookWindowsHookEx (键盘钩子句柄)
子程序名返回值类型公开备 注
_按钮_设置坐标_被单击  
载入 (窗口_坐标设置, , )
子程序名返回值类型公开备 注
_按钮_安装钩子_被单击  
鼠标钩子句柄 = SetWindowsHookExA (14, &鼠标回调, GetModuleHandle (0), 0)
键盘钩子句柄 = SetWindowsHookExA (13, &键盘回调, GetModuleHandle (0), 0)
标签_状态.标题 = “状态:钩子已启用”
子程序名返回值类型公开备 注
_按钮_卸载钩子_被单击  
如果真 (鼠标钩子句柄 ≠ 0)
UnhookWindowsHookEx (鼠标钩子句柄)
鼠标钩子句柄 = 0
如果真 (键盘钩子句柄 ≠ 0)
UnhookWindowsHookEx (键盘钩子句柄)
键盘钩子句柄 = 0
标签_状态.标题 = “状态:钩子已卸载”
子程序名返回值类型公开备 注
鼠标回调整数型 
参数名类 型参考可空数组备 注
nCode整数型
wParam整数型
lParam整数型
如果真 (nCode = 0)
如果真 (wParam = 516)  ' 右键按下
右键按下 = 真
组合已触发 = 假
如果真 (wParam = 517)  ' 右键弹起
如果真 (右键按下)
如果 (组合已触发)



右键按下 = 假
返回 (1)
右键按下 = 假
如果真 (wParam = 513)  ' 左键按下
左键按下 = 真
组合已触发 = 假
如果真 (wParam = 514)  ' 左键弹起
如果真 (左键按下)
如果 (组合已触发)



左键按下 = 假
返回 (1)
左键按下 = 假
返回 (CallNextHookEx (鼠标钩子句柄, nCode, wParam, lParam))
子程序名返回值类型公开备 注
键盘回调整数型 
参数名类 型参考可空数组备 注
nCode整数型
wParam整数型
lParam整数型
变量名类 型静态数组备 注
键值整数型 
方向文本型 
类型文本型 
如果真 (nCode = 0)
键值 = 取字节集数据 (指针到字节集 (lParam, 1), 3, )
如果真 (wParam = 256)  ' WM_KEYDOWN
方向 = “”
类型 = “”
' 使用如果真分别处理每个键
如果真 (键值 = #W键 )
如果真 (右键按下)
类型 = “延”
如果真 (左键按下)
类型 = “偏”
方向 = “上”
如果真 (键值 = #S键 )
如果真 (右键按下)
类型 = “延”
如果真 (左键按下)
类型 = “偏”
方向 = “下”
如果真 (键值 = #A键 )
如果真 (右键按下)
类型 = “延”
如果真 (左键按下)
类型 = “偏”
方向 = “左”
如果真 (键值 = #D键 )
如果真 (右键按下)
类型 = “延”
如果真 (左键按下)
类型 = “偏”
方向 = “右”
如果真 (键值 = #Q键 )
如果真 (右键按下)
类型 = “延”
如果真 (左键按下)
类型 = “偏”
方向 = “前”
如果真 (键值 = #E键 )
如果真 (右键按下)
类型 = “延”
如果真 (左键按下)
类型 = “偏”
方向 = “后”
' 如果类型有效且本轮未触发过
如果真 (类型 ≠ “” 组合已触发 = )
组合已触发 = 真
当前类型 = 类型
当前方向 = 方向
载入 (窗口_输入, , )
返回 (1)
返回 (CallNextHookEx (键盘钩子句柄, nCode, wParam, lParam))
子程序名返回值类型公开备 注
执行填表  
参数名类 型参考可空数组备 注
数值文本型
类型文本型
方向文本型
变量名类 型静态数组备 注
序号整数型 
ix整数型 
iy整数型 
标题文本型 
句柄整数型 
序号 = 0
' 用如果真替代判断
如果真 (方向 = “上”)
序号 = 1
如果真 (方向 = “下”)
序号 = 2
如果真 (方向 = “左”)
序号 = 3
如果真 (方向 = “右”)
序号 = 4
如果真 (方向 = “前”)
序号 = 5
如果真 (方向 = “后”)
序号 = 6
如果真 (序号 = 0)
返回 ()
' 类型判断也用如果真
如果真 (类型 = “延”)
ix = 延坐标 [序号].输入框X
iy = 延坐标 [序号].输入框Y
标题 = 延坐标 [序号].窗口标题
如果真 (类型 = “偏”)
ix = 偏坐标 [序号].输入框X
iy = 偏坐标 [序号].输入框Y
标题 = 偏坐标 [序号].窗口标题
句柄 = 窗口_取句柄 (, , 标题)
如果真 (句柄 = 0)
信息框 (“未找到目标窗口,请检查窗口标题是否配置正确!”, 0, “错误”, )
返回 ()
鼠标_消息 (句柄, ix, iy, 1, 1)
程序_延时 (100)
置剪辑板文本 (数值)
程序_延时 (50)
键盘_组合按键 ( #Ctrl键, #V键 )
程序_延时 (100)
如果真 (全局确认X ≠ 0 全局确认Y ≠ 0)
鼠标_消息 (句柄, 全局确认X, 全局确认Y, 1, 1)
窗口2代码
窗口程序集名保 留  保 留备 注
窗口程序集_窗口_输入   
变量名类 型数组备 注
前缀文本型  
方向文本型  
类型文本型  

子程序名返回值类型公开备 注
_窗口_输入_创建完毕  
变量名类 型静态数组备 注
x整数型 
y整数型 
边框 = 0
宽度 = 180
高度 = 24
窗口_置顶 (取窗口句柄 (), )
' 易语言自带取鼠标位置
x = 取鼠标水平位置 ()
y = 取鼠标垂直位置 ()
左边 = x
顶边 = y - 30
类型 = _启动窗口.当前类型
方向 = _启动窗口.当前方向
前缀 = 方向 + 类型 + “ ”
编辑框_数值.内容 = 前缀
编辑框_数值.起始选择位置 = 取文本长度 (前缀)
编辑框_数值.获取焦点 ()
子程序名返回值类型公开备 注
_窗口_输入_按下某键  
参数名类 型参考可空数组备 注
键代码整数型
功能键状态整数型
变量名类 型静态数组备 注
数值文本型 
如果真 (键代码 = #空格键 )
数值 = 取文本右边 (编辑框_数值.内容, 取文本长度 (编辑框_数值.内容)取文本长度 (前缀))
数值 = 删首尾空 (数值)
如果真 (数值 ≠ “”)
_启动窗口.执行填表 (数值, 类型, 方向)
销毁 ()
返回 ()
' 退格键保护
如果真 (键代码 = #退格键 )
如果真 (编辑框_数值.起始选择位置 ≤ 取文本长度 (前缀))
返回 ()
' Delete键保护
如果真 (键代码 = #Del键 )
如果真 (编辑框_数值.起始选择位置 < 取文本长度 (前缀))
返回 ()
子程序名返回值类型公开备 注
_编辑框_数值_内容被改变  
如果真 (取文本左边 (编辑框_数值.内容, 取文本长度 (前缀)) ≠ 前缀)
编辑框_数值.内容 = 前缀 + 删首尾空 (编辑框_数值.内容)
编辑框_数值.起始选择位置 = 取文本长度 (前缀)
窗口3代码
窗口程序集名保 留  保 留备 注
窗口程序集_窗口_坐标设置   
变量名类 型数组备 注
类型索引整数型  
方向索引整数型  

子程序名返回值类型公开备 注
__窗口_坐标设置_创建完毕  
组合框_类型.加入项目 (“延”, )
组合框_类型.加入项目 (“偏”, )
组合框_类型.现行选中项 = 0
组合框_方向.加入项目 (“上”, )
组合框_方向.加入项目 (“下”, )
组合框_方向.加入项目 (“左”, )
组合框_方向.加入项目 (“右”, )
组合框_方向.加入项目 (“前”, )
组合框_方向.加入项目 (“后”, )
组合框_方向.现行选中项 = 0
刷新显示 ()
子程序名返回值类型公开备 注
_组合框_类型_列表项被选择  
类型索引 = 组合框_类型.现行选中项
刷新显示 ()
子程序名返回值类型公开备 注
_组合框_方向_列表项被选择  
方向索引 = 组合框_方向.现行选中项
刷新显示 ()
子程序名返回值类型公开备 注
刷新显示  
变量名类 型静态数组备 注
序号整数型 
arr坐标组6
序号 = 方向索引 + 1
' 替换掉原来的 如果 (类型索引 = 0) ... 否则 ... 如果结束
如果真 (类型索引 = 0)
arr = _启动窗口.延坐标
如果真 (类型索引 = 1)
arr = _启动窗口.偏坐标
编辑框_输入X.内容 = 到文本 (arr [序号].输入框X)
编辑框_输入Y.内容 = 到文本 (arr [序号].输入框Y)
编辑框_窗口标题.内容 = arr [序号].窗口标题
编辑框_全局X.内容 = 到文本 (_启动窗口.全局确认X)
编辑框_全局Y.内容 = 到文本 (_启动窗口.全局确认Y)
子程序名返回值类型公开备 注
_按钮_保存_被单击  
变量名类 型静态数组备 注
序号整数型 
arr坐标组6
序号 = 方向索引 + 1
' 第一处:读取坐标数组
如果真 (类型索引 = 0)
arr = _启动窗口.延坐标
如果真 (类型索引 = 1)
arr = _启动窗口.偏坐标
' ... 中间保存坐标的代码 ...
' 第二处:写回数组
如果真 (类型索引 = 0)
_启动窗口.延坐标 = arr
如果真 (类型索引 = 1)
_启动窗口.偏坐标 = arr
_启动窗口.全局确认X = 到整数 (编辑框_全局X.内容)
_启动窗口.全局确认Y = 到整数 (编辑框_全局Y.内容)
信息框 (“保存成功!”, 0, “提示”, )
子程序名返回值类型公开备 注
_窗口_坐标设置_创建完毕  
dll命令定义表
DLL命令名返回值类型公开备 注
SetWindowsHookExA 
DLL库文件名:
user32.dll
在DLL库中对应命令名:
SetWindowsHookExA
参数名类 型传址数组备 注
idHook整数型
lpfn子程序指针
hmod整数型
dwThreadId整数型
DLL命令名返回值类型公开备 注
UnhookWindowsHookEx整数型 
DLL库文件名:
user32.dll
在DLL库中对应命令名:
UnhookWindowsHookEx
参数名类 型传址数组备 注
hhk整数型
DLL命令名返回值类型公开备 注
CallNextHookEx整数型 
DLL库文件名:
user32.dll
在DLL库中对应命令名:
CallNextHookEx
参数名类 型传址数组备 注
hhk整数型
nCode整数型
wParam整数型
lParam整数型
DLL命令名返回值类型公开备 注
GetModuleHandle整数型 
DLL库文件名:
kernel32.dll
在DLL库中对应命令名:
GetModuleHandleA
参数名类 型传址数组备 注
lpModuleName整数型


点评

评价是换一个ai,生成的代码什么鬼哟,看的一个头两个大   山东省临沂市  发表于 3 天前
回复

使用道具 举报

结帖率:33% (1/3)
 楼主| 发表于 3 天前 | 显示全部楼层   湖南省湘潭市

是啊  我不会写 我想做个 组合快捷键使用程序 用ai弄得 结果不行  哈哈

点评

写的列子卡审核了。要等等了   山东省临沂市  发表于 前天 00:12
我给你写一个基础模板和列子给你   山东省临沂市  发表于 3 天前
回复

使用道具 举报

结帖率:33% (1/3)
 楼主| 发表于 前天 20:58 | 显示全部楼层   湖南省湘潭市
是永乐哟 发表于 2026-4-30 00:12
直接调用了精易模块,应该不许要我发你模块吧
原理和ai给你生成的是一样的,都是调用系统api
模块给封装 ...

这个太难啦 用文字表达不出意思   能留个QQ方式嘛  我录制了个小视频想请教下你
回复

使用道具 举报

结帖率:94% (17/18)

签到天数: 2 天

发表于 前天 21:00 | 显示全部楼层   山东省临沂市
longtxiao 发表于 2026-4-30 20:58
这个太难啦 用文字表达不出意思   能留个QQ方式嘛  我录制了个小视频想请教下你  ...

可以的qq:3493127343
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报QQ: 793400750,邮箱:wp@125.la
网站简介:精易论坛成立于2009年,是一个程序设计学习交流技术论坛,隶属于揭阳市揭东区精易科技有限公司所有。
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备2025452707号) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表