我正在尝试使用文件对话框获取快捷方式的路径。这是我的代码的摘录,以说明我在做什么:
IFileOpenDialog *pfod = NULL;
IShellItem *psiResult;
PWSTR pszFilePath = NULL;
....
pfod->Show(NULL);
pfod->GetResult(&psiResult);
psiResult->GetDisplayName(SIGDN_FILESYSPATH, &pszFilePath);
例如,当我在文件对话框中选择快捷方式时,<some path>\Internet.lnk
对 GetDisplayName 的调用会返回快捷方式的目标C:\Program Files(x86)\Internet Explorer\iexplorer.exe
。我想获得快捷方式的路径,即 .lnk 文件。