Как я могу написать системные настройки с помощью Java, используя Preferences.systemRoot()
?
Я пробовал с:
Preferences preferences = Preferences.systemRoot();
preferences.put("/myapplication/databasepath", pathToDatabase);
Но я получил это сообщение об ошибке:
2010-maj-29 19:02:50 java.util.prefs.WindowsPreferences openKey
VARNING: Could not open windows registry node Software\JavaSoft\Prefs at root 0x80000002. Windows RegOpenKey(...) returned error code 5.
Exception in thread "AWT-EventQueue-0" java.lang.SecurityException: Could not open windows registry node Software\JavaSoft\Prefs at root 0x80000002: Access denied
at java.util.prefs.WindowsPreferences.openKey(Unknown Source)
at java.util.prefs.WindowsPreferences.openKey(Unknown Source)
at java.util.prefs.WindowsPreferences.openKey(Unknown Source)
at java.util.prefs.WindowsPreferences.putSpi(Unknown Source)
at java.util.prefs.AbstractPreferences.put(Unknown Source)
at org.example.install.Setup$2.actionPerformed(Setup.java:43)
Я хотел бы сделать это, потому что я хочу установить встроенную базу данных JavaDB и позволить нескольким пользователям на компьютере использовать одну и ту же базу данных с приложением.
Как это решить? Могу ли я вызвать UAC и сделать это как администратор из Java? И если я войду в систему как администратор при написании, смогу ли я прочитать значения с помощью своего приложения Java, если я вошел в систему как пользователь?