python-Firebird嵌入式安装问题:无法确定库
作者:互联网
我正在编写一个打开Firebird数据库的小型Python应用程序,为了实现这一目标,我使用了64位的Firebird嵌入式2.5.7.27050.尽管如此,每当我尝试使用Python连接到DB文件时,我都会得到以下信息错误:
Traceback (most recent call last):
File "C:\Matteo\CMakeR\initApp.py", line 36, in <module>
connection = connectToDB(path)
File "C:\Matteo\CMakeR\initApp.py", line 10, in connectToDB
charset='WIN1252'
File "C:\Program Files\Python36\lib\site-packages\fdb\fbcore.py", line 682, in connect
load_api(fb_library_name)
File "C:\Program Files\Python36\lib\site-packages\fdb\fbcore.py", line 181, in load_api
setattr(sys.modules[__name__],'api',fbclient_API(fb_library_name))
File "C:\Program Files\Python36\lib\site-packages\fdb\ibase.py", line 1398, in __init__
raise Exception("The location of Firebird Client Library could not be determined.")
Exception: The location of Firebird Client Library could not be determined.
>>>
FB Client似乎没有正确安装,但是我非常仔细地遵循了doc文件夹中的安装指南,这是我的app文件夹:
04/01/2018 15:11 <DIR> .
04/01/2018 15:11 <DIR> ..
04/01/2018 14:57 133 aliases.conf
03/01/2018 14:20 0 CMakeR.conf
02/01/2018 13:40 2.480 DB in chiaro.odb
04/01/2018 14:57 <DIR> doc
30/12/2017 17:32 191 editXLS.py
30/12/2017 17:24 23.032 Export.xlsx
04/01/2018 14:57 5.664.256 fbclient.dll
04/01/2018 14:57 5.664.256 fbembed.dll
04/01/2018 14:46 5.199.849 Firebird-2.5.7.27050-0_x64_embed.zip
04/01/2018 14:57 27.661 firebird.conf
04/01/2018 14:57 149.440 firebird.msg
04/01/2018 14:57 5.664.256 gds32.dll
04/01/2018 14:57 8.192 ib_util.dll
04/01/2018 14:57 1.558.016 icudt30.dll
04/01/2018 14:57 575.488 icuin30.dll
04/01/2018 14:57 935.936 icuuc30.dll
04/01/2018 14:57 26.023 IDPLicense.txt
04/01/2018 15:09 1.583 initApp.py
04/01/2018 14:57 <DIR> intl
04/01/2018 14:57 24.301 IPLicense.txt
04/01/2018 14:57 524 Microsoft.VC80.CRT.manifest
30/12/2017 17:24 28.625 Modulo CMR.xlsx
04/01/2018 14:57 1.097.728 msvcp80.dll
04/01/2018 14:57 822.784 msvcr80.dll
04/01/2018 14:57 2.333 Readme.txt
02/01/2018 13:40 50.790.400 testArchive.eft
04/01/2018 14:57 <DIR> udf
解决方法:
谢谢大家帮助我解决了这个问题.感谢Arioch’The的建议,我终于找到了解决方案.
使用Microsoft Process Monitor,我能够检测到我的应用正在寻找客户端库的文件夹.然后我注意到它们是在PATH环境变量中指定的文件夹,因此我将包含Python文件的文件夹添加到PATH变量中,一切都终于解决了.
标签:python,firebird,dll,client-library,firebird-embedded 来源: https://codeday.me/bug/20191009/1878841.html