Hallo,
meine Anwendung ist nun so gut wie fertig. Habe mir noch ein eigenes Setup zusammen geschoben (sprich das entpacken von CD auf die Festplatte). Was mir zu meinen Glück noch fehlt, ist eine Verknüpfung auf dem Desktop.
Eines vorweg. Eine Verknüpfung konnte ich schon erfolgreich in jeden beliebigen ("normalen") Ordner erstellen.
Delphi-Quellcode:
uses ShlOBJ,
ActiveX, ComObj;
function CreateLink(Source,Target,Beschreibung:
string):Boolean;
var psl : IShellLink;
ppf : IPersistFile;
const
IID_IPersistFile:
TGUID = (D1:$0000010B;
D2:$0000;
D3:$0000;
D4:($C0,$00,$00,$00,$00,$00,$00,$46));
begin
result := False;
if SUCCEEDED(CoCreateInstance(CLSID_ShellLink,
nil, CLSCTX_INPROC_SERVER, IID_IShellLinkA, psl))
then begin
psl.SetPath(PChar(Source));
psl.SetDescription(PChar(Beschreibung));
if SUCCEEDED(psl.QueryInterface(IID_IPersistFile,ppf))
then begin
ppf.Save(StringToOLEStr(Target),TRUE);
Result := true;
end;
end;
end;
procedure TStart.Button2Click(Sender: TObject);
begin
CreateLink('
C:\Test2\Project.exe','
C:\Test2\Project.lnk','
Project');
end;
end.
Jetzt meine Frage: Was muß ich in meinen Aufruf ändern, damit die Verknüpfung nicht im Install-Verzeichnis(C:\Test2) landet, sondern auf dem Desktop?
Danke im voraus.