FileGetShortcut


获取某个快捷方式(.lnk)文件的信息,比如它的目标文件。

FileGetShortcut, LinkFile [, OutTarget, OutDir, OutArgs, OutDescription, OutIcon, OutIconNum, OutRunState]

参数

LinkFile 待分析的快捷方式文件名,如果未指定绝对路径,则假定文件在 %A_WorkingDir% 目录下。须确认文件包括 .lnk 扩展名。
OutTarget 用于保存快捷方式的目标的变量名(不包括任何可能带有的参数)。比如: C:\WINDOWS\system32\notepad.exe
OutDir 用于保存快捷方式工作目录的变量名。比如: C:\My Documents。如果字符串中存在环境变量(如 %WinDir%),一种解决方法是用 StringReplace。比如: StringReplace, OutDir, OutDir, `%WinDir`%, %A_WinDir%
OutArgs 用于保存快捷方式参数的变量名(若无则为空)。
OutDescription 用于保存快捷方式说明的变量名(若无则为空)。
OutIcon 用于保存快捷方式图标文件名的变量名(若无则为空)。
OutIconNum 用于保存快捷方式的图标在图标文件中的序号的变量名(若无则为空)。该值通常为 1,表示第一个图标。
OutRunState

用于保存快捷方式启动时的初始状态的变量名,其值为以下数字之一:

1: 标准
3: 最大化
7: 最小化

ErrorLevel

如果有问题,比如 LinkFile 不存在,则所有输出变量被置为空,同时 ErrorLevel 被置为 1。否则 ErrorLevel 为 0。

注意

如果不需要输出变量提供的相应信息,可将其省略。

相关命令

FileCreateShortcut, SplitPath

示例

FileSelectFile, file, 32,, 选择待分析的快捷方式。, 快捷方式 (*.lnk)
if file =
    return
FileGetShortcut, %file%, OutTarget, OutDir, OutArgs, OutDesc, OutIcon, OutIconNum, OutRunState
MsgBox %OutTarget%`n%OutDir%`n%OutArgs%`n%OutDesc%`n%OutIcon%`n%OutIconNum%`n%OutRunState%

翻译:甲壳虫<jdchenjian@gmail.com>