Hello Eduardo,

Windows Vista is a tricky operating system because of its UAC feature. The last time I had to fiddle with it, it seemed to have some sort of heuristics that automagically moved files created by applications from their C:\Program Files\<folder> into a folder that was accessible by your current user.

This feature seems to be pretty flawed though and it is recommended that if you are planning on full Vista compatibility, that you pick a folder for your databases that is accessible by the user who will use the application.

I believe that the way to go with this on Vista is through the roaming folders ( http://technet.microsoft.com/en-us/library/cc766489.aspx ).

From Derby's perspective this is actually rather easy to achieve. You just need to set the following property when starting Derby:
-Dderby.system.home=<directory_for_your_database>

Set it to a folder where the user actually has permissions and you should no longer have an issue.

Hope it helps,
Tiago

On Thu, Apr 9, 2009 at 6:17 PM, Eduardo Castro <estima@gmail.com> wrote:
Hi,

      I have an application that uses
Derby and it is installed in the Program Files folder. To install the application, it is required an administrator user. However, after installing, if a non administrator user tries starting the application, it can not write to the derby database, just read. This app is shared by multiple users, non-administrator users.

      Any suggestions to avoid this problem with permissions?  


     OS: Windows
Vista

Regards,
Eduardo