syntax error : missing ' ' before identifier

场景:error C2146: syntax error : missing ';' before identifier 'hdr',该怎么解决

error C2146: syntax error : missing ';' before identifier 'hdr'
Platform:
OS:win7
Windows SDK 7.0
VS2008

[Partial source code]
...
typedef struct _PSHNOTIFY
{
  NMHDR hdr;
  LPARAM lParam;
} PSHNOTIFY, *LPPSHNOTIFY;
...

这个NMHDR定义明明就在(Go to Definition )已经看的见,可为什么就是编译出错呢


------解决方案--------------------
某处未定义,帖全部代码吧
------解决方案--------------------
探讨
引用:
那先验证一下好啦。在这个结构体之前,typedef int NMHDR; 一下,看看到底是不是这个问题。

加上这个编译可以通过

------解决方案--------------------
探讨
晕倒;微软的库文件还能错吗;是其他地方有问题;
不要重新定义库里面的结构;不错才怪;

------解决方案--------------------
可能是某个变量未定义,或者缺少库文件造成的
------解决方案--------------------
VC中宏定义不像类定义一样有类向导。宏定义好像没有,只能手动定义。
------解决方案--------------------
你可能少了在预编译选项中定义某个变量,找一下用这个头文件应该怎么配置环境。