Jump to content
과거의 기술자료(읽기 전용): https://tech.devgear.co.kr ×
과거의 기술자료(읽기 전용): https://tech.devgear.co.kr

마이그레이션을 할 때 수작업을 줄여주는 도구 - reFind.exe


Recommended Posts

이 문서의 목적: 마이그레이션을 할 때 수작업을 없애는 도구 중 RAD 스튜디오에 들어있는 reFind.exe를 알고 싶은 사람들이 가장 먼저 찾는 글 

 

애플리케이션 현대화에 대한 관심은 매우 높다. 특히 델파이와 C++빌더의 코드를 현대화 마이그레이션할 때는 코드 대부분을 자동 변환 할 수 있다. 자동화 도구도 여러가지인데, 엠바카데로 MVP인 Oren Aviram이 소개한 델파이 파서 (Delphi Parser) 처럼 수준높은 유료 도구도 있고, 지금 소개하는 reFind.exe처럼 강력하고 간단한 명령줄 유틸리티도 있다.

reFind 사용법

reFind 요약

  • reFind는 RAD 스튜디오를 설치하면 사용할 수 있다. 설치하면,
    • RAD 스튜디오 설치 경로의 bin 폴더에는 RAD 스튜디오 실행 파일 뿐만 아니라 reFind.exe도 들어있다.
    • 이 경로는 PATH 환경 변수에 자동 등록되므로, 명령줄에서 따로 경로를 지정하지 않고 reFind 라고만 입력하면 실행된다.
  • reFind는 지정된 "변경 대상"에 지정된 텍스트 "변환 규칙"을 적용한다. (예:  reFind *.pas *.dfm /X:FireDAC_Migrate_BDE.txt
    • 변환 규칙은 명령줄에서 일일이 규칙을 지정해도 되지만, 위 예의 FireDAC_Migrate_BDE.txt처럼 규칙을 담은 별도의 텍스트 파일을 지정하는 것이여러모로 좋다.
  • reFind는 몇가지 변환 규칙 파일이 함께 제공된다.
    • [공용 문서]\Embarcadero\Studio\22.0*\Samples\Object Pascal\Database\FireDAC\Tool\reFind 아래에 마이그레이션 목적별 폴더에 있다. *이때 22.0은 RAD 스튜디오 11.0 알렉산드리아 기준이며, 버전에 따라 숫자가 달라진다
    • AnyDAC, BDE, DbExpress을 FireDAC으로 변환하는 규칙 파일과 FireDAC을 (XE7에서 XE8으로) 버전업하는 규칙 파일이 들어 있다.
    • 여기를 클릭하면 깃허브에 있는 FireDAC_Migrate_BDE.txt을 열어 볼 수 있다.
    • 변환 규칙 파일을 열어보면 규칙을 쉽게 이해할 수 있다 (복사 후 필요한 부분을 변경하여 재사용하기도 좋다)

활용 예시

참고 이미지

reFindRuleFileDir.png
그림1. reFind용 변환 규칙 파일과 데모 프로젝트 Sample이 있는 기본 경로(그림 맨위의 경로)와 각 목적별 폴더 (선택된 폴더는 BDE 마이그레이션 Sample 폴더)

BDE2FDMigration.png
그림2. FireDAC_Migrate_BDE.txt 파일에 담긴 변환 규칙 (이 파일은 위 그림1에서 선택된 폴더 안에 있다. 

이 댓글 링크
다른 사이트에 공유하기

  • Kori changed the title to 마이그레이션을 할 때 수작업을 줄여주는 도구 - reFind.exe
On 2022. 2. 24. at 오후 12시 39분, 질문있어요 said:

델파이 5 환경을 사용중인데 reFind.exe를 사용할 수 있는 방법이 없을까요 ?

reFind.exe는 텍스트 파일이면 무엇이든 변환 할 수 있습니다. 따라서 델파이 5 버전에서 만든 파일도 변환할 수 있습니다.

가급적 변경 후 버전 즉 구입한 (XE5와 그 이후 버전) 델파이에 들어있는 reFind.exe는를 사용하는 것이 더 좋습니다.

라이선스 규정 상, reFind.exe는 XE5버전부터 제공되기 시작했으며,  XE5 그리고 그 이후 버전 이상을 가지고 있으면 합법적으로 사용할 수 있습니다.

혹시, 변환하려는 프로젝트의 폼파일(*.dfm)이 텍스트 파일이 아니라 바이너리 기반 파일 (델파이 5 이전 형식)이라면 먼저 바이너리 폼파일을 텍스트 폼파일로 변해야 합니다. 방법은 아래 글을 보세요:

 

이 댓글 링크
다른 사이트에 공유하기

이 토의에 참여하세요

지금 바로 의견을 남길 수 있습니다. 그리고 나서 가입해도 됩니다. 이미 회원이라면, 지금 로그인하고 본인 계정으로 의견을 남기세요.

Guest
이 토픽(기고/질문)에 답하기

×   서식있는 텍스트로 붙여넣기.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   이전에 작성한 콘텐츠가 복원되었습니다..   편집창 비우기

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

중요한 정보

이용약관 개인정보보호정책 이용규칙 이 사이트가 더 잘 작동하기 위해 방문자의 컴퓨터에 쿠키가 배치됩니다. 쿠키 설정 변경에서 원하는 설정을 할 수 있습니다. 변경하지 않으면 쿠키를 허용하는 것으로 이해합니다.