我用的VC版本是6.0的。自带direct9.0c。想问一下,下载哪个版本的才包含DirectShow,还有,给个明确点的答复

解决方案 »

  1.   

    在DX90SDK\Include这个目录有dshow。h
    如果你的没有
    那重装dxsdk吧
      

  2.   

    你好。
    http://topic.csdn.net/u/20080720/16/7b70f656-da81-4543-aa69-e19db3127f76.html
    我在这个帖子里的链接中。下了个DirectShow,安装成功。安装在C盘下。按照您的方法找到 了dshow.h
    添加到vc里面它还是说没有,我想问一下是不是还要对VC' 的环境进行配置的。怎么操作呢??
    具体点。多谢了、。@@@@!!!!在线等
      

  3.   

    DirectShow SDK in DirectX 9.0b
    我安装的是上面的这个,因为系统自带装的是9.0c的,所以我没有卸载,只是重新装了一个DirectShow。
    然后打开安装目录下的一个文件,想编译一下的。
    C:\XSDK\Samples\C++\DirectShow
    结果出现了这种问题。
    cannot open file "..\..\common\wmstub.lib"怎么回事啊???
      

  4.   

    你应该安装DirectX sdk 9.0c
    不是仅仅装directshow
      

  5.   

    http://www.onlinedown.net/soft/13300.htm
      

  6.   

    需要安装SDK,另外DSHOW 已经不用了,虽然新版本仍然兼容,但微软建议你用D3D
      

  7.   

    安装DirectX sdk9.0,并且配置头文件按路径,库文件路径:
    在Tools->options->directories选项卡,在右边的combox选择include files NEW新建文件路径指向
    你按照sdk中include文件,和library files新建路径那个指向你安装sdk的lib文件夹。
      

  8.   

    我系统自身装的就是9.0c,我没有卸载。在那基础上装的DirectShow。
      

  9.   

    那你搜索下硬盘
    看下是否有这个文件
    如果有
    那就按照8楼的方案设置下
    如果没有
    那就再安装一次dxsdk
    下载链接也在上面列出来了
      

  10.   

    重新安装sdk很快的
    又不是让你重装操作系统
      

  11.   

    http://bbs.lmtw.com/dispbbs.asp?BoardID=102&ID=120939&replyID=7912&skin=1
    硬盘中没有,从上面的连接下了一个。wmstub.lib,放到哪里呢??按照8楼的做法,还是不行。wmstub.lib放哪里呢??
      

  12.   

    重装前要不要先卸载啊????
    昨天我重装的,但是在程序——运行——dxdiag里查看有错误。
      

  13.   

    ok啦。不知道。咋弄 的。O(∩_∩)O~,没有重新装SDK。。
    又按照下面的方法。摸索了一下。我自己都不知道怎么弄的。
    后面的不完全按照8楼的说法。
    帖子链接:http://blog.eastmoney.com/wangxingdong,160028887.html6.将DirectX SDK的Include和Lib目录配置到VC的系统目录中去,并且放在标准的VC目录之前,以保证编译器能够拿到最新版本的源文件。选择Tools|Options|Directories,在弹出的对话框中的Show directories for中选择Include files,配置如下(假设DirectX SDK安装在D:\\DXSDK目录下,VC安装在C:\\Program Files下):     D:\\DXSDK\\Include     D:\\DXSDK\\SAMPLES\\C++\\DIRECTSHOW\\BASECLASSES     D:\\DXSDK\\SAMPLES\\C++\\COMMON\\INCLUDE     C:\\Program Files\\Microsoft Visual Studio\\VC98\\INCLUDE     C:\\Program Files\\Microsoft Visual Studio\\VC98\\MFC\\INCLUDE     C:\\Program Files\\Microsoft Visual Studio\\VC98\\ATL\\INCLUDE再在Show directories for中选择Library files,配置如下:     D:\\DXSDK\\Lib     D:\\DXSDK\\SAMPLES\\C++\\DIRECTSHOW\\BASECLASSES\\DEBUG     D:\\DXSDK\\SAMPLES\\C++\\DIRECTSHOW\\BASECLASSES\\RELEASE     C:\\PROGRAM FILES\\MICROSOFT SDK\\LIB     C:\\Program Files\\Microsoft Visual Studio\\VC98\\LIB     C:\\Program Files\\Microsoft Visual Studio\\VC98\\MFC\\LIB7,因为DirectShow应用程序是一种COM客户程序,因此在调用任何COM函数之前调用CoInitialize()(或CoInitializeEx)函数进行COM库的初始化(一般是在应用程序启动的时候调用一次),在结束COM库使用时调用CoUninitialize()函数进行反初始化(一般是在应用程序退出前调用一次)。
    ----------------------------
    配置时的问题【一定要注意】
    1。include和lib的路径前后顺序一定要“非常严格按照上面顺序排列”,否则
       1.1 DXSDK\\Include和VC98\\INCLUDE有头文件名是重名的,例如control.h,strmif.h。所以要优先选择DXSDK的文件声明。
       2.1 DXSDK\\Lib和VC98\\LIB对 DWORD_PTR 这个数据类型的声明顺序出现编译上连接的歧异!!!!2。BASECLASSES\\DEBUG和BASECLASSES\\RELEASE目录和目录里面是内容是没有的,如果你在应用程序中使用了BASECLASSES里面的class,function,filter,interface,就要先用VC编译baseclasses.dsw,编译时请分别选定DEBUG和RELEASE,因为baseclasses.dsw有4个版本,而且默认下都不是DEBUG和RELEASE。编译后生成两个重要文件:strmbasd.lib(Debug),STRMBASE.lib(Release),在以后将用到。