win7 vs2010 配置 directshow

来源:互联网 发布:vr视频下载软件 编辑:程序博客网 时间:2024/06/09 20:18

1.下载DirectShow

现在DirectShow已经不和DirectX一起发布,而是和windows sdk 打包发布。

win7 sdk下载地址:http://www.microsoft.com/download/en/details.aspx?id=8442。


按系统类型进行下载:


也有人下载老版本的DirectShow,比如DirectX 9.0c sdk。不过老版本的DirectShow,在Win7 + vs2010环境下编译可能会出很多问题,包括语法错误。而我直接下载DirectShow的最新版本,编译起来就顺利多了。

2.安装DirectShow

安装过程很简单,几乎是一路next就可以。安装路径默认就好,另外就是可以有选择的安装。比如只勾选“Samples(里面包含DirectShow)”和“Windows Headers and Libraries”。


3.编译DirectShow

需要编译的是DirectShow下的baseclasses项目,默认路径是:“C:\Program Files\Microsoft SDKs\Windows\v7.1\Samples\multimedia\directshow\baseclasses”。


可以编译生成4个不同版本的.lib。(注意:在开发DirectShow应用程序时,在Debug时应该链接strmbasd.lib;在Release时应该链接strmbase.lib。如果在Debug时链接strmbase.lib,就可能会输出大量的error LNK2019和error LNK2001。因为这些调试函数在strmbase.lib中不存在。)


因为我这里下载的是最新版本的DirectShow,所以没有遇到很多网友提出的各种编译错误。

4 配置DirectShow目录

开发DirectShow程序时,需要在项目属性中添加DirectShow的include和lib目录(最好按照如下顺序)。

(1)include:

C:\Program Files\Microsoft SDKs\Windows\v7.1\Samples\multimedia\directshow\baseclassesC:\Program Files\Microsoft SDKs\Windows\v7.1\Samples\multimedia\directshow\commonC:\Program Files\Microsoft SDKs\Windows\v7.1\Include

(2)lib:

C:\Program Files\Microsoft SDKs\Windows\v7.1\LibC:\Program Files\Microsoft SDKs\Windows\v7.1\Samples\multimedia\directshow\baseclasses\DebugC:\Program Files\Microsoft SDKs\Windows\v7.1\Samples\multimedia\directshow\baseclasses\Release

5.编译错误

按照以上步骤编译、配置之后,我在开发DirectShow程序时只遇到一个编译错误:

error C4430: missing type specifier - int assumed. Note: C++ does not support default-int

这个错误在编写WinCE DirectShow程序时就遇到过,解决方法就是添加C/C++的命令行:/wd4430。

6. 至此,我的DirectShow程序已经可以跑起来了。

参考链接:

http://blog.csdn.net/luckyboy101/article/details/7801173

http://www.cnblogs.com/chef/archive/2012/06/26/2564166.html

http://blog.163.com/wuyuanhere@126/blog/static/173323728201181910123054/

http://www.cnblogs.com/sailing/archive/2010/07/25/1784905.html





原创粉丝点击