0

以下是实验条件:

  1. Interbase ToGo 已获得许可
  2. 包括许可证文件夹在内的 Interbase 文件夹与我的名为 myPgm.app 的多平台应用程序位于同一文件夹中,该应用程序由 Delphi XE2 作为 HD-FMX 应用程序开发。

当右键单击 myPgm.app 并从下拉菜单中选择 Show Package Contents 时,我得到以下列表:

内容

Info.plist
Mac
    myPgm
    myPgm.rsm
    libcgunwind.1.0.dylib
    libibtogo.dylib
Resources
    Icon.icns

在尝试在 Mac OS XI 上运行基于 Interbase 的应用程序进行大量实验后,得出以下观察结果:

  • 如果 Interbase 组件的 DatabaseName 属性没有任何值,myPgm.app 会显示消息:“Database name is missing”</li>
  • 如果我用错误或正确的任何值填充该属性,我会收到消息:“产品 INTERBASE 未获得许可”。

按照逻辑,当服务器未嵌入时,DatabaseName 必须以 localhost: 或服务器的实际地址开头,我怀疑 Embarcadero 计划开发人员在实际 .ib 或 .gbd 文件的开头放置一些“魔术”词。

我正在寻找如何将 myPgm.app 与 myIBDb.ib 连接的解决方案,myIBDb.ib 与 myPgm.app 位于同一文件夹中。

遗憾的是 Embarcadero 出售这些 ToGo 许可证(我以 60 美元购买了一个),并且没有关于在 Mac OS X 上指定数据库的路径和名称的指南。相反,在 Win 系统上没有任何问题。

4

1 回答 1

0

我想我必须自己提供答案。它是在与 Embarcadero 的支持人员来回交换信息之后发生的。正如您从我的问题中可以感觉到的那样,我从一开始就感觉到这是一个路径问题。本着 FireMonkey 的精神,我通过在任何地方插入 interbase 文件夹来玩“猴子”,但我从未想到的最后一个地方是包内容层次结构的底部,即 MacOS 文件夹内。作为一个 Mac 应用程序,我认为它会遵循 Apple 关于应用程序包的根路径的指南——.app 文件的级别——但不是。查看包内容的快照。(对不起,我没有发布图片的权限)

现在值得庆幸的是,Embarcadero 可以放心地开发桌面数据库驱动的应用程序,从而创建唯一桌面播放器 FileMaker 的替代品。请记住,Mac OS 没有 MS Access 数据库。

于 2012-04-13T01:58:54.157 回答