Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2012.05.20;
Скачать: CL | DM;

Вниз

Извлечение объекта из lnk-файла   Найти похожие ветки 

 
webpauk ©   (2009-10-30 15:32) [0]

Как извлечь имя файла (объект) на который ссылается lnk-файл?


 
Leonid Troyanovsky ©   (2009-10-30 16:26) [1]


> webpauk ©   (30.10.09 15:32)
 
> Как извлечь имя файла (объект) на который ссылается lnk-
> файл?

А имя зачем потребовалось? Я к чему, если запустить,
то можно примерно так:
http://groups.google.com/group/fido7.ru.delphi/msg/83a2491e6033dfcd

Ну, а имя файла можно в свойствах IShellFolder, ЕМНИП, поискать.

--
Regards, LVT.


 
webpauk ©   (2009-10-30 16:42) [2]

предположим, ярлык удалили. но объект то остался?
вот для чего нужен именно объект, на который ссылается lnk


 
webpauk ©   (2009-10-30 17:02) [3]

нашел


uses
 ShlObj, ActiveX;

function GetTarget(const LinkFileName: String; out Str:String): Boolean;
var
 psl: IShellLink;
 ppf: IPersistFile;
 WidePath: Array[0..260] of WideChar;
 Info: Array[0..MAX_PATH] of Char;
 wfs: TWin32FindData;
begin
Result:=false;
if UpperCase(ExtractFileExt(LinkFileName)) <> ".LNK" Then
begin
  Str:="NOT a shortuct by extension!";
  Exit;
end;

CoCreateInstance(CLSID_ShellLink, nil, CLSCTX_INPROC_SERVER, IShellLink, psl);
if psl.QueryInterface(IPersistFile, ppf) = 0 then
begin
  MultiByteToWideChar(CP_ACP, MB_PRECOMPOSED, PChar(LinkFileName), -1, @WidePath, MAX_PATH);
  ppf.Load(WidePath, STGM_READ);
  psl.GetPath(@info, MAX_PATH, wfs, SLGP_UNCPRIORITY);
  Str := info;
  Result:=True;
end
else Str := "";
end;


 
Anatoly Podgoretsky ©   (2009-10-30 20:05) [4]

> webpauk  (30.10.2009 16:42:02)  [2]

Смешно, ярлык удалили, но из него надо изъять информацию.



Страницы: 1 вся ветка

Текущий архив: 2012.05.20;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.007 c
2-1326739475
Anthony
2012-01-16 22:44
2012.05.20
Коррекция ширины колонки в TStringGrid - не работает...


2-1326879377
Wadim
2012-01-18 13:36
2012.05.20
Подскажите насчет потоков Thread


4-1257109119
Maksim V.
2009-11-01 23:58
2012.05.20
Запретить DrawFocusRect. при отрисовке строк Listbox


15-1326493250
KilkennyCat
2012-01-14 02:20
2012.05.20
Китайское DVD-плееро. Модернизация.


15-1326573005
Юрий
2012-01-15 00:30
2012.05.20
С днем рождения ! 15 января 2012 воскресенье