Delphi
7
:
{ Function: create a desktop shortcut to your application }
{ make sure you add these units in the uses clause. }
uses ShellAPI, ComObj, ComCtrls, Shlobj, ActiveX;
procedure CreateShortCut;
var
psl : IShellLink;
ppf : IPersistFile;
ws : WideString;
wss : array[0..MAX_PATH] of AnsiChar;
begin
psl : = CreateComObject(CLSID_ShellLink) as IShellLink;
ppf : = psl as IPersistFile;
if Assigned( psl ) then
try
psl.SetPath( PChar( ParamStr( 0 ) ) );
psl.SetWorkingDirectory( PChar( ExtractFilePath( Application.ExeName ) ) );
psl.SetShowCmd( SW_SHOWNORMAL );
psl.SetDescription( PChar( ' Your app name ' ) );
GetEnvironmentVariable( PChar( ' USERPROFILE ' ), wss, sizeof(wss) - 1 );
ws : = wss + ' DesktopYour app name.lnk ' ;
ppf.Save( PWChar( ws ), False );
finally
end;
end;
{ Function: create a desktop shortcut to your application }
{ make sure you add these units in the uses clause. }
uses ShellAPI, ComObj, ComCtrls, Shlobj, ActiveX;
procedure CreateShortCut;
var
psl : IShellLink;
ppf : IPersistFile;
ws : WideString;
wss : array[0..MAX_PATH] of AnsiChar;
begin
psl : = CreateComObject(CLSID_ShellLink) as IShellLink;
ppf : = psl as IPersistFile;
if Assigned( psl ) then
try
psl.SetPath( PChar( ParamStr( 0 ) ) );
psl.SetWorkingDirectory( PChar( ExtractFilePath( Application.ExeName ) ) );
psl.SetShowCmd( SW_SHOWNORMAL );
psl.SetDescription( PChar( ' Your app name ' ) );
GetEnvironmentVariable( PChar( ' USERPROFILE ' ), wss, sizeof(wss) - 1 );
ws : = wss + ' DesktopYour app name.lnk ' ;
ppf.Save( PWChar( ws ), False );
finally
end;
end;