# 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% 这样的环境变量, 那么解决它们的一种方法是使用 StrReplace() 或 StringReplace. 例如: `StringReplace, OutDir, OutDir, `%WinDir`%, %A_WinDir%`.

OutArgs

  用来保存快捷方式参数的变量名(如果没有则为空).

OutDescription

  用来保存快捷方式注释的变量名(如果没有则为空).

OutIcon

  用来保存快捷方式图标文件名的变量名(如果没有则为空).

OutIconNum

  用来保存快捷方式图标在图标文件中编号的变量名(如果没有则为空). 这个值通常为 1, 表示首个图标.

OutRunState

  用来存储快捷方式初始运行方式的变量名, 其值为下列数字的其中一个:

  - 1 = 普通
  - 3 = 最大化
  - 7 = 最小化

## 错误处理

[v1.1.04+]: 此命令失败时会抛出异常. 想了解更多信息, 请参阅运行时错误.

如果遇到问题(例如 LinkFile 不存在), 则所有的输出变量被置空且 ErrorLevel 被置为 1. 否则, ErrorLevel 被置为 0.

## 备注

如果不需要相应的信息, 则可以省略相应的输出变量.

## 相关

FileCreateShortcut, SplitPath

## 示例

允许用户选择一个 .lnk 文件来显示其信息.

    FileSelectFile, file, 32,, Pick a shortcut to analyze., Shortcuts (*.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%

dftg