DimEnv 定义环境变量

文章目录
  1. 1. 功能
  2. 2. 语法
  3. 3. 参数
  4. 4. 返回值
  5. 5. 示例
  6. 6. 备注

功能

定义环境变量, 该变量作用范围是整个按键精灵进程, 只要按键精灵不关闭, 那么值会一直保存最后一次赋值内容, 另外多个脚本共用相同的环境变量

语法

DimEnv 变量名

参数

参数 数据类型 解释
变量名 标识符 任意有效标识符

返回值

示例

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
Dim a
Dimenv env_a, env_b(1)
a = "普通变量"
env_a = "环境变量"
env_b(0) = "环境数组0"
env_b(1) = "环境数组1"

TracePrint "主线程中a = " & a
TracePrint "主线程中env_a = " & env_a
TracePrint "主线程中env_b(0) = " & env_b(0)
TracePrint "主线程中env_b(1) = " & env_b(1)

BeginThread 线程取值
Delay 1000
TracePrint "修改后主线程中a = " & a
TracePrint "修改后主线程中env_a = " & env_a
TracePrint "修改后主线程中env_b(0) = " & env_b(0)
TracePrint "修改后主线程中env_b(1) = " & env_b(1)


Sub 线程取值()
TracePrint "子线程中a = " & a
TracePrint "子线程中env_a = " & env_a
TracePrint "子线程中env_b(0) = " & env_b(0)
TracePrint "子线程中env_b(1) = " & env_b(1)

TracePrint "子线程修改值"
a = "修改后a"
env_a = "修改后环境a"
env_b(0) = "修改后环境数组0"
env_b(1) = "修改后环境数组1"

TracePrint "修改后子线程中a = " & a
TracePrint "修改后子线程中env_a = " & env_a
TracePrint "修改后子线程中env_b(0) = " & env_b(0)
TracePrint "修改后子线程中env_b(1) = " & env_b(1)
End Sub
1
2
3
4
5
6
7
8
9
Dimenv 环境变量
//请分4次调试运行
//第1次正常执行这3行代码
//第2次请注释或删掉 环境变量=100, 仅保留定义环境变量与输出这两句代码
//第3次请新建脚本, 仅写定义环境变量与输出这两句代码
//第4次请彻底关闭按键精灵后, 重新打开按键精灵, 并执行定义环境变量与输出这两句代码
//注意每次执行后的环境变量输出结果
环境变量 = 100
TracePrint 环境变量

备注

  • Global 定义全局变量DimEnv 定义环境变量Dim 定义变量 的区别如下
    • Dim 作用域最小, 仅对当前子程序或当前线程有效, Global 作用域为当前脚本所有线程, DimEnv 作用域最大, 对按键精灵所有脚本有效
    • DimGlobal 在停止脚本后数据会被清除, 但 DimEnv 只有彻底关闭按键精灵软件后数据才会被清除
    • 作用域越小的变量, 访问数据速度越快