Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
Delphi XE3 Enterprise
|
AW: Mein Programm funktioniert über eine Verknupfung
8. Nov 2010, 00:00
ich gebe "wicht" recht, besser ist es wenn die Anwendung nicht abhängig ist.
Falls Du das mit INNO nicht in den Griff bekommst kannst Du theoretisch ganz schmutzig auch die Verknüpfung aus dem Programm heraus erstellen / reparieren
Delphi-Quellcode:
var
IObject : IUnknown;
ISLink : IShellLink;
IPFile : IPersistFile;
PIDL : PItemIDList;
InFolder : array[0..MAX_PATH] of Char;
TargetName : String;
LinkName : WideString;
begin
TargetName := Application.ExeName;
IObject := CreateComObject(CLSID_ShellLink) ;
ISLink := IObject as IShellLink;
IPFile := IObject as IPersistFile;
with ISLink do
begin
SetPath(pChar(TargetName)) ;
SetWorkingDirectory(pChar(ExtractFilePath(TargetName))) ;
end;
SHGetSpecialFolderLocation(0, CSIDL_DESKTOPDIRECTORY, PIDL) ;
SHGetPathFromIDList(PIDL, InFolder) ;
LinkName := InFolder + '\MeinProgramm.lnk';
IPFile.Save(PWChar(LinkName), false) ;
end;
benötigt uses ShlObj, ActiveX, ComObj;
Thomas Wassermann H₂♂ Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂♂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
Geändert von Bummi ( 8. Nov 2010 um 00:12 Uhr)
|