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

Вниз

Как прочитать ссылку, на которую ссылается ink-файл (файл ярлыка)   Найти похожие ветки 

 
Volf_555   (2006-01-21 19:12) [0]

Делаю прогу-мониторинг автозагрузки реестра. Столкнулся с проблемой извлечения ссылки с *.ink - файла, то есть с файла ярлыка. Каким образом мне это сделать?


 
tesseract ©   (2006-01-21 19:17) [1]

Не пробовал открыть его в hex-editorе. Позновательно :-)
Также можно поискать формат файла на whatisit.


 
Volf_555   (2006-01-21 19:25) [2]

Что позновательно - это точно :-)

Но мне необходимо прочитать ссылку....


 
Volf_555   (2006-01-21 19:27) [3]


> Также можно поискать формат файла на whatisit.

Дай ссылку


 
Volf_555   (2006-01-21 19:42) [4]

Нашёл следующую функцию, которая работает с небольшими сбоями.
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;

Может кто подскажет какие модули надо подключить для нормальной работы функции?


 
tesseract ©   (2006-01-21 19:42) [5]

http://www.wotsit.org/download.asp?f=shortcut


 
Volf_555   (2006-01-21 19:55) [6]


> tesseract ©   (21.01.06 19:42) [5]
> http://www.wotsit.org/download.asp?f=shortcut

Информация про структуру ярлыков интересная, но примерчика там нету...


 
tesseract ©   (2006-01-21 19:57) [7]

ShlObj


 
Volf_555   (2006-01-21 20:00) [8]

Всё заработало - спасибо!

Только *.pif - файлы не берёт.... Это тоже файл ярлыка, только для DOS


 
GuAV ©   (2006-01-21 20:02) [9]

http://support.microsoft.com/default.aspx?scid=kb;en-us;130698


 
Volf_555   (2006-01-21 20:27) [10]

GetLinkInfo() - прописан на С++, как на Delphi перекомпилировать? :-)


 
tesseract ©   (2006-01-21 20:38) [11]

Переписать.
Volf тебе Wotsit не понравился? :-)


 
Volf_555   (2006-01-21 20:41) [12]


> Volf тебе Wotsit не понравился? :-)

Понравился, то понравился :-)
Но необходимой инфы по Delphi не получил. Там описана структура ярлыка... Но не про Delphi :)



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

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

Наверх




Память: 0.49 MB
Время: 0.062 c
1-1137519687
студент России
2006-01-17 20:41
2006.02.19
помогите голодному студенту !


2-1138995616
t0mk4
2006-02-03 22:40
2006.02.19
Как обеспечит безперерывную передачю данных..


3-1135322035
SeZuka
2005-12-23 10:13
2006.02.19
Отлючение триггера


15-1138686123
Барлог(с)
2006-01-31 08:42
2006.02.19
PS/2 -> COM


2-1138892204
Silver__Dragon
2006-02-02 17:56
2006.02.19
Перехват нажатия Minimize