googleTest 与 cocos2dx 3.0

googleTest 与 cocos2dx 3.0
       cocos2dx 2.x系列时,还能运行起googleTest,但换成3.x后,googleTest的输出成了红色的小块。网上给出的解决方案是,testing::FLAGS_gtest_color= "no";禁用掉googleTest的颜色显示。但不是根本的解决方法。经过查找,发现在gtest.cc 中void ColoredPrintf(GTestColor color, const char* fmt, ...)函数找到问题。
GetConsoleScreenBufferInfo(stdout_handle, &buffer_info);
 const WORD old_color_attrs = buffer_info.wAttributes;
本机应该是FOREGROUND_BLUE | FOREGROUND_GREEN | FOREGROUND_RED ,7白色字体
而关联cocos2dx后却是52428,严重怀疑3.0某个操作影响了屏幕字体颜色。

//SetConsoleTextAttribute(stdout_handle, old_color_attrs);这句先直接设置为白色。
  SetConsoleTextAttribute(stdout_handle, FOREGROUND_BLUE | FOREGROUND_GREEN | FOREGROUND_RED);


你可能感兴趣的:(googleTest 与 cocos2dx 3.0)