我正在编写一个应用程序,它必须打开一个预先存在的BDE数据库,该数据库已被第三方保存。
在这个应用程序中,我目前有一个TDatabase
(DriverName
: STANDARD
), path
在Params
中正确设置。
我现在可以将Connected
设置为true而不会出现错误消息。
还有一个TTable
,其中DatabaseName
设置为TDatabase的值,TableName
设置为位于文件夹中的.db文件(名称自动填充,我只需要选择它)。
现在的问题是:
如果我设置Active
为true,一条错误消息抱怨C:PDOXUSRS.NET
缺少访问权限。
我知道我可以使用BDEADMIN
设置另一条路径,但我需要在我的应用程序中解决这个问题-我不能指望每个客户都做这个更改。此外,我有一台运行第三方应用程序的测试机器—它可以访问数据库而不会出现任何错误,而我的应用程序抛出上述错误。这使我怀疑可能有解决办法。
有这样的解决方法吗?
我只需要读访问数据库
多亏了bummi的链接才解决了
非常感谢。
:
如何以编程方式更改。NET DIR以使其持续
[…]
您还应该记住,如果您的程序在运行时使用DbiSetProp函数或TSession组件的NetFileDir属性更改了它们自己的。NET DIR位置,这将覆盖配置文件中的。NET DIR值。
它指出了在代码中改变。NET DIR的可能性:
Session.NetFileDir := MyCustomTempDir;
这样做之后,Table1.active := true
工作,数据显示在连接的TDBGrid
中。