목차

VC6용 자동 빌드 넘버 증가하기

1. 자동 빌드 넘버 증가 관련 파일 다운로드

  1. 본 문서를 포함한 version.ver 파일과 version.h 파일이 같이 압축된 파일 다운로드 압축파일 다운로드

2. "Project.rc" 파일 편집

아래 방법 1과 2 중 원하는 방법을 선택해서 알아서 하면 된다.

방법 1. 프로젝트의 리소스 탭에 “Version” -> VS_VERSION_INFO 제거

방법 2. “Project.rc” 파일을 메모장으로 열어 다음 내용 삭제.

/////////////////////////////////////////////////////////////////////////////
//
// Version
//
VS_VERSION_INFO VERSIONINFO
 FILEVERSION 1,0,0,1
 PRODUCTVERSION 1,0,0,1
 FILEFLAGSMASK 0x17L
#ifdef _DEBUG
 FILEFLAGS 0x1L
#else
 FILEFLAGS 0x0L
#endif
 FILEOS 0x4L
 FILETYPE 0x1L
 FILESUBTYPE 0x0L
BEGIN
    BLOCK "StringFileInfo"
    BEGIN
        BLOCK "000004b0"
        BEGIN
            VALUE "Comments", ""
            VALUE "CompanyName", "unknown"
            VALUE "FileDescription", ""
            VALUE "FileVersion", "1, 0, 0, 1"
            VALUE "InternalName", ""
            VALUE "LegalCopyright", "(C) Copyright 2008"
            VALUE "OriginalFilename", "test.exe"
            VALUE "ProductName", "Application"
            VALUE "ProductVersion", "1, 0, 0, 1"
        END
    END
END

3. "res\Project.rc2" 파일 편집

아래 방법 1과 2 중 원하는 방법을 선택해서 알아서 하면 된다.

방법 1. 동봉된 “SampleProject.rc2” 파일을 적당히 편집 후 “Project.rc2” 파일로 이름 변경

방법 2. "res\Project.rc2" 파일에 아래 내용 추가.

 
#ifndef _MAC
/////////////////////////////////////////////////////////////////////////////
//
// Version
//
#include "version.h"
 
VS_VERSION_INFO VERSIONINFO
 FILEVERSION VERSION_NUMBER
 PRODUCTVERSION VERSION_NUMBER
 FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
 FILEFLAGS 0x1L
#else
 FILEFLAGS 0x0L
#endif
 FILEOS 0x4L
 FILETYPE 0x1L
 FILESUBTYPE 0x0L
BEGIN
    BLOCK "StringFileInfo"
    BEGIN
        BLOCK "041204b0"
        BEGIN
            VALUE "FileVersion", VERSION_STRING "\0"
            VALUE "LegalCopyright", VERSION_COPYRIGHT "\0"
            VALUE "OriginalFilename", VERSION_TRADEMARK "\0"
            VALUE "ProductName", "Change this!! \0"
            VALUE "ProductVersion", VERSION_STRING "\0"
        END
    END
    BLOCK "VarFileInfo"
    BEGIN
        VALUE "Translation", 0x412, 1200
    END
END
 
#endif    // !_MAC

4. 프로젝트 속성 변경

프로젝트의 Pre-link step 빌드 이벤트에 다음 내용 추가.

makeversion.exe -inc version.ver
rc.exe /l 0x412 /fo"..\objs/Project.res" /d "NDEBUG" /d "_AFXDLL"  “Project.rc"

위의 rc.exe구문절의 내용은 아래 이미지 Resources 탭에서 내용을 가져온다.
이는, 리소스를 수동으로 컴파일 하는 방법이다.

5. makeversion.exe 옵션

  1. version.ver 파일을 자동 생성하려면
    makeverion –g
  2. 자동 빌드 증가 옵션 (예:Release 모드)
    ..\version\makeversion -inc $(ProjectDir)\version.ver
  3. 자동 빌드 하지 않기(예:DEBUG 모드)
    ..\version\makeversion  $(ProjectDir)\version.ver