var Reg:Tregistry;
begin
Reg:=Tregistry.Create;
Reg.RootKey:=HKEY_LOCAL_MACHINE;
Reg.OpenKey(Software\Microsoft\Windows\CurrentVersion\Run',False);
Reg.WriteString('sysExplr','d:\SthVCD\SysExplr.EXE');//换成你的
Reg.CloseKey;
Reg.Free;
end;
begin
Reg:=Tregistry.Create;
Reg.RootKey:=HKEY_LOCAL_MACHINE;
Reg.OpenKey(Software\Microsoft\Windows\CurrentVersion\Run',False);
Reg.WriteString('sysExplr','d:\SthVCD\SysExplr.EXE');//换成你的
Reg.CloseKey;
Reg.Free;
end;
解决方案 »
- 当菜单太长了,如何让菜单并列显示?
- 用delphi的人还是很多嘛!
- 我知道dephi资源里面的数据那我怎么查看他
- 如何才能在ACCESS数据库中保存图像??
- 请问怎么样将MemoryStream里的Jpg图片读到Image中显示?
- ■■■如何让自己的程序在IE启动时候自动运行、IE关闭后跟着关闭?■■■
- 怎样禁止用TAB键,方向键移动焦点.
- 我建立了一个线程,可是其中的各种功能总是不好使,帮帮忙吧!(delphi_han(小强))来看看。
- 关于月份的计算!多多帮忙!!
- 大家能不能告诉我现在哪一款全区DVD-ROM最好用,市面上的DVD光驱品种太多了,不知选什么好?(
- 为什么paradox7生成的数据库文件*.db还会有诸如*.mb,*.px的文件存在,它们分别都是干什么的?
- 待我有程序需要编时便会上来猛问问题,可不要将俺清除出去.
C:\WINDOWS\Start Menu\Programs\启动
就可以了
这个方便,但对客户不太方便
二是直接写在启动菜单里
var
tmpObject : IUnknown;
tmpSLink : IShellLink;
tmpPFile : IPersistFile;
PIDL : PItemIDList;
StartupDirectory : array[0..MAX_PATH] of Char;
LinkFilename : WideString;
bianliang,Path:string;
begin
bianliang:='\'+FileDesc+'.lnk';
tmpObject := CreateComObject(CLSID_ShellLink);//创建建立快捷方式的外壳扩展
tmpSLink := tmpObject as IShellLink; //取得接口
tmpPFile := tmpObject as IPersistFile; //用来储存*.lnk文件的接口
tmpSLink.SetPath(pChar(FileName)); //设定 filename 所在路径
tmpSLink.SetWorkingDirectory(pChar(ExtractFilePath(FileName))); //设定工作目录
begin
SHGetSpecialFolderLocation(0,CSIDL_STARTUP,PIDL); //获得启动中的启动菜单的Itemidlist
Fillchar(startupdirectory,Max_Path+1,0);
SHGetPathFromIDList(PIDL,StartupDirectory); //获得路径
Path:=StartupDirectory;
LinkFilename := path + bianliang;
tmpPFile.Save(pWChar(LinkFilename),FALSE); //保存*.lnk文件
End;
C:\WINDOWS\Start Menu\Programs\启动
就可以了”这种方法呢。
完全同意顶楼意见!