델파이 10 Seattle 설치후 콤포넌트 라이브러리 설치( ComPort, NumEdit)
델파이 xe 부터 기존의 유닛들이 변경된 것이 많다.
따라서 예전버전 라이브러리, 콤포넌트 설치시 에러나는 부분이 있다..
1. 시리얼포트 콤포넌트 comport411f 설치
http://sourceforge.net/projects/comport/files/comport/4.11/
압축을 적당한 폴더에 풀고 예를 들어 C:\MyJung\comport411f
그리고 comport422f는 Ansi 체계때 만들어 진 것이라 그대로 컴파일 하면 델파이 시애틀은 유니코드 체계라 String을 유니코드로 해석하여 영수증 프린터 등과 같이 아직 Ansi 체계인 디바이스와 연동하여 인쇄할 때 한글이 깨진다.
그래서 Source 폴더의 CPort.pas 파일의 일부를 String -> AnsiString 로 수정해야한다.
델파이에서 모든 프로젝트를 종료하고 File>Open Project...
C:\MyJung\comport411f\sources에서
"CPortLibDXE.dpk" 선택하고 열기 "CPortLibDXE.bpl" 우클릭 Compile
다시 프로젝트 매니저에서 우클릭 Add Existing Project... 클릭
"DsgnCPortDXE.dpk" 선택하고 열기 마찬가지로 Compile 그리고 Install 한다.
라이브러리 패스 등록
C:\MyJung\comport411f\sources
2. 1000단위 콤마표현 넘버에디터(NumEdit.pas) 콤포넌트 등록
첨부파일을 C:\MyJung\JungComp\NumEdit 폴더에 넣고
델파이 File>New>Package 선택
프로젝트 매니저에서 "Package1.bpl" 이름을 나만의 패키지 이름으로 변경 "NumEdit_jung.bpl"
NumEdit_jung.bpl 에서 우클릭 Add>Browse클릭
"NumEdit.pas" 선택하고 OK 버튼 클릭
"NumEdit_jung.bpl" 우클릭 Compile하고 Install 하면 된다.
참고로 첨부파일 "NumEdit.pas" 은 xe에 맞게 다음 부분이 변경되었다.
FDec := DecimalSeparator // 기존 델파이 2007 버전에서
->
FDec := FormatSettings.DecimalSeparator; // 델파이 xe에서 유닛 표현 변경
3. 그외
Indy 의 경우 기본으로 설치되어 있고 JVCL 의 경우 2007 버전에서 설치하는 것과 동일하다.
JVCL은 델파이 IDE에서 새롭게 추가된 Tools>GetIt Package Manager 에서 등록된 것을 설치해도 되는 듯
참고로 64비트 OS에서 컴파일한 프로젝트는 jvcl의 JvDatePickerEdit 콤포넌트는 주의해야한다.
델파이 SysUtils 유닛의 ShortDateFormat 변수의 값을 JvDatePickerEdit가 사용하는데
프로젝트내에서 코딩으로 ShortDateFormat의 값이 할당되어있으면
JvDatePickerEdit 에서 에러가 발생한다.
따라서 다음 처럼 주석처리 하든지 삭제해야한다.
// Dephi Global Variable
// DateSeparator := '-';
// CurrencyString := '';
// LongDateFormat := 'yyyy-mm-dd';
// ShortDateFormat := 'yyyy-mm-dd'; // 64비트 OS에서 JvDatePickerEdit 에서 에러발생하여 주석처러
/* 추가 */
JVCL의 경우 32비트와 64비트로 시애틀에서는 구분되므로 환경에 다음처럼 패스가 추가되어야한다.
*** Library path 라이브러리 패스 (주의) 시애틀에서는 32, 64비트 폴더로 구분된다.
C:\Delphi10_jung\JVCL349\jcl\lib\d23\win32
C:\Delphi10_jung\JVCL349\jcl\source\include
C:\Delphi10_jung\JVCL349\jvcl\lib\D23\win32
C:\Delphi10_jung\JVCL349\jvcl\common
C:\Delphi10_jung\JVCL349\jvcl\resources
*** Browsing path 브라우저 패스
C:\Delphi10_jung\JVCL349\jcl\source\common
C:\Delphi10_jung\JVCL349\jcl\source\windows
C:\Delphi10_jung\JVCL349\jcl\source\vcl
C:\Delphi10_jung\JVCL349\jvcl\common
C:\Delphi10_jung\JVCL349\jvcl\run
*** Debug DCU path 디버그 패스
C:\Delphi10_jung\JVCL349\jcl\lib\d23\win32\debug