我现在调试的程序是别人写好的,在他的机子上已经一切正常了,但是我一编译,就是提示有未声明的标志符,如'WS_EX_LAYOUTRTL' : undeclared identifier,这个是在winuser.h定义的宏。我的文件已经include了winuser.h头文件,几个错误都是这样的,奇怪啊,这到底是什么原因呢?会不会和我装了,SDK for XP sp2和boost库有关系,有什么设置错了么?

解决方案 »

  1.   

    你机器的WIN版本?
    #if(WINVER >= 0x0500)
    #define WS_EX_NOINHERITLAYOUT   0x00100000L // Disable inheritence of mirroring by children
    #define WS_EX_LAYOUTRTL         0x00400000L // Right to left mirroring
    #endif /* WINVER >= 0x0500 */
      

  2.   

    老大们,我还是不清楚啊,能否说明白点,我是菜菜鸟?我用的是Win XP,也没有少加lib的路径啊!
      

  3.   


    是编译器的问题.v6默认98\nt系统,而你用的函数可能是2000\xp\2003系统中,所以要设置版本.
      

  4.   

    具体怎么定义WINVER 修改版本呢?
      

  5.   

    在STDAFX.H中
    #define WINVER 0x0500