2017-01-24 13 views
2

以下のAPIを使用してレジストリキーをファイルに保存しようとしていますが、保存に失敗しました。レジストリキーをファイルに保存する方法

String key = "Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\My App"; 
String fileName = "myapp.reg"; 
WinRegistry.saveKey(RegistryRoot.HKEY_LOCAL_MACHINE, key, fileName); 

レジストリキースニペット

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\\my app] 
"DisplayName"="my app" 
"DisplayIcon"="C:\\myapp\\.install4j\\installer.ico" 
"UninstallString"="\"C:\\myapp\\uninstall.exe\"" 
"InstallLocation"="C:\myapp" 
"DisplayVersion"="3.3.3" 
"VersionMajor"=dword:00000003 
"VersionMinor"=dword:00000003 

私を助けてください。

答えて

1

これを実行するには昇格された権限が必要です。 "スクリプトの実行"アクションでこれを行う場合は、 "アクションエレベーションタイプ"プロパティを "利用可能な最大限の特権に昇格"に設定します。 「要求特権」アクションは、それが効果を持つために正常に実行されていなければなりません。このようなあなたのコードをラップ任意のスクリプトでこれを行うには

context.runElevated(new RemoteCallable() { 
    public Serializable execute() { 
     // run registry code here 
     return null; 
    } 
}, true); 
+0

はどうもありがとうございました。それは働いている。 –

+0

私の答えを受け入れるようにしてください:http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work –

+0

はあなたにupvoteを与えましたIngo、BC私は高度を要求する簡単な方法を見たことがありませんあなたはここに示しています – DukeDidntNukeEm

関連する問題