Вытащить ссылку из файла .lnk - C#
Формулировка задачи:
Есть ярлык Data.lnk, и ссылается он например на \\server\data. Как эту ссылку вытащить?
Решение задачи: «Вытащить ссылку из файла .lnk»
textual
Листинг программы
public static string ResolveShortcut(string filename)
{
ShellLink link = new ShellLink();
((IPersistFile)link).Load(filename, STGM_READ);
// TODO: if I can get hold of the hwnd call resolve first. This handles moved and renamed files.
// ((IShellLinkW)link).Resolve(hwnd, 0)
StringBuilder sb = new StringBuilder(MAX_PATH);
WIN32_FIND_DATAW data = new WIN32_FIND_DATAW();
((IShellLinkW)link).GetPath(sb, sb.Capacity, out data, 0);
return sb.ToString();
}