Delphi-Help

  • Increase font size
  • Default font size
  • Decrease font size
Главная Статьи Ярлыки Как получить имя файла из его ярлыка?

Как получить имя файла из его ярлыка?

Оцените материал
(0 голосов)

Как получить имя файла из его ярлыка?

uses
  ..., ShlObj, ComObj, ActiveX;
 
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;
 
procedure TForm1.Button1Click(Sender: TObject);
begin
   ShowMessage( GetFileNameFromLink( 'C:\NOTEPAD.lnk' ) );
end;
Прочитано 5361 раз

Авторизация



Счетчики