makefile & nmake 를 사용 하여 dll 파일을 생성 할 때 버전 정보를 넣는 방법.


version.h
#ifndef VERSION_H
#define VERSION_H

#define VER_FILEVERSION                 1,0,0,0
#define VER_FILEVERSION_STR         "1.0.0.0\0" //` 파일 버전
#define VER_COMPANYNAME_STR         ""
#define VER_FILEDESCRIPTION_STR     "" //` 파일 설명
#define VER_INTERNALNAME_STR        ""
#define VER_LEGALCOPYRIGHT_STR      "Copyright @ 2018"
#define VER_LEGALTRADEMARKS1_STR    "All Rights Reserved"
#define VER_LEGALTRADEMARKS2_STR    VER_LEGALTRADEMARKS1_STR
#define VER_ORIGINALFILENAME_STR    "" //` 원본 파일 이름
#define VER_PRODUCTNAME_STR         "" //` 제품 이름
#define VER_COMPANYDOMAIN_STR       ""
#endif // VERSION_H

version.rc
#include <windows.h>
#include "version.h"

VS_VERSION_INFO VERSIONINFO
FILEVERSION     VER_FILEVERSION
BEGIN
    BLOCK "StringFileInfo"
    BEGIN
        BLOCK "040904E4"
        BEGIN
            VALUE "CompanyName",        VER_COMPANYNAME_STR
            VALUE "FileDescription",    VER_FILEDESCRIPTION_STR
            VALUE "FileVersion",        VER_FILEVERSION_STR
            VALUE "InternalName",       VER_INTERNALNAME_STR
            VALUE "LegalCopyright",     VER_LEGALCOPYRIGHT_STR
            VALUE "LegalTrademarks1",   VER_LEGALTRADEMARKS1_STR
            VALUE "LegalTrademarks2",   VER_LEGALTRADEMARKS2_STR
            VALUE "OriginalFilename",   VER_ORIGINALFILENAME_STR
            VALUE "ProductName",        VER_PRODUCTNAME_STR
        END
    END

    BLOCK "VarFileInfo"
    BEGIN
        VALUE "Translation", 0x409, 1252
    END
EN

Makefile

RSC      = rc.exe

OBJDIR  =.\obj
RSC_PROJ=/l 0x412 /fo"$(OBJDIR)\version.res" /d "NDEBUG"

LIB_OBJ = $(OBJDIR)\version.res

#라이브러리 생성 FLAG에 $(LIB_OBJ) 포함

"$(OBJDIR)\version.res" : .\src\version.rc $(OBJDIR)
     $(RSC) $(RSC_PROJ) .\src\version.rc


+ Recent posts