窗口程序集名 | 保 留 | 保 留 | 备 注 |
桌面右键菜单 | | | |
变量名 | 类 型 | 数组 | 备 注 |
注册表 | 注册表操作Ex | |
|
桌面右键菜单_创建SP | 整数型 | |
|
主菜单名 | 文本型 | | | |
主菜单软件路径 | 文本型 | | | | 二级菜单名称 | 文本型 | | | | 二级软件路径 | 文本型 | | | | 主菜单图标 | 字节集 | | | | 二级菜单图标 | 字节集 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 |
i | 整数型 | | |
二级菜单数量 | 整数型 | | |
SubCommands关联项 | 文本型 | | |
判断 (取数组成员数 (二级菜单名称
) = 0
) 
注册表.
写入键值Ex_文本 ( #HKEY_CLASSES_ROOT, “Directory\Background\shell\” + 主菜单名,
“Icon”, 主菜单图标,
#REG_SZ, 真)
返回 (注册表.
写入键值Ex_文本 ( #HKEY_CLASSES_ROOT, “Directory\Background\shell\” + 主菜单名 +
“\command\”,
“”,
到字节集 (主菜单软件路径
),
#REG_SZ, 真))



判断 (取数组成员数 (二级菜单名称
) ≠
取数组成员数 (二级软件路径
))
返回 (110
) 


二级菜单数量 =
取数组成员数 (二级菜单名称
)
重定义数组 (二级菜单图标, 真, 二级菜单数量
)
变量循环首 (1, 二级菜单数量, 1, i
)


注册表.
写入键值Ex_文本 ( #HKEY_LOCAL_MACHINE, “SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\desm_MyMenu” +
到文本 (i
),
“Icon”, 二级菜单图标
[i
],
#REG_SZ, 真) 

注册表.
写入键值Ex_文本 ( #HKEY_LOCAL_MACHINE, “SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\desm_MyMenu” +
到文本 (i
),
“”,
到字节集 (二级菜单名称
[i
]),
#REG_SZ, 真) 

注册表.
写入键值Ex_文本 ( #HKEY_LOCAL_MACHINE, “SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\desm_MyMenu” +
到文本 (i
) +
“\command”,
“”,
到字节集 (二级软件路径
[i
]),
#REG_SZ, 真) 

SubCommands关联项 = SubCommands关联项 +
“desm_MyMenu” +
到文本 (i
) +
“;”
变量循环尾 ()

注册表.
写入键值Ex_文本 ( #HKEY_CLASSES_ROOT, “Directory\Background\shell\” + 主菜单名,
“Icon”, 主菜单图标,
#REG_SZ, 真)
返回 (注册表.
写入键值Ex_文本 ( #HKEY_CLASSES_ROOT, “Directory\Background\shell\” + 主菜单名,
“SubCommands”,
到字节集 (SubCommands关联项
),
#REG_SZ, 真))


变量名 | 类 型 | 静态 | 数组 | 备 注 |
rev | 注册表_键 | | |
关联的二级菜单项目 | 文本型 | | 0 |
i | 整数型 | | |
注册表.
打开键Ex ( #HKEY_CLASSES_ROOT, “Directory\Background\shell\” + 主菜单名
)注册表.
读取键值Ex ( #HKEY_CLASSES_ROOT, “Directory\Background\shell\” + 主菜单名,
“SubCommands”, rev
)注册表.
关闭键Ex ()关联的二级菜单项目 =
分割文本 (字节集_到文本 (rev.键值
),
“;”,
)
如果真 (取数组成员数 (关联的二级菜单项目
) > 0
) 
变量循环首 (1,
取数组成员数 (关联的二级菜单项目
), 1, i
)

注册表.
删除注册表项 ( #HKEY_LOCAL_MACHINE, “SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\” + 关联的二级菜单项目
[i
] +
“\command”) 

注册表.
删除注册表项 ( #HKEY_LOCAL_MACHINE, “SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\” + 关联的二级菜单项目
[i
])
变量循环尾 ()
注册表.
关闭键Ex ()注册表.删除注册表项 ( #HKEY_CLASSES_ROOT, “Directory\Background\shell\” + 主菜单名 + “\command”)注册表.
删除注册表项 ( #HKEY_CLASSES_ROOT, “Directory\Background\shell\” + 主菜单名
)