易语言枚举桌面快捷方式信息源码
.版本 2
.支持库 iext
.子程序 _按钮1_被单击
.局部变量 lnk, 文本型
超级列表框1.全部删除 ()
桌面 = 取桌面目录 ()
lnk = 寻找文件 (桌面 + “*.lnk”, )
.判断循环首 (lnk ≠ “”)
取快捷方式信息 (桌面 + lnk, &回调子程序)
lnk = 寻找文件 (, )
.判断循环尾 ()
.子程序 回调子程序
.参数 lnk_路径文件名, 文本型
.参数 指向文件, 文本型
.参数 快捷键, 文本型
.参数 运行方式, 文本型
.参数 备注, 文本型
.局部变量 N
lnk_路径文件名 = 子文本替换 (lnk_路径文件名, 桌面, “”, , , 真)
N = 超级列表框1.插入表项 (, , , , , ) - 1
超级列表框1.置标题 (N, 0, lnk_路径文件名)
超级列表框1.置标题 (N, 1, 指向文件)
超级列表框1.置标题 (N, 2, 快捷键)
超级列表框1.置标题 (N, 3, 运行方式)
超级列表框1.置标题 (N, 4, 备注)
.子程序 取快捷方式信息, , 公开
.参数 lnk_路径文件名, 文本型
.参数 信息回调, 子程序指针, 可空
.局部变量 Shell, 对象
.局部变量 Shell2, 对象
.局部变量 lnk, 文本型
.局部变量 指向文件, 文本型
.局部变量 快捷键, 文本型
.局部变量 运行方式, 整数型
.局部变量 备注, 文本型
.局部变量 方式, 文本型, , "0"
方式 = { “常规方式”, “”, “最大化”, “”, “”, “”, “最小化” }
.如果真 (Shell.创建 (“WshShell”, “wshom.ocx”))
Shell2 = Shell.对象型方法 (“CreateShortcut”, lnk_路径文件名)
指向文件 = Shell2.文本方法 (“TargetPath”, )
快捷键 = Shell2.文本方法 (“Hotkey”, )
运行方式 = Shell2.读数值属性 (“WindowStyle”, )
备注 = Shell2.文本方法 (“Description”, )
Shell.清除 ()
Shell2.清除 ()
快捷键 = 选择 (快捷键 = “”, “无”, 快捷键)
CALL (到整数 (信息回调), 取文本指针 (lnk_路径文件名), 取文本指针 (指向文件), 取文本指针 (快捷键), 取文本指针 (方式 [运行方式]), 取文本指针 (备注))
.如果真结束