oracle - 打开数据模块后,我得到了 [firedac][phys][ora]-1309。oci 未正确安装
问题描述
我将 Firedac 配置为在 Windows 7 机器上使用 Oracle 11g。我在以下位置安装了 Oracle Instant Client 32 位文件:oci.dll、oraocci11.dll、oraociei11.dll 和 orasql11.dll:
C:\Program Files (x86)\Embarcadero\Studio\19.0\bin
C:\Program Files (x86)\Embarcadero\Studio\19.0\bin64
以及在我的 .exe 目录中:
..\myapplication\Win64\Debug
..\myapplication\Win32\Debug
当我在 Delphi 中打开项目并第一次运行时,它可以正常工作。
但是,在我打开一个数据模块并尝试运行后,我得到了错误:[firedac][phys][ora]-1309。oci 没有正确安装在这台机器上。
为什么只有在打开数据模块后才会发生这种情况?
我感谢任何帮助解决它!
解决方案
在检查了其他支持站点和文档后,我尝试了一种不同的配置,这可能是解决方案。
将Delphi编译为win64时,Firedac Oracle客户端文件也应该是Win64的,所以我从https://www.oracle.com/technetwork/topics/winx64soft-089540.html下载了适用于Windows x64的Oracle Client 11g 并复制了新文件文件 oci.dll , oraocci11.dll, oraociei11.dll 和 orasql11.dll 到位置
C:\Program Files (x86)\Embarcadero\Studio\19.0\bin64 C:\Program Files (x86)\Embarcadero\Studio\19.0\bin
然后我就可以毫不费力地编译和运行我的 Win64 应用程序了。
推荐阅读
- reactjs - 如何使用具有 auth0 登录的 reactjs 应用程序对 zendesk 进行身份验证
- prestashop - 如何在 Prestashop 中压缩和缓存 JS 和 CSS 代码
- arrays - C:通过函数调用完成时指针运算不起作用?
- c++ - 柯南:有没有办法像包一样管理个人资料
- python-3.x - 激活 python venv 但全局安装
- python - 使用 python 访问谷歌域中的用户个人资料信息
- json - 无法将 JSON 结果分配给 UILabel(错误“UILabel.text 只能从主线程使用”
- visual-studio-code - Flutter web 应用程序日文字符(非英文字符)不起作用
- flutter - 过滤对象中的嵌套列表并返回相同类型的对象
- reactjs - 如何等待 forEach 循环完成