자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다. 
  • 제품설치/등록 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)

Delphi 라이브러리, TZMySqlQuery 객체 생성

2012.04.18 00:20

hyunj 조회 수:9193

저희가 사용하는 자연언어처리 프로그램을 update하는 과정에서 다음 문제가 발생했습니다.

이미 여러 경로로 문의해 보았으나 좋은 답을 얻지 못했습니다. Devgear의 도움으로 이 문제를 해결할 수 있었으면 좋겠네요.

 

해결했으면 하는 문제의 요약:
우리는 zeosdbo라는 DB 라이브러리를 사용하는 델파이 기반 프로젝트를 인수받아 관리하고 있습니다. 그런데 우리가 갖고 있는 라이브러리 소스로는 델파이 내부에 컴포넌트 등록을 할 줄을 몰라서, 해당 프로그램이 EXE로 빌드는 되지만 TZMySqlQuery 같은 객체들은 생성되지 않고 NULL인 채로 실행되어 프로그램이 제대로 동작하지 않습니다.
그래서 문제를 재연할 수 있는 최소한의 케이스만 떼어낸 아주 자그마한 예제 프로젝트를 첨부하니, 이 프로젝트 내부에서 TZMySqlQuery 객체가 제대로 생성되게 라이브러리를 새롭게 빌드/설치하거나 개발툴을 세팅하는 방법을 델파이 초보의 입장에서 자세히 알려 주시기를 요청드립니다. (델파이 XE2 기준)
모르면 어렵지만 델파이를 제대로 줄 아는 분이라면 금방 해결 가능하거나, 무엇 때문에 막히고 있는지를 곧장 진단할 수 있는문제이지 않을까 예상됩니다.
문제를 재연하는 법:
1. 첨부하는 Projects.zip을 내 문서 폴더 아래에 압축을 풉니다. 그리고 첨부하는 zeosdbo_lib.zip도 역시 내 문서 폴더 아래 별도의 폴더에다 폴더 구조를 모두 유지하면서 압축을 풉니다.
2. 델파이를 실행하여 Project.zip에 있던 Sample.dproj 프로젝트를 엽니다.
그 후, Project-Options (Shift+Ctrl+F11)로 가서 Delphi Compiler-Search path에는 아까 압축을 푼 zeosdbo 라이브러리 아래의 dbase와 common 디렉터리를 추가합니다. 현재 저희 개발 환경을 기준으로 맞춰져 있는 위치를 그쪽에 맞게 바꾸면 됩니다.
3. 그 뒤 F9를 눌러 보면 프로그램이 정상적으로 빌드되고 실행은 될 것입니다. 라이브러리 관련 파일들까지 인클루드되어 빌드됩니다. 하지만 폼에서 Button1을 클릭해 보시면 프로그램이 죽는데, 이는 내부에서 TZMySqlQuery 형으로 선언된 객체가 생성되지 못하고 NULL이기 때문입니다.
사실, Unit1.pas를 고친 뒤에 다시 빌드를 하면 아래와 같은 에러 메시지가 뜨기도 합니다.
Field Form1.qTemp does not have a corresponding component. Remove the declaration?
이것이 안 뜨게 하는 것이 핵심입니다.
아마 개발툴 설정이 잘 되면 델파이의 컴포넌트 팔레트 자체에 zeosdbo 라이브러리 관련 컴포넌트들이 등록되지 않을까 하는 추측이 듭니다.
번호 제목 글쓴이 날짜 조회 수
공지 [프로그래밍 강의] 2021.6~2021.12 관리자 2015.01.22 15634
공지 유용한 관련 사이트 관리자2 2014.03.20 54464
공지 본 게시판은 개발자 여러분들의 질문과 답변을 공유하는 공간입니다. 관리자 2012.01.10 97828
659 xe2 한글 전체 찾기시 문제점 [2] 미키네 2015.02.10 669
658 Appmethod 사용시, 안드로이드 시뮬레이터 에러 [1] radio 2015.02.23 825
657 JVL이라는 라이브러리 관련에러 [1] secret 관리자 2015.02.25 1
656 [XE6] 안드로이드 웹브라우저로 띄우기 [1] 가을이다 2015.02.23 1312
655 폰에 존재하는 call log(즉 수발/발신) 목록 가져오기 [1] 솔루피온 2015.02.16 675
654 MS-SQL에서 데이터 처리에 대한 오류.. 이노베이션 2015.02.18 1672
653 FireDAC 사용시 [3] 아이러브 2014.11.26 987
652 JAR 추가와 관련해서 질문드립니다. [1] newbe 2015.02.16 607
651 아이폰 쪽 연동 부분에 에러 해결방안 문의 [1] file radio 2015.02.16 1266
650 OCX등록 (주)머든 2015.02.14 1237
649 임베디드 디비(IBLITE)를 사용하는 앱을 만들었습니다. 어려워 2015.02.13 922
648 앱 개발시 HTML 미리보기 [1] 사랑남 2015.02.12 872
647 XE3 SNMP AGENT 구현 문의 [3] secret 수정아빠 2015.02.04 9
646 VCL로 프로그램을 작성해서 버튼을 배치했는데, 실행된 상태의 화면에서 마우스로 버튼을 끌어서 옮길수 있는지 [1] 관리자 2015.02.12 590
645 XE2에서 사용할 수 있는 "version control"이 무엇이 있을까요? [1] 관리자 2015.02.12 634
644 LiveBinding Format 변경관련 문의 희망 2015.02.10 592
643 SNMP V2 컴포넌트 [1] 수정아빠 2015.02.06 998
642 [질문] XE7에서 CPORT 컴파일 후 인스톨 시 에러 file 신지 2015.02.09 781
641 바코드 프린터 제어 관련 [3] JJ 2015.02.06 1454
640 ListView질문입니다. 좋은날 2015.02.07 877