SDK中sample的编译错误
SDK中sample的编译错误(2009-04-08 10:47:02)
杂谈? 转自:/bestfighter_210@126/blog/
?
编译BaseClasses
正在编译...
dllentry.cpp
D:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\Include\winnt.h(222) : error C2146: 语法错误: 缺少“;”(在标识符“PVOID64”的前面)
D:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\Include\winnt.h(222) : error C4430: 缺少类型说明符- 假定为int。注意: C++ 不支持默认int
D:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\Include\winnt.h(5940) : error C2146: 语法错误: 缺少“;”(在标识符“Buffer”的前面)
D:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\Include\winnt.h(5940) : error C4430: 缺少类型说明符- 假定为int。注意: C++ 不支持默认int
D:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\Include\winnt.h(5940) : error C4430: 缺少类型说明符- 假定为int。注意: C++ 不支持默认int
D:\DXSDK\Include\uuids.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为Unicode 格式以防止数据丢失
生成日志保存在“file://d:\BaseClasses\Debug_Unicode\BuildLog.htm”
BaseClasses - 5 个错误,个警告
出现错误的地方:
typedef void *PVOID;
typedef void * POINTER_64 PVOID64;
更改:
#define POINTER_64 __ptr64///gai
typedef void *PVOID;
typedef void * POINTER_64 PVOID64;
错误:.\wxdebug.cpp(567) : error C4430: 缺少类型说明符- 假定为int。注意: C++ 不支持默认int
错误地方:static g_dwLastRefresh = 0;
修改:static int g_dwLastRefresh = 0;
编译Capture
出现错误:LINK : fatal error LNK1104: 无法打开文件“libci.lib”
生成日志保存在“file://d:\DXSDK\Samples\C++\DirectShow\Capture\CaptureTex\Debug\BuildLog.htm”
CaptureTex - 1 个错误,个警告
错误原因:缺少数据库LIBCI.LIB在2003和2005中已经不存在了
编译DMODEMO
错误:
..\..\..\Common\Src\dsutil.cpp(686) : error C2065: “i”: 未声明的标识符
错误的地方:
if( i != m_dwNumBuffers )
??????? return m_apDSBuffer[ i ];
??? else
??????? return m_apDSBuffer[ rand() % m_dwNumBuffers ];
更改:在前面添加???? unsigned char i;/
编译DMOSAMPLE
d:\DXSDK\include\dmoimpl.h(622) : error C2065: “dw”: 未声明的标识符
??????? d:\DXSDK\include\dmoimpl.h(588): 编译类模板成员函数“HRESULT IMediaObjectImpl<_derived_>::ProcessOutput(DWORD,DWORD,DMO_OUTPUT_DATA_BUFFER *,DWORD *)”时
??????? with
??????? [
??????????? _DERIVED_=CSample,
??????????? NUMBERO