如何在 Windows 环境中写入安装在“C:\Program Files”中的 Java 桌面应用程序的嵌入式 derby 数据库?
Posted
技术标签:
【中文标题】如何在 Windows 环境中写入安装在“C:\\Program Files”中的 Java 桌面应用程序的嵌入式 derby 数据库?【英文标题】:How to write to an embedded derby database of a java desktop application installed in 'C:\Program Files' in Windows environment?如何在 Windows 环境中写入安装在“C:\Program Files”中的 Java 桌面应用程序的嵌入式 derby 数据库? 【发布时间】:2012-12-18 04:53:41 【问题描述】:我有一个 java 桌面应用程序,它通过 Inno Setup 制作的 Windows 安装程序文件安装在 C:\Program Files 中。该程序包括一个嵌入式 derby 数据库。理想情况下,程序应该能够写入 derby 数据库。但是由于在 Windows 7 中创建/编辑和保存文件到 C 盘的限制,我无法执行上述操作。如果程序安装在 C 盘以外的驱动程序中,它可以工作。由于我更愿意将用户“C:\Program Files”作为应用程序安装的默认位置,因此我想知道是否有办法克服这个问题。
感谢在解决问题方面可以提供的任何帮助。
【问题讨论】:
【参考方案1】:您可以在连接 URL 中指定 Derby 数据库的备用位置;您还可以通过控制 derby.system.home 属性来指定备用位置。然后您的应用程序可以安装在 C:\Program Files 中,但可以在其他地方创建数据,例如在 Documents 或 Application Data 文件夹中。这是 derby.system.home 上的一些文档:http://db.apache.org/derby/docs/10.9/ref/rrefproper32066.html
【讨论】:
【参考方案2】:我的建议是为用户提供一个输入首选安装位置的空间,默认可以是 C:\Program Files\,但用户没有管理员访问权限或访问 C:\Program Files,允许用户更改这个值。但不要强迫用户安装在特定位置。您还可以向用户提供诸如“您需要具有管理员权限才能在此位置安装程序”之类的说明
【讨论】:
以上是关于如何在 Windows 环境中写入安装在“C:\Program Files”中的 Java 桌面应用程序的嵌入式 derby 数据库?的主要内容,如果未能解决你的问题,请参考以下文章