本站首页    管理页面    写新日志    退出


«September 2025»
123456
78910111213
14151617181920
21222324252627
282930


公告

☆★☆★☆★☆★☆★☆
生活的点点记录,以及一些体会...........

喜欢是淡淡的爱,爱是深深的喜欢.

时间会见证一切.......................

欢迎大家指出错误,共同进步..........

期待中..............................

☆★☆★☆★☆★☆★☆


我的分类(专题)

日志更新

最新评论

留言板

链接

世纪音频

 

 


Blog信息
blog名称:
日志总数:162
评论数量:312
留言数量:0
访问次数:947250
建立时间:2005年5月17日




[work]DirectShow 在VS2005中环境配置
文章收藏

oceanblue 发表于 2009/4/14 17:38:24

DirectShow 在VS2005中环境配置   一.DirectShow的环境配置:本人使用的是VS2005,要使用DirectShow进行编程,需要对环境进行必要的配置。 第一步:对dssdk中的baseclass.sln进行编译,生成需要的debug和release文件,具体步骤如下:在VS6中,安装DirectShow9c版本之后,直接打开BaseClass中的VS6工程baseclasses.dsw文件,直接编译即可,编译Debug  Release Debug_Unicode   Release_Unicode四个版本,都需要进行额外的设置(头文件或者链接库目录设置)。DirectShow的BaseClass中已经带了VS2005的工程文件baseclasses.sln,在vs2005中打开此文件,提示你进行必要的工程转换,转换之后开始编译,编译过程一般会出现下面两个问题:(1)C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include\winnt.h(222) : error C2146: syntax error : missing ';' before identifier 'PVOID64'(2)error C4430: missing type specifier - int assumed. Note: C++ does not support default-int(3)error C2065: 'Count' : undeclared identifier第一类问题的解决:安装xpsp2,如何将其include目录包含进去;一般将其放在dshow头文件之后,放在platsdk目录之前;第二类问题的解决:错误发生在:operator=(LONG);函数定义中,这是因为在VC6中,如果没有显示的指定返回值类型,编译器将其视为默认整形;但是vs2005不支持默认整形,解决这个问题不能修改每个没有显示指示返回值类型的函数地方,可以用wd4430来解决;具体的在工程选项中的c++/Command Line中添加/wd4430即可。第三个错误发生在for循环中,vs6中for循环中定义的变量相当于在for外面定义,可以在for之外地方使用;但是vs2005for循环中定义变量相当于域{}变量,只能在for循环中使用。要解决这个问题,可以通过修改vs2005的工程选项:”Project Option” --– “ C++ ” —--  “Language” --- “Force Comformance in For Loop Scrope” 设置为No即可。完成上面的设置,BaseClass工程基本可以编译通过了。 第二步:需要设置相应的配置在把dxsdk中提供的baseclass编译通过后,用四种方式编译,会分别生成四个lib,一般只用到了其中的Debug和Release文件,在tool|option|vc++ directories中包含的files中设置如下。这里需要加入得include files有三种:D:\SDK\DXSDK\IncludeD:\SDK\DXSDK\Samples\C++\DirectShow\BaseClassesD:\SDK\DXSDK\Samples\C++\Common\Include 在后边的library files中也需要增加三到四种的文件:D:\SDK\DXSDK\LibD:\SDK\DXSDK\Samples\C++\DirectShow\BaseClasses\DebugD:\SDK\DXSDK\Samples\C++\DirectShow\BaseClasses\Release 把以上设置好,基本就可以将DirectShow程序在vs2005环境中编译通过。


阅读全文(2373) | 回复(0) | 编辑 | 精华
 



发表评论:
昵称:
密码:
主页:
标题:
验证码:  (不区分大小写,请仔细填写,输错需重写评论内容!)



站点首页 | 联系我们 | 博客注册 | 博客登陆

Sponsored By W3CHINA
W3CHINA Blog 0.8 Processed in 0.031 second(s), page refreshed 144788968 times.
《全国人大常委会关于维护互联网安全的决定》  《计算机信息网络国际联网安全保护管理办法》
苏ICP备05006046号