2009-11-10 0:28

此文章:自己编写 转载于《汤姆&杰瑞》

DirectShow 1 —— 下载与VC配置

1 DirectX SDK9

Directshow sdk 下载网址 :
http://download.microsoft.com/download/d/9/1/d91c44b9-fbac-4e8e-bee1-4a75777923ec/dxsdk_feb2005_extras.exe

在执行DirectShow样例时必须先用设置Visual C++编辑环境,要不然交会发生连接错误或者是找不到定义等等众多错误。

设置直要是指定编绎器去查找程序所引用的头文件,库文件或者是资源文件的所在目录的路径

设置步骤:菜单条中的工具->选项->项目和解决方式->Vc++文件夹,然后就要以在右边的下拉框中选择可运行文件,头文件,库文件等待。这样就能够设置其所在文件的路径了。

所包括的文件可能放在:

1.DirctX 安装所在目录中的:Lib和Include目录中;

2.Platform 安装所在目录中的:Lib,Include,Samples\Multimedia\DirectShow\BaseClass,和Samples\Multimedia\DirectShow\Common文件里。

怎么确定项目所须要那些文件:
在SDK中查找编译出错。提示未定义的成员的帮助,看看它所须要那些头文件和库文件,就能够用#include 与#pragma comment 把它们引用代码文件里如
#include <dshow.h>
#pragma comment(lib, "ole32.lib" )

如里它所提供的样例没有存在VC++解决方式,而自己新建空解决方式把所提供的源文件加入进行。执行起来可能会遇到非常多难以想像的问题。由于它们NMAKE命令去生成项目。在生成过程中,它们文件这间有编译的前后顺序,并且有些文件要依懒于前一个编译生成的文件,所以要设置项目属性是非常复杂的,设置的不好非常easy出现各各样的编译错误。但你能够在在命令行中转到项目全部目录。执行命令:nmake /n ,查看生成项目所执行的命令。然后依据命令的信息而去设置新建项目的属性。你要正确去配置项目的属性,就必须了解这个命令nmake,CL.EXE,LINK.EXE,,RC.EXE;以下给出一些參考。

NMAKE命令选项參考
Microsoft 程序维护有用工具 (NMAKE.EXE) 是一个 32 位,基于说明文件里包括的命令生成项目的工具。
http://msdn.microsoft.com/library/c...ake_options.asp

CL.exe 选项说明
CL.exe 是控制 Microsoft C 和 C++ 编译器与链接器的 32 位工具。编译器产生通用对象文件格式 (COFF) 对象 (.obj) 文件。链接器产生可运行文件 (.exe) 或动态链接库文件 (DLL)。

http://msdn.microsoft.com/library/c...habetically.asp

link命令选项參考:
LINK 是将通用对象文件格式 (COFF) 对象文件和库链接起来以创建 32 位可运行 (.exe) 文件或动态链接库 (DLL) 的 32 位工具

http://msdn.microsoft.com/library/c...r_reference.asp

CL.EXE 与link的关系
http://msdn.microsoft.com/library/c...ink_options.asp

RC命令
Microsoft Windows 资源编译命令。没有找到相关的资料,仅仅在命令行在输入RC /?

查看它自带的帮助了。

命令行中生成DirectShow SDK 中的样例
http://www.cnblogs.com/xuanfeng/arc.../04/494236.html

2 DirectX SDK8.1

(如果DirectX SDK8.1安装在C:\DXSDK文件夹下。)
1. 编译基类源码,至少生成两个静态库文件
打开C:\ DXSDK\samples\Multimedia\DirectShow\BaseClasses\baseclasses.dsw,Debug版本号生成strmbasd.lib。Release版本号生成strmbase.lib。

2. 配置VC的编译环境:Include文件夹和Lib文件夹。运行VC的菜单命令Tools | Options…,在随后弹出的对话框中进入Directories一页,在Show directories for一项选择Include files,然后配置例如以下:(注意,务必将DirectX SDK的文件夹放在标准的VC文件夹之前。)
C:\DXSDK\Include
C:\ DXSDK\samples\Multimedia\DirectShow\BaseClasses
C:\ DXSDK\samples\Multimedia\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。配置例如以下:
C:\DXSDK\Lib
C:\ DXSDK\samples\Multimedia\DirectShow\BaseClasses \DEBUG
C:\ DXSDK\samples\Multimedia\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\LIB

3. 配置DirectShow应用程序开发项目须要连接的库文件。
运行VC的菜单命令Project | Settings…,在随后弹出的对话框中进入Link一页。在Object/library modules一项,Debug版输入Strmbasd.lib Msvcrtd.lib Winmm.lib。Release版本号输入Strmbase.lib Msvcrt.lib Winmm.lib。

Ignore default libraries. (In Microsoft® Visual C++® 6.0, choose Settings from the Project menu. Click the Link tab and check Ignore all default libraries.)

4. 假设安装的DirectX SDK的版本号是9.0曾经的,请确认在编译应用程序的Debug版本号之前已经定义了DEBUG宏。运行VC的菜单命令Project | Settings…,在随后弹出的对话框中进入C/C++一页,在Category一项选择Preprocessor,然后确认Preprocessor definitions中有DEBUG(假设没有就自己加上)。

