MFC .rc文件解析(EXE属性详细信息添加)

Windows 资源文件(.rc文件)

rc 是resource的简称,对应着VS中的资源视图文件,目的是为了对程序中用到的大量的资源进行统一的管理。rc 文件是资源文件,包括比如对话框、菜单、图标、字符串、版本等资源信息。在win32编程中,.rc在程序编译时会被资源编译器编译生成一个.res的二进制文件

资源(Resources)类型

从文件导入的(BITMAP,ICON,HTML,FONT,CURSOR 等)

nameID BITMAP filename
IDI_ICON_MAIN       ICON       "res\\icon.ico"  //ICON RESOURCE

对话框资源类型:(DIALOG,DIALOGEX 等)

nameID DIALOGEX x, y, width, height [ , helpID]] [[ optional-statements]]  {control-statements }
IDD_DIALOG_ABOUT DIALOGEX 0, 0, 290, 59        //DIALOGEX RESOURCE
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Dialog"        // CAPTION   STATEMENT
FONT 8, "MS Shell Dlg", 400, 0, 0x1        // FONT  STATEMENT
BEGIN
    LTEXT           "Windows Resource Demo",3001,26,14,119,8,SS_NOPREFIX    //  CONTROL
    LTEXT           "Copyright (C) 2008",3002,26,30,119,8                        //  CONTROL
    DEFPUSHBUTTON   "OK",IDOK,234,14,32,14,WS_GROUP                //  CONTROL
    DEFPUSHBUTTON   "Quit",IDCANCEL,234,31,32,14,WS_GROUP            //   CONTROL

菜单资源类型

//MENU:
menuID MENU [[optional-statements]] { item-definitions ... }
//POPUP:
POPUP text, [[optionlist]] { item-definitions ... }
//MENU:
IDR_MENU_MAIN MENU        //MENU RESOURCE
BEGIN
    POPUP "File"        // POPUP RESOURCE
    BEGIN
        MENUITEM "&Open",        ID_FILE_COPY    // MENUITEM  STATEMENT
        MENUITEM SEPARATOR            // MENUITEM  STATEMENT
        MENUITEM "E&xit",         ID_FILE_EXIT  // MENUITEM  STATEMENT
    END
    POPUP "Help"        // POPUP RESOURCE
    BEGIN
        MENUITEM "&About",    ID_HELP_ABOUT// MENUITEM  STATEMENT
    END
END
 
//POPUP:
IDR_MENU_POPUP MENU 
BEGIN
    POPUP "POPUP"
    BEGIN
        MENUITEM "&Copy",        ID_POPUP_COPY
        MENUITEM "&Paste",        ID_POPUP_PASTE
        MENUITEM "Cu&t",        ID_POPUP_CUT
        POPUP "&Info"
        BEGIN
            MENUITEM "Co&unt",         ID_INFO_A
            MENUITEM "&Size",            ID_INFO_B
        END
    END
END

字符串表类型

自定义类型

Resource.h资源声明文件

#define IDD_DIALOG_ABOUT                101

在使用资源 ID 时经常会看到一个宏 MAKEINTRESOURCE,这个宏的功能是将资源 ID 转换为资源名(字符串形式),很多 API 函数在引用资源时都是通过资源名来引用的。

版本信息(VERSIONINFO)

在这里插入图片描述

1. 打开.rc文件

2. 添加版本信息

VS_VERSION_INFO VERSIONINFO
 FILEVERSION 1,0,0,0
 PRODUCTVERSION 1,0,0,0
 FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
 FILEFLAGS 0x29L
#else
 FILEFLAGS 0x28L
#endif
 FILEOS 0x4L
 FILETYPE 0x1L
 FILESUBTYPE 0x0L
BEGIN
    BLOCK "StringFileInfo"
    BEGIN
        BLOCK "040904e4"
        BEGIN
            VALUE "Comments", "Developed By XXX Inc."
            VALUE "CompanyName", "XXX Inc."
            VALUE "FileDescription", ""
            VALUE "FileVersion", "1.0.0.0"
            VALUE "InternalName", "XXX.exe"
            VALUE "LegalCopyright", "Copyright (C) 2009-2010"
            VALUE "LegalTrademarks", "XXX"
            VALUE "OriginalFilename", "XXX.exe"
            VALUE "PrivateBuild", "beta"
            VALUE "ProductName", ""
            VALUE "ProductVersion", "1.0.0.0"
            VALUE "SpecialBuild", "beta"
        END
    END
    BLOCK "VarFileInfo"
    BEGIN
        VALUE "Translation", 0x409, 1252
    END
END

Windows 资源文件(.rc文件)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值