真正的问题和问题是:如何在 Windows 7 的注册表配置单元“HKEY_CLASSES_ROOT”中添加键?
我知道在哪里创建密钥,但只有当我以管理员身份运行程序时才能实现。或手动... :) 否则,会出现错误消息,说明无法添加/创建密钥。
如果没有管理员权限,这可能吗?
该键的位置:“HKEY_CLASSES_ROOT\Applications\MyAppName.exe\shell\open\comand”
我用来在注册表中编写的代码:
procedure TForm1.Button1Click(Sender: TObject);
var
Reg: TRegistry;
appfilename: string;
begin
appfilename:= application.ExeName;
reg := TRegistry.Create;
reg.RootKey := HKEY_CLASSES_ROOT;
if not reg.KeyExists('Applications\MyAppName.exe\shell\open\command') then
begin
if reg.OpenKey('Applications\MyAppName.exe\shell\open\command', True) then
begin
reg.WriteString('', '"' + appfilename + '" "%1"');
reg.CloseKey;
end;
end;
结尾;