另外,应用程序在调用不论什么COM库函数之前,务必调用CoInitialize或CoInitializeEx进行COM库的初始化(一般仅仅需在程序启动的时候调用一次);在结束全部COM操作之后。调用CoUninitialize反初始化(通常情况下,程序退出前调用一次)。当程序有多个线程应该使用COM库函数。然后,每个线程必须初始化和反初始化。简而言之,为了确保CoUninitialize和CoInitialize(或CoInitializeEx)通话一对。

vc有关 directx组态,和dxsdk_extras(directshow)相关推荐

  1. 图解VC#版DirectX开发教程二 - 摄像机

    用VC#进行DirectX开发,程序结构大体都是一样的. 上一篇博文,VC#版DirectX开发入门详解 http://blog.csdn.net/bcbobo21cn/article/details ...

  2. 补齐 windows 运行库和运行环境(VC++、DirectX、.Net)

    安装一些应用时,可能会缺少各种库文件导致软件崩溃报错.缺少的主要有三类:vc++.directx..net. Visual C++运行库 这是最基本的库. 下载链接: 最新受支持的 Visual C+ ...

  3. 空间素材代码_C++大神解读视频捕获程序,VC++基于Directx开发的源代码

    一款小巧的视频捕获程序,VC++6.0基于Directx开发的源代码,编译时需要Directx相关类库文件, 窗口表单编写的简单视频捕捉应用程序.这个工程既演示了窗口表单应用程序的创建,又演示了 Op ...

  4. VC#版DirectX开发入门详解

    一 首先需要安装DirectX SDK, 可在 http://download.microsoft.com/download/F/1/7/F178BCE4-FA19-428F-BB60-F3DEE11 ...

  5. DirectX和DirectShow介绍和区别

    1.DirectX是什么 DirectX是微软推出的一套基于Windows系统的多媒体应用程式接口APIs函式.在开发中,DX分为两个部分,一个是运行库,通过DX编译出来的程式必须要有运行库的支持,另 ...

  6. Directshow完整介绍

    最近一段时间,在编写DirectShow应用程序时常常遇到一些问题,原因是对DirectShow技术没有较全面地掌握,对各个接口间的关系以及filter与filter之间连接的内部过程等都只是一知半解 ...

  7. (必看)视频开发项目的技术来源、实现形式、走向。 --VFW。DirectSHow 。MediaFoundation...

    1. DirectX.Directshow及Wince Directshow 1.DirectX是什么 DirectX(简 称:DX)是微软推出的一套基于Windows系统的多媒体应用程式接口APIs ...

  8. DirectX SDK版本与Visual Studio版本

    DirectX SDK版本与Visual Studio版本 对于刚刚接触 DirectShow 的人来说,安装配置是一个令人头疼的问题,经常出现的情况是最基本的 baseclass 就无法编译. 一开 ...

  9. 设置DirectShow开发的编译环境

    这个章节的内容主要是编写 DirectShow应用所需的一些基本概念,可以把它当作一个高级介绍,理解这些内容只需具备一般的编程和有关多媒体的知识.  2.1. 设置DirectShow开发的编译环境  ...

  10. DirectX for DirectShow---Get Start

    ccc译自DirectX的DirectShow--Get Start (2001.8.20) DirectX是关于多媒体编程的环境(SDK).DirectShow是关于Windows媒体捕捉与播放的编 ...

最新文章

  1. 工信部明确公共互联网网络安全突发事件分级预警、应急
  2. 本地---tcpserver与tcpclient
  3. Linux SD卡驱动开发(六) —— SD卡启动过程总体分析
  4. 2019年普通高等程序员招生统一考试
  5. Python爬虫从入门到放弃(十三)之 Scrapy框架的命令行详解
  6. 随想录(OllyDbg和IDA Pro的配合使用)
  7. iis7 下php 环境配置文件,IIS7.X配置PHP运行环境小结_php
  8. delphi acropdf打印多个pdf_将多个PDF文件整合成一个文件
  9. android person类_骚操作:不重启 JVM,如何替换掉已经加载的类?
  10. 模型计算机微指令总表,基于微程序控制器的模型计算机设计
  11. wincc报表日报表实例_wincc报表例程
  12. 【技术贴】网页部分图片显示x红叉,网页图片不显示,网页图片显示异常,网页图片打不开。...
  13. Tinkpad笔记本双击开发Q盘不再提示创建恢复介质的对话框了,而且进入磁盘后文件夹是空的!
  14. 平板电脑触摸屏市场现状及未来发展趋势
  15. cmd窗口太炫酷了,电脑编码软件太多?手把手教你搭建Java环境,利用dos命令实现运行操作
  16. KINOVA公司JACO2、MICO2从安装到开发
  17. 结构体嵌套结构体,及其的初始化
  18. Go 语言优势、对比
  19. 一起来“泡博”[--老沙]
  20. Windows驱动之MDL

热门文章

  1. 算法复杂度与NP问题
  2. 从零基础入门Tensorflow2.0 ----五、23TF1.0计算图构建,模型训练
  3. LaTeX技巧:算法标题 Algorithm如何重命名
  4. word导入文献-mendeley
  5. 【GIS免费精品课程笔记】1 传统数据处理VS大数据处理思维
  6. PHP实现完全二叉树
  7. Python爬虫框架Scrapy报错:ModuleNotFoundError: No module named 'scrapy'
  8. Apache Flink 在斗鱼的应用与实践
  9. mysql存储过程详细教程6_存储过程详解(示例代码)
  10. 画数轴的步骤_上分助手北师大数学七年级上册第二章有理数第二节数轴详细拆解...