syntax error: missing ';' before identifier 'IWebBrowser'

遇到这个错误. google的结果是 去掉 

WIN32_LEAN_AND_MEAN 宏定义

然而由于项目中使用了很多第三方库, 如果去掉这个宏, 会导致其他项目编译错了.
关于这个宏有什么用, 可以百度搜索下. 大致上就是不包含一些不常用的头文件

产生这个错误的根本原因就是某个头文件没有被包含
在windows 头文件中 搜了下使用 WIN32_LEAN_AND_MEAN 的地方

#ifndef WIN32_LEAN_AND_MEAN
...
#include <ole2.h>
...
#endif

所以只要
#include <ole2.h>
即可解决问题