![]() |
![]() ![]() ![]() ![]() |
|
Получение имени файла из его ярлыкаDelphi , Файловая система , Ярлыки
Автор: VID
{ **** UBPFD *********** by delphibase.endimus.com ****
>>
В параметре LinkFileName необходимо указать полное имя файлы-ярлыка.
Функция возвратит полное имя файла, на который ссылается рассматриваемый ярлык
Зависимости: ComObj, SysUtils, Windows, ActiveX, System, ShlObj
Автор: VID, vidsnap@mail.ru, ICQ:132234868, Махачкала
Copyright: некий FAQ... не помню какой
Дата: 27 апреля 2002 г.
***************************************************** }
function GetFileNamefromLink(LinkFileName: string): string;
var
MyObject: IUnknown;
MySLink: IShellLink;
MyPFile: IPersistFile;
FileInfo: TWin32FINDDATA;
WidePath: array[0..MAX_PATH] of WideChar;
Buff: array[0..MAX_PATH] of Char;
begin
Result := '';
if (fileexists(Linkfilename) = false) then
exit;
MyObject := CreateComObject(CLSID_ShellLink);
MyPFile := MyObject as IPersistFile;
MySLink := MyObject as IShellLink;
StringToWideChar(LinkFileName, WidePath, SizeOf(WidePath));
MyPFile.Load(WidePath, STGM_READ);
MySLink.GetPath(Buff, Max_PATH, FileInfo, SLGP_UNCPRIORITY);
Result := buff;
end;
Программный функционал Delphi для извлечения имени файла из ярлыка! Код структурирован и легко понятен. Он использует объекты COM для взаимодействия с компонентом Windows Shell Link. Вот шаг за шагом, что код делает:
Код использует некоторые константы из Windows API:
Функция использует некоторые типы и переменные, специфические для Delphi:
В целом, эта функция является хорошим примером использования объектов COM и функций Windows API в Delphi для взаимодействия с ярлыками. Представлен функцией GetFileNamefromLink, которая получает имя файла из его ярлыка, указанного в параметре LinkFileName. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 | ||||