辰峰微网

delphi编程创建桌面快捷方式

Jack·高峰 1744 阅读
文章摘要
uses ActiveX,ComObj,StdCtrls,ShlObj,FileCtrl; 
procedure TForm1.N2Click(Sender: TObject); 
var 
tmpObject : IUnknown; 
tmpSLink : IShellLink; 
tmpPFile : IPersistFile; 
PIDL : PItemIDList; 
Sta...
当前字体大小 15px
12px 50px
uses ActiveX,ComObj,StdCtrls,ShlObj,FileCtrl; 
procedure TForm1.N2Click(Sender: TObject); 
var 
tmpObject : IUnknown; 
tmpSLink : IShellLink; 
tmpPFile : IPersistFile; 
PIDL : PItemIDList; 
StartupDirectory : array[0..MAX_PATH] of Char; 
StartupFilename : String; 
LinkFilename : WideString; 
begin 
//创建快捷方式到桌 
StartupFilename :=Application.ExeName; 
tmpObject := CreateComObject(CLSID_ShellLink);//创建建立快捷方式的外壳扩 
tmpSLink := tmpObject as IShellLink;//取得接口 
tmpPFile := tmpObject as IPersistFile;//用来储存*.lnk文件的接 
tmpSLink.SetPath(pChar(StartupFilename));//设定所在路 
tmpSLink.SetWorkingDirectory(pChar(ExtractFilePath(StartupFilename)));//设定工作目录 
SHGetSpecialFolderLocation(0,CSIDL_DESKTOPDIRECTORY,PIDL);//获得桌面的Itemidlist 
tmpSLink.SetDescription(’我的程序的描述); 
tmpSLink.SetIconLocation(Pchar(StartupFilename),0); 
SHGetPathFromIDList(PIDL,StartupDirectory);//获得桌面路径 
LinkFilename := StartupDirectory + ’我的程序.lnk; 
tmpPFile.Save(pWChar(LinkFilename),FALSE);//保存*.lnk文件 
end;
分享到:
收藏

    发表评论