Путь к файлу из ярлыка. Delphi
Простая процедура которая достает путь к файлу с ярлыка.
Код полностью рабочий.
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,ComObj, StdCtrls,TLHelp32,ShlObj,ActiveX;
type
TForm1 = class (TForm)
Button1: TButton;
ListBox1: TListBox;
procedure Button1Click (Sender: TObject);
private
procedure InfLink (const Path: string);
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
//из ярлыка достать путь
procedure tform1.InfLink (const Path: string);
var Link: IShellLink;
S: array[0..255] of char;
pfd: TWin32FindData;
fFlags: DWord;
Hotkey: Word;
ShowCmd: integer;
begin
Link := CreateComObject (CLSID_ShellLink) as IShellLink;
if ((Link as IPersistFile).Load (PWChar (WideString (Path)), 0) = S_OK ) then
with Link do with ListBox1.Items do
begin
GetPath (S, 256, pfd, fFlags);
Add (S);
end;
end;
procedure TForm1.Button1Click (Sender: TObject);
begin
//после нажатия на кнопку в listbox1 добавляется строка с адресом файла.
InfLink ('C:\Documents and Settings\ruslan.MONTAGG\Recent\10.33.0.99.rdp.lnk');
end;
end.