刚接触视频开发,就遇到了困难,把自己的经验分享给他家,希望少走弯路:
安装好vc++6.0,及derectx9.0 SDK 及Microsoft Platform SDK for Windows Server 2003 SP1(xp系统)
出现错误:
环境配置 :
分directXInput 和directXshow的不同开发:
要将directx sdk的include和lib目录配置到vc的系统目录中,并且放到标准的vc目录之前,以保证编译器能拿到最新版本的源文件。
DirectXshow;
1)选择include files
说明:将C:\Program Files\Microsoft DirectX 9.0 SDK (Summer 2004)换成自己的SDK的安装目录
添加这些路径:
C:\Program Files\Microsoft Platform SDK\Include
C:\Program Files\Microsoft DirectX 9.0 SDK (Summer 2004)\Include
C:\Program Files\Microsoft DirectX 9.0 SDK (Summer 2004)\Samples\C++\DirectShow\BaseClasses
C:\Program Files\Microsoft DirectX 9.0 SDK (Summer 2004)\Samples\C++\Common\INCLUDE
D:\VC98\MFC\INCLUDE(这个是vc本身自带的)
2)选择Liberary files
添加这些路径:
C:\Program Files\Microsoft Platform SDK\Lib
C:\Program Files\Microsoft DirectX 9.0 SDK (Summer 2004)\Lib
C:\Program Files\Microsoft DirectX 9.0 SDK (Summer 2004\Samples\C++\DirectShow\BaseClasses\release
C:\Program Files\Microsoft DirectX 9.0 SDK (Summer 2004)\Samples\C++\DirectShow\BaseClasses\debug
D:\VC98\MFC\LIB(这个vc本身就带的)
DirectXInput:
只在vs2010的视图-->属性管理----》win32\debug--->vc++添加自己安装的directX SDK 的安装路径下的include和lib路径即可
1)缺少“streams.h”
解决办法:
streams.h这个文件在路径
C:\Program Files\Microsoft DirectX 9.0 SDK (Summer 2004)\Samples\C++\DirectShow\BaseClasses下。、
在VC++6.0里面设置如下:
tools-->options--->derectories--->右边栏,Show derectories for
2)
出现 DirectX9.missing ';' before identifier 'HSEMAPHORE错误:
解决方法:
1/ 将#include "c:\dxsdk\include\strmif.h"加入VC的"stdafx.h"文件中
2/编译运行,如果成功的话,再把#include "c:\dxsdk\include\strmif.h"从"stdafx.h"中删除掉