Autor Beitrag
Tino
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Veteran
Beiträge: 9839
Erhaltene Danke: 45

Windows 8.1
Delphi XE4
BeitragVerfasst: Mo 22.07.02 12:13 
Diese Beispiel von Kevin s. Gallagher zeigt wie man eine Dateiverknüpfung im Dateisystem erstellt:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
Uses
  ShlObj, ActiveX, ComObj;

procedure CreateLink (Target, Args, WorkDir, ShortCutName, Icon: String; IconNo: Integer);
var
  IObj: IUnknown;
  Link: IShellLink;
  IPFile: IPersistFile;
  TargetW: WideString;
begin
  IObj := CreateComObject (CLSID_ShellLink);
  Link := IObj as IShellLink;
  IPFile := IObj as IPersistFile;

  with Link do
  begin
    SetPath (PChar (Target));
    SetArguments (PChar (Args));
    SetShowCmd (SW_SHOWMINIMIZED);
    SetWorkingDirectory (PChar (WorkDir));
    SetIconLocation (PChar (Icon), IconNo);
  end;

  TargetW := ShortCutName;
  IPFile.Save (PWChar (TargetW), False);
End;

So kann z. B. die Procedure aufgerufen werden:
ausblenden Delphi-Quelltext
1:
CreateLink ('c:\test.txt''''''d:\test.lnk'''0);					

Möchte man außerdem noch ein spezielles Icon für die Verknüpfung benutzen kann man den Dateinamen des Icons als Parameter übergeben:
ausblenden Delphi-Quelltext
1:
CreateLink ('c:\test.txt''''''d:\test.lnk''c:\icon.ico'0);