次のコードを使用して、RunOnce エントリを作成しようとしています。
program RunOnceTest;
{$APPTYPE CONSOLE}
uses
SysUtils, Registry, Windows;
var
R: TRegistry;
begin
try
WriteLn('Testing RunOnStartup.......');
R := TRegistry.Create;
try
R.RootKey := HKEY_LOCAL_MACHINE;
R.LazyWrite := False;
R.OpenKey('Software\Microsoft\Windows\CurrentVersion\RunOnce', True) ;
R.WriteString('this', 'that') ;
R.CloseKey;
finally
R.free;
end;
WriteLn('Test Finished');
Readln;
except
on E: Exception do
Writeln(E.ClassName, ': ', E.Message);
end;
end.
アプリを実行すると、実行されます。
ただし、次のエントリはありません。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
私のレジストリで。管理者権限は必要ですか? 他に何をする必要がありますか?
追加: 私はもっとよく説明し、私がやろうとしていることについて本当に質問する必要があります. 起動時にアプリを自動的に実行しようとしています。多くのアプリケーションは、管理者権限を必要としないように見えますが、これを行っています。これを行う通常の方法は何ですか?