易语言电脑屏幕锁定工具源码
DLLL命令表
.版本 2
.DLL命令 安装钩子, 整数型, , "SetWindowsHookExA"
.参数 ihook, 整数型
.参数 lpfunc, 子程序指针
.参数 hin, 整数型
.参数 threadid, 整数型
.DLL命令 卸载钩子, 整数型, , "UnhookWindowsHookEx"
.参数 hHook, 整数型
.DLL命令 下一个钩子, 整数型, , "CallNextHookEx"
.参数 hHook, 整数型
.参数 icode, 整数型
.参数 wParam, 整数型
.参数 lParam, 整数型
.DLL命令 CopyMemory, , , "RtlMoveMemory"
.参数 Destination, 按键信息, 传址
.参数 Source, 整数型
.参数 cbCopy, 整数型
.DLL命令 GetModuleHandleA, 整数型, , "GetModuleHandleA"
.参数 lpModuleName, 整数型
.DLL命令 SetWindowPos, 整数型, "user32"
.参数 HWnd, 整数型
.参数 hWndInsertAfter, 整数型
.参数 X, 整数型
.参数 Y, 整数型
.参数 cx, 整数型
.参数 cy, 整数型
.参数 wFlags, 整数型
自定义数据类型表
.版本 2
.数据类型 按键信息
.成员 虚拟码, 整数型
.成员 扫描码, 整数型
.成员 标记, 整数型
.成员 时间, 整数型
.成员 额外信息, 整数型
锁屏框
.版本 2
.支持库 eAPI
.程序集 窗口程序集1
.程序集变量 钩子句柄, 整数型
.子程序 _编辑框_解锁密码框_内容被改变
标签2.标题 = “屏幕锁定中。。。”
标签2.文本颜色 = #银白
.子程序 _窗口1_锁屏框_创建完毕
设置窗口透明度 (取窗口句柄 (), 250)
窗口1_锁屏框.左边 = 0
窗口1_锁屏框.顶边 = 0
窗口1_锁屏框.宽度 = 取屏幕宽度 ()
窗口1_锁屏框.高度 = 取屏幕高度 ()
图片框1.左边 = 取屏幕宽度 () ÷ 2 - 图片框1.宽度 ÷ 2
图片框1.顶边 = 取屏幕高度 () ÷ 2 - 图片框1.高度 ÷ 2
注册屏蔽 ()
.子程序 窗口总在最前
.参数 参_窗口句柄, 整数型
SetWindowPos (参_窗口句柄, -1, 0, 0, 0, 0, 位或 (2, 1))
.子程序 _图形按钮1_被单击
_按钮1_被单击 ()
.子程序 _按钮1_被单击
.如果 (编辑框_解锁密码框.内容 = “”)
标签2.标题 = “未输入密码,请重新输入!”
标签2.文本颜色 = #红色
.否则
.如果 (编辑框_解锁密码框.内容 = “123”)
解除屏蔽 ()
结束 ()
.否则
.如果 (编辑框_解锁密码框.内容 ≠ _启动窗口.编辑框_重复密码框.内容)
标签2.标题 = “密码不正确,请重新输入!”
标签2.文本颜色 = #红色
.否则
.如果 (编辑框_解锁密码框.内容 = _启动窗口.编辑框_重复密码框.内容)
解除屏蔽 ()
结束 ()
.否则
.如果结束
.如果结束
.如果结束
.如果结束
.子程序 钩子函数, 整数型
.参数 icode, 整数型
.参数 wparam, 整数型
.参数 lparam, 整数型
.局部变量 按键信息, 按键信息
CopyMemory (按键信息, lparam, 30)
.如果真 (icode = 0)
.如果真 (按键信息.虚拟码 = 91 或 按键信息.虚拟码 = 92) ' 屏蔽Win键
.判断开始 (wparam = 256)
输出调试文本 (“按下Win键!”)
.默认
输出调试文本 (“弹起Win键!”)
.判断结束
返回 (1)
.如果真结束
.如果真 (按键信息.虚拟码 = 27 且 按键信息.扫描码 = 1) ' 屏蔽crlt+Esc
返回 (1)
.如果真结束
.如果真 (按键信息.虚拟码 = 115 且 按键信息.扫描码 = 62) ' 屏蔽alt+f4
返回 (1)
.如果真结束
.如果真 (按键信息.虚拟码 = 9 且 按键信息.扫描码 = 15) ' 屏蔽alt+TAB
返回 (1)
.如果真结束
.如果真 (按键信息.虚拟码 = 32 且 按键信息.扫描码 = 57) ' 屏蔽crlt+空格 左边
返回 (1)
.如果真结束
.如果真 (按键信息.虚拟码 = 161 且 按键信息.扫描码 = 54) ' 屏蔽crlt+空格 右边
返回 (1)
.如果真结束
.如果真 (按键信息.虚拟码 = 160 且 按键信息.扫描码 = 42) ' 屏蔽crlt+SHIFT
返回 (1)
.如果真结束
.如果真 (按键信息.虚拟码 = 46 且 按键信息.扫描码 = 83) ' 屏蔽CAL_DEL_ALT
返回 (1)
.如果真结束
.如果真结束
返回 (下一个钩子 (钩子句柄, icode, wparam, lparam))
.子程序 注册屏蔽
.如果真 (钩子句柄 = 0)
钩子句柄 = 安装钩子 (13, &钩子函数, GetModuleHandleA (0), 0)
.如果 (钩子句柄 ≠ 0)
输出调试文本 (“注册钩子成功!”)
.否则
输出调试文本 (“注册钩子失败!”)
.如果结束
.如果真结束
.子程序 解除屏蔽
.如果真 (钩子句柄 ≠ 0)
.如果 (卸载钩子 (钩子句柄) ≠ 0)
输出调试文本 (“缷载钩子成功!”)
.否则
输出调试文本 (“缷载钩子失败!”)
.如果结束
.如果真结束
.子程序 _时钟1_周期事件
窗口总在最前 (取窗口句柄 ())
锁屏
.版本 2
.支持库 eAPI
.程序集 窗口程序集2
.子程序 __启动窗口_创建完毕
设置窗口透明度 (取窗口句柄 (), 245)
.子程序 _图形按钮1_被单击
_按钮1_被单击 ()
.子程序 _按钮1_被单击
.如果 (编辑框_密码框.内容 ≠ 编辑框_重复密码框.内容)
标签_提示.标题 = “密码不一致,请重新输入!”
标签_提示.文本颜色 = #红色
.否则
.如果 (编辑框_密码框.内容 = “”)
标签_提示.标题 = “未输入密码,请重新输入!”
标签_提示.文本颜色 = #红色
.否则
_启动窗口.可视 = 假
载入 (窗口1_锁屏框, , 真)
.如果结束
.如果结束
.子程序 _编辑框_密码框_内容被改变
标签_提示.标题 = “请输入密码后继续:”
标签_提示.文本颜色 = #白色
.子程序 _编辑框_重复密码框_内容被改变
标签_提示.标题 = “请输入密码后继续:”
标签_提示.文本颜色 = #白色
.子程序 _图形按钮_最小化_被单击
_启动窗口.位置 = 2
.子程序 _图形按钮_关闭_被单击
销毁 ()
运行结果:
总结
以上是 易语言电脑屏幕锁定工具源码 的全部内容, 来源链接: utcz.com/z/349608.html