vs2008中调试一个多目标跟踪程序的时候,遇到过此问题,在release下回忽略此问题,在release版本下不用关心这个问题,也就是系统帮你给屏蔽了,但是问题还是存在的,在debug环境下,报这样的错误。
错误原因:
这段代码本来没错,错在平台上。
nm.cbSize = sizeof (NONCLIENTMETRICS) ; 这个是低版本,通常所说的0x0501。低于系统与VS编译器2个版本(VS2008/VS2010)的,就会出问题。解决方法:
就在stdafx.h中
#pragma once
#ifndef _SECURE_ATL
#define _SECURE_ATL 1
#endif
#ifndef VC_EXTRALEAN
#defineVC_EXTRALEAN
#endif
这个语句的后面加上以下几句:
#ifndefWINVER
#define WINVER 0x0501
#endif
#ifndef _WIN32_WINNT
#define _WIN32_WINNT 0x0501
#endif