易语言电脑屏幕锁定工具源码

时间:2021-11-26 23:47:54

DLLL命令表

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
.版本 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, 整数型

自定义数据类型表

?
1
2
3
4
5
6
7
.版本 2
.数据类型 按键信息
  .成员 虚拟码, 整数型
  .成员 扫描码, 整数型
  .成员 标记, 整数型
  .成员 时间, 整数型
  .成员 额外信息, 整数型

锁屏框

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
.版本 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_周期事件
窗口总在最前 (取窗口句柄 ())

锁屏

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
.版本 2
.支持库 eAPI
.程序集 窗口程序集2
.子程序 __启动窗口_创建完毕
设置窗口透明度 (取窗口句柄 (), 245)
.子程序 _图形按钮1_被单击
_按钮1_被单击 ()
.子程序 _按钮1_被单击
.如果 (编辑框_密码框.内容 ≠ 编辑框_重复密码框.内容)
  标签_提示.标题 = “密码不一致,请重新输入!”
  标签_提示.文本颜色 = #红色
.否则
  .如果 (编辑框_密码框.内容 = “”)
    标签_提示.标题 = “未输入密码,请重新输入!”
    标签_提示.文本颜色 = #红色
  .否则
    _启动窗口.可视 = 假
    载入 (窗口1_锁屏框, , 真)
  .如果结束
.如果结束
.子程序 _编辑框_密码框_内容被改变
标签_提示.标题 = “请输入密码后继续:”
标签_提示.文本颜色 = #白色
.子程序 _编辑框_重复密码框_内容被改变
标签_提示.标题 = “请输入密码后继续:”
标签_提示.文本颜色 = #白色
.子程序 _图形按钮_最小化_被单击
_启动窗口.位置 = 2
.子程序 _图形按钮_关闭_被单击
销毁 ()

运行结果:

易语言电脑屏幕锁定工具源码

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对服务器之家的支持。如果你想了解更多相关内容请查看下面相关链接