我用如下的代码为程序添加了桌面快捷方式,但不小心增加了全局热键:
var
MyObject: IUnknown;
MySLink: IShellLink;
MyPFile: IPersistFile;
FileName: String;
Directory: String;
WFileName: WideString;
MyReg: TRegIniFile;
begin
MyObject := CreateComObject(CLSID_ShellLink);
MySLink := MyObject as IShellLink;
MyPFile := MyObject as IPersistFile;
FileName := paramstr(0);
with MySLink do
begin
SetPath(pchar(FileName));
SetHotkey(vk_F11); //这句话添加了F11的热键,请问如何才能取消呢?
SetWorkingDirectory(PChar(ExtractFilePath(FileName)));
end;
MyReg := TRegIniFile.Create('Software\MicroSoft\Windows\CurrentVersion\Explorer');
// 在桌面上生成快捷图标
Directory := MyReg.ReadString('Shell Folders','Desktop','');
// 在Start Menu中加入相应的ShortCut
//Directory := MyReg.ReadString('Shell Folders','Start Menu','');
// 在'发送到'中加入相应的ShortCut
{ 2:Directory := MyReg.ReadString('Shell Folders','SendTo','');
end; } WFileName := IncludeTrailingPathDelimiter(Directory) + Application.Title + '.lnk';
MyPFile.Save(PWChar(WFileName), False);
MyReg.free;
Application.Messagebox('成功的创建!!!','消息框',mb_ok+mb_iconinformation);
end;
///////////////////////////////////////////////////////
上面代码中SetHotkey(vk_F11); //这句话添加了F11的热键,请问如何才能取消呢?自动添加了这个热键,其他程序中如果有F11的快捷键都不好用了,请教各位大侠救命啊,解决后立即给分,谢谢!
var
MyObject: IUnknown;
MySLink: IShellLink;
MyPFile: IPersistFile;
FileName: String;
Directory: String;
WFileName: WideString;
MyReg: TRegIniFile;
begin
MyObject := CreateComObject(CLSID_ShellLink);
MySLink := MyObject as IShellLink;
MyPFile := MyObject as IPersistFile;
FileName := paramstr(0);
with MySLink do
begin
SetPath(pchar(FileName));
SetHotkey(vk_F11); //这句话添加了F11的热键,请问如何才能取消呢?
SetWorkingDirectory(PChar(ExtractFilePath(FileName)));
end;
MyReg := TRegIniFile.Create('Software\MicroSoft\Windows\CurrentVersion\Explorer');
// 在桌面上生成快捷图标
Directory := MyReg.ReadString('Shell Folders','Desktop','');
// 在Start Menu中加入相应的ShortCut
//Directory := MyReg.ReadString('Shell Folders','Start Menu','');
// 在'发送到'中加入相应的ShortCut
{ 2:Directory := MyReg.ReadString('Shell Folders','SendTo','');
end; } WFileName := IncludeTrailingPathDelimiter(Directory) + Application.Title + '.lnk';
MyPFile.Save(PWChar(WFileName), False);
MyReg.free;
Application.Messagebox('成功的创建!!!','消息框',mb_ok+mb_iconinformation);
end;
///////////////////////////////////////////////////////
上面代码中SetHotkey(vk_F11); //这句话添加了F11的热键,请问如何才能取消呢?自动添加了这个热键,其他程序中如果有F11的快捷键都不好用了,请教各位大侠救命啊,解决后立即给分,谢谢!
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货