Delphi 创建快捷方式

最近在写一个软件的安装程序,快捷方式如下。亲测有效~~ 

procedure TOne.createLnk(Sender: TObject);
var
  AnObj: IUnknown;
  ShLink: IShellLink;
  PFile: IPersistFile;
  FileName: string;
  WFileName: WideString;
  Reg: TRegIniFile;
begin
    AnObj := CreateComObject (CLSID_ShellLink);
    ShLink := AnObj as IShellLink;
    PFile := AnObj as IPersistFile;
    
    // 得到执行程序的完整路径及文件名
    filename:='*****';
    
    ShLink.SetPath (PChar (FileName));
    ShLink.SetWorkingDirectory (PChar (
    ExtractFilePath (FileName)));
    
    //创建桌面快捷方式
    Reg := TRegIniFile.Create(
      'Software\MicroSoft\Windows\CurrentVersion\Explorer');
    WFileName := Reg.ReadString ('Shell Folders', 'Desktop', '') +
      '\' + extractFilename(filename)+ '.lnk';
    Reg.Free;
    PFile.Save (PWChar (WFileName), False);

    //创建“开始”菜单
    Reg := TRegIniFile.Create(
      'Software\MicroSoft\Windows\CurrentVersion\Explorer');
    WFileName := Reg.ReadString ('Shell Folders', 'Start Menu', '') +
      '\' + extractFilename(filename) + '.lnk';
    Reg.Free;
    PFile.Save (PWChar (WFileName), False);
end;

*************************************

uses ComObj, ActiveX, ShlObj, Registry; 

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值