DirectShow 配置环境

转载 2012年03月26日 11:19:46

从网上下了DirectX 9.0 SDK,运行里面的的BaseClasses的时候出现了N多错误,在网上找到了相应的方法。 

   1. 编译基类源代码

   BaseClasses编译生成

路径:<DXSDK>/Samples/C++/DirectShow/BaseClasses

环境:VS2005
为了正确编译,需修改以下文件:
(a) ctlutil.h
D:/DXSDK/Samples/C++/DirectShow/BaseClasses/ctlutil.h
 
编译时提示错误:
BaseClasses/ctlutil.h(278) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
 
 修改:
    //operator=(LONG); //原代码
    COARefTime& operator=(LONG);
 
     改完这个之后,出现一堆错误,一个一个来改。
 
(b) wxdebug.cpp
d:/DXSDK/Samples/C++/DirectShow/BaseClasses/wxdebug.cpp
 
错误:
1>./wxdebug.cpp(567) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
改:
        //static g_dwLastRefresh = 0;
        static DWORD g_dwLastRefresh = 0; //lspmodify
 
(c) winutil.cpp
d:/DXSDK/Samples/C++/DirectShow/BaseClasses/winutil.cpp
 
错误:
1>./winutil.cpp(2104) : error C2065: “Count”: 未声明的标识符
改:
    //for (UINT  Count = 0;Count < Result;Count++) 
    UINT Count; //lspmodify
   for (Count = 0;Count < Result;Count++) { //lspmodify
 
(d) outputq.cpp
d:/DXSDK/Samples/C++/DirectShow/BaseClasses/outputq.cpp
 
错误:
1>./outputq.cpp(664) : error C2065: “iDone”: 未声明的标识符
改:
     //for (long  iDone = 0;
long iDone; //lspmodify
for (iDone = 0; //lspmodify
 
在DirectShow 8.0的SDK里面就看到有下面的头文件,在我装的是9.0的,没有找到这些文件。所以编译的时候修改完上面的就可以通过了。但要是装8.0的话就要修改了。

2、头文件修改

(a) winnt.h
d:/Program Files/Microsoft Visual Studio 8/VC/PlatformSDK/include/winnt.h
 
在该文件头部添加:
#define POINTER_64 __ptr64 // add by peter lee
 
(b) vmr9.h
D:/DXSDK/Include/vmr9.h
       MixerPref9_RenderTargetRGB      = 0x1000,

       MixerPref9_RenderTargetYUV      = 0x00002000, //lsp add

 

3、VS2005环境配置

在vs2005下,选择菜单 Tools -> Options,左栏选择Projects and Solutions -> VC++ Directories

 

在弹出的对话框的"Show directories for"(显示以下内容的目录)中选择Include files(包含文件):

- include:
<DXSDK>/Include
<DXSDK>/Samples/C++/Common/Include
<DXSDK>/Samples/C++/DirectShow/BaseClasses
<WMSDK>/WMFSDK9/include
...
再在"Show directories for"中选择 Libraries files(库文件):
- lib:
<DXSDK>/lib
<DXSDK>/Samples/C++/Common/Src
<DXSDK>/Samples/C++/DirectShow/BaseClasses/Debug_Unicode
<DXSDK>/Samples/C++/DirectShow/BaseClasses/Release_Unicode
<WMSDK>/WMFSDK9/lib
 
 

修改完成啦,哈哈~~~编译通过了~~ DirectX9.0 只需要做第一步修改就可以了,但8.0就要三步都做完~~~晕倒~~

 

转自:http://blog.csdn.net/bwmwm/article/details/4106522

相关文章推荐

DirectShow完美环境配置

  • 2015年07月09日 17:12
  • 2.48MB
  • 下载

配置DirectShow开发环境(VS2010,64位Win8系统)

配置DirectShow开发环境(VS2010,64位Win8系统) 目前,新版的DirectShow并没有包括在DirecxtX中一起发布,而是和Windows SDK一起打包发布,因此首先要下载...
  • iw1210
  • iw1210
  • 2016年03月20日 14:27
  • 1803

Directshow开发环境配置vs2008

  • 2011年02月28日 19:38
  • 19KB
  • 下载

DirectShow开发环境的配置

  • 2012年03月16日 20:45
  • 1.37MB
  • 下载

directshow环境配置

文本预览: 一、配置方法 1、先编译SamplesC++DirectShowBaseClasses中的工程文件。注意工程的默认选项是D ebug_Unicode的,在非Unicode的工程中...

DirectShow 在VS2005中环境配置

网址:http://blog.cnii.com.cn/?75821/viewspace-24418.html 一.DirectShow的环境配置:本人使用的是VS2005,要使用DirectShow进...

DirectShow 配置环境

调试DirectShow里面的的BaseClasses的时候出现了N多错误,在网上找到了相应的方法。就是上面那个链接啦,哈哈~~    1. 编译基类源代码    BaseClasses编...

32位Win7平台VS2010的directshow开发环境配置

自己在配置的过程中,化费了许多时间,记录下来,以免以后重蹈覆辙。      目前,新版的DirectShow并没有包括在DirecxtX中一起发布,而是和Windows SDK一起打包发布,因此...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:DirectShow 配置环境
举报原因:
原因补充:

(最多只允许输入30个字)