# FileGetShortcut

获取快捷方式(.lnk) 文件的信息, 例如其目标文件.

    FileGetShortcut LinkFile , &OutTarget, &OutDir, &OutArgs, &OutDescription, &OutIcon, &OutIconNum, &OutRunState

## 参数

LinkFile

  类型: 字符串

  要分析的快捷方式文件名, 如果未指定绝对路径则假定在 A_WorkingDir. 必须确保扩展名为 .lnk.

&OutTarget

  类型: VarRef

  用来存储快捷方式目标的变量的引用(不包含它可能含有的任何参数). 例如: C:\WINDOWS\system32\notepad.exe

&OutDir

  类型: VarRef

  用来保存快捷方式工作目录的变量的引用. 例如: C:\My Documents. 如果在字符串中存在像 %WinDir% 这样的环境变量, 那么解决它们的一种方法是使用 StrReplace. 例如: `OutDir := StrReplace(OutDir, "%WinDir%", A_WinDir)`

&OutArgs

  类型: VarRef

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

&OutDescription

  类型: VarRef

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

&OutIcon

  类型: VarRef

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

&OutIconNum

  类型: VarRef

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

&OutRunState

  类型: VarRef

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

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

## 错误处理

失败时抛出 OSError.

## 备注

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

## 相关

FileCreateShortcut, SplitPath

## 示例

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

    LinkFile := FileSelect(32,, "Pick a shortcut to analyze.", "Shortcuts (*.lnk)")
    if LinkFile = ""
        return
    FileGetShortcut LinkFile, &OutTarget, &OutDir, &OutArgs, &OutDesc, &OutIcon, &OutIconNum, &OutRunState
    MsgBox OutTarget "`n" OutDir "`n" OutArgs "`n" OutDesc "`n" OutIcon "`n" OutIconNum "`n" OutRunState

dftg