Файл блокировки HSQLDB в программах и файлах - разрешение на запись в каталог файлов

У меня есть приложение на JAVA, которое подключается к HSQLDB и его необходимо установить, я сделал это приложение и работает нормально, но когда я помещаю свой код в папку «Программы и файлы», HSQLDB не может редактировать свойство блокировки и не может открыть программное обеспечение = (

Я знаю, что это безопасность Windows, но есть ли способ сделать папку, содержащую мою базу данных, доступной для редактирования? (c: programs and files \ mySoftware \ database) Как и в PHP, используя chmod ...

Спасибо!


person Douglas Caina    schedule 11.12.2012    source источник


Ответы (1)


Вы используете неправильный подход. Вместо того, чтобы делать папку редактируемой, вам нужно поместить файлы в папку для конкретного приложения в папке \ Users \ All users \ AppData \ yourapplication (в Windows 7) или \ Users \ Profilename \ AppData \ yourapplication. Путь к этой папке получается через Windows API (не знаю, что предлагает Java в отношении специфичного для Windows API, извините) функцию с именем SHGetFolderPath. Здесь вам нужны пути CSIDL_APPDATA или CSIDL_COMMON_APPDATA.

person Eugene Mayevski 'Callback    schedule 11.12.2012
comment
Путь к файлу HSQLDB может ссылаться на каталог Java user.home с помощью символа ~. Например, jdbc: hsqldb: file: ~ / yourapplcation / yourdb - person fredt; 11.12.2012