Как узнать имя файла из ярлыка
Автор: i-s-v
WEB-сайт: http://isv.iatp.org.ua
function NameFromLink(const lnk: string): string;
var
MyObject: IUnknown;
MySLink: IShellLink;
MyPFile: IPersistFile;
c: PChar;
pfd: _WIN32_FIND_DATAA;
begin
Result := '';
try
MyObject := CreateComObject(CLSID_ShellLink);
MySLink := MyObject as IShellLink;
MyPFile := MyObject as IPersistFile;
if MyPFile.Load(Pointer(WideString(lnk)), OF_READ) <> S_OK then
exit;
c := PChar(lnk);
MySLink.GetPath(c, MAX_PATH, pfd, 0);
Result := string(c);
except
end;
end;
|