代码之家  ›  专栏  ›  技术社区  ›  foraidt

如何有条件地编译VC6资源

  •  1
  • foraidt  · 技术社区  · 17 年前

    取决于编译开关(值为 COMPILE_A COMPILE_B

    1. 在“项目/设置/C/C++/预处理器定义”中,我添加了 $(COMPILESWITCH) /D "$(COMPILESWITCH)"

    
        #if defined COMPILE_A
        #   define IDB_SPLASH IDB_SPLASH_A
        # elif defined COMPILE_B
        #   define IDB_SPLASH IDB_SPLASH_B
        # else
        #   error Unknown or undefined target compile switch; cannot compile!
        # endif
    

    帮助文本显示如下:

    确定是否包括 建筑。

    _DEBUG /D _DEBUG 我的

    1 回复  |  直到 17 年前
        1
  •  2
  •   Community Mohan Dere    6 年前

    我想我刚刚解决了我的问题。..


    res\<projectname>.rc2

    #if defined(COMPILE_A)
        STRINGTABLE DISCARDABLE 
        BEGIN
            IDR_MAINFRAME           "AppTitle A"
        END
    #else
    #   if defined(COMPILE_B)
        STRINGTABLE DISCARDABLE 
        BEGIN
            IDR_MAINFRAME           "AppTitle B"
        END
    #   else
    #       error Compile switch not defined or unknown; cannot compile!
    #   endif
    #endif
    
    推荐文章