2017-12-30 40 views
0

파이어 버드 데이터베이스를 여는 작은 파이썬 응용 프로그램을 작성했습니다.
이 목표를 달성하기 위해 파이어 버드를 2.5.7.27050 64 비트 임베드를 사용하고 있습니다.

내가 파이썬과 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 클라이언트가 제대로 설치되지 않은 것 같다.
그러나 doc 폴더 안의 설치 가이드를주의 깊게 따라갔습니다.
여기 내 응용 프로그램 폴더입니다 : 나는 .NET에서 FB를 사용 임베디드

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 
+1

어떤 일이 마술처럼 멈추지 않으므로 어떻게 바뀌 었습니까? –

+0

@MarkRotteveel 솔직히 모르겠다. 나는 이것 때문에 매우 짜증이났다. 파이어 버드를 임베드하는 방법을 누군가가 나에게 말할 수 있기를 바랬다. 나는 문서를 읽었고 그들이 언급 한 모든 것을했습니다. – matteobin

+0

먼저 작업 단계를 추적 해보고 그렇지 않으면 firebird-python 메일 링리스트에 질문을 게시하는 것이 좋습니다. 파이어 버드 임베디드 나 파이썬을 정기적으로 사용하지 않기 때문에 모든 기능과 아웃을 알지 못합니다. –

답변

0

이 문제를 해결할 수 있도록 도와 주신 모든 분들께 감사드립니다.
결국 Arioch의 제안 덕분에 해결책을 찾았습니다.

Microsoft Process Monitor을 사용하여 내 앱이 클라이언트 라이브러리를 찾고있는 폴더를 감지 할 수있었습니다. 그런 다음 PATH 환경 변수에 지정된 것과 동일한 폴더인지 확인했습니다.
그래서 파이썬 파일이 들어있는 폴더를 PATH 변수에 추가했습니다. 모든 것이 마침내 완성되었습니다.

0

하지만 여전히, 나는 응용 프로그램과 같은 폴더에 firebird.msg 파일을 유지합니다. 그리고 intudf 폴더는 FBE 또는 일부 폴더에 중첩되지 않습니다. 폴더를 FBE로 설정하고 바이너리 파일도 찾고 있다고 말하고 싶습니다. 레이아웃도 supposed처럼 보입니다.

+1

사실 내가 게시 한 가이드에는 btw를 읽은 것과 동일합니다. FB 파일을 다른 위치에 배치하는 방법에 대해 논의하는 섹션이 있습니다. 나는 거기에 언급 된 모든 것을했다. – matteobin