kkuzil.own@gmail.com

Posted
Filed under Development/Delphi

출처 : http://www.delmadang.com/community/bbs_view.asp?bbsNo=3&bbsCat=0&st=&keyword=&indx=422150&keyword1=&keyword2=&page=1

{$IFDEF VER150}
   // 델파이 7 버전에서 컴파일 되는 부분..
{$ELIF VER210}
   // 델파이2010 버전에서 컴파일 되는 부분..
{$ENDIF}


위의 코드처럼 델파이 버전에 따라서 다르게 컴파일 하고 싶을 때가 있죠..

예를들어 델파이 2009부터는 string 이 UnicodeString 이고 델파이 2007까지는 string 이 ansiString 이기 때문에
다르게 처리하게 되는 경우가 있죠..   

그때 델파이 컴파일러 버전을 알아야 하는데 그걸 정리해 봤습니다.

{$IFDEF VER80}  - Delphi 1
{$IFDEF VER90}  - Delphi 2
{$IFDEF VER100} - Delphi 3
{$IFDEF VER120} - Delphi 4
{$IFDEF VER130} - Delphi 5
{$IFDEF VER140} - Delphi 6
{$IFDEF VER150} - Delphi 7
{$IFDEF VER160} - Delphi 8
{$IFDEF VER170} - Delphi 2005
{$IFDEF VER180} - Delphi 2006
{$IFDEF VER180} - Delphi 2007
{$IFDEF VER185} - Delphi 2007
{$IFDEF VER200} - Delphi 2009
{$IFDEF VER210} - Delphi 2010


그리고 델파이 6 이상에서는 CompilerVersion 을 사용해 버전체크를 할 수 있습니다.

{$IF CompilerVersion >= 18.5}
   //델파이 2007 이상에서 컴파일 되는 소스..
{$IFEND}
아래는 델파이 컴파일러 버전입니다.
 
Delphi 2010 - 21
Delphi 2009 - 20
Delphi 2007 - 18.5
Delphi 2006 - 18
Delphi 2005 - 17
Delphi 8    - 16
Delphi 7    - 15
Delphi 6    - 14


그리고 델파이 8 이상에서는 {$IFDEF_LESS_THAN } 을 사용할 수 있으므로 아래처럼도 됩니다.

{$IFDEF_LESS_THAN VER170}
  // 델파이 8 이상에서만 사용가능한 부분.. 델파이 7이하에서는 IFDEF_LESS_THAN 인식이 안됨..
  // 델파이 8 이하에서 컴파일되는 Code..

{$END}

델파이7 이하버전은 Delphi7Minus 가 define 되어있으므로

{$IFDEF Delphi7Minus}
  // 델파이7 이하에서 컴파일 되는 부분..
{$ENDIF}

2010/07/22 14:33 2010/07/22 14:33