splayer_编译出现问题初步解决

A问题:

directshow环境搭建好了。

步骤:1、找到Windows sdk/…/Sampels/multimedia/directshow/baseclasses,要编译还是要导入随自己便了。

2、在baseclasses中生成四个结果:debug、release、Debug_MBCS、release_MBCS。爱用哪个用哪个

B问题:

出现了如下错误:

error C2061: 语法错误 : 标识符“CAMSchedule”
1>d:\program files\microsoft sdks\windows\v6.0\samples\multimedia\directshow\baseclasses\refclock.h(139) : error C2143: 语法错误 : 缺少“;”(在“*”的前面)
1>d:\program files\microsoft sdks\windows\v6.0\samples\multimedia\directshow\baseclasses\refclock.h(139) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>d:\program files\microsoft sdks\windows\v6.0\samples\multimedia\directshow\baseclasses\refclock.h(139) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>d:\program files\microsoft sdks\windows\v6.0\samples\multimedia\directshow\baseclasses\refclock.h(139) : warning C4183: “GetSchedule”: 缺少返回类型;假定为返回“int”的成员函数
1>d:\program files\microsoft sdks\windows\v6.0\samples\multimedia\directshow\baseclasses\refclock.h(178) : error C2143: 语法错误 : 缺少“;”(在“*”的前面)
1>d:\program files\microsoft sdks\windows\v6.0\samples\multimedia\directshow\baseclasses\refclock.h(178) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>d:\program files\microsoft sdks\windows\v6.0\samples\multimedia\directshow\baseclasses\refclock.h(178) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>d:\program files\microsoft sdks\windows\v6.0\samples\multimedia\directshow\baseclasses\refclock.h(139) : error C2065: “m_pSchedule”: 未声明的标识符
1>d:\program files\microsoft sdks\windows\v6.0\samples\multimedia\directshow\baseclasses\refclock.h(166) : error C2065: “m_pSchedule”: 未声明的标识符
1>d:\program files\microsoft sdks\windows\v6.0\samples\multimedia\directshow\baseclasses\refclock.h(166) : error C2227: “->GetEvent”的左边必须指向类/结构/联合/泛型类型

好像很杂乱的样子。

但是

错误1:

error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int

这条错误指向的位置是:

CAMSchedule * GetSchedule() const { return m_pSchedule; }

错误2:

error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int

这条错误指向的位置是:

CAMSchedule * m_pSchedule;

观察上面两天错误,都有字段“m_pSchedule;”

同样所有的其他错误都有字段“m_pSchedule;”,说明是由该字段引起的错误。猜测是:包含该字段的文件没有被引用或包含在内。

具体猜测正确与否还需要验证。

原文地址:https://www.cnblogs.com/Comet/p/1670650.html