Direct Show的环境配置

    xiaoxiao2021-04-14  55

    1.安装DriectX9.0_c SDK,默认安装到C盘根目录下; 2.编译基类源代码,生成静态库文件,使用VC6打开C:\DXSDK\Samples\C++\DirectShow\BaseClasses目录下的baseclasses.dsw工程,Debug/Debug Unicode版本生成strmbasd.lib,Release/Release Unicode版本生成strmbase.lib。 3.配置VC6的编译环境,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 4.配置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.) 5. 如果安装的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)调用的一一配对。

    转载于http://blog.csdn.net/duduna/article/details/5998343

    转载请注明原文地址: https://ju.6miu.com/read-670258.html

    最新回复(0)