VS2008编译项目遇到的问题以及解决方法「建议收藏」

VS2008编译项目遇到的问题以及解决方法「建议收藏」VS2008编译项目遇到的问题以及解决方法

大家好,欢迎来到IT知识分享网。

1.error :  _WIN32_WINNT settings conflicts with _WIN32_IE setting

解决:

项目属性 -> c/c++ ->预处理器 -> 预处理器定义,里面有一个_WIN32_WINNT=0x400

改为_WIN32_WINNT=0x0500就好了。不用改代码。

 

2.错误提示信息:fatal error C1083: Cannot open include file: ‘streams.h’: No such file or directory

 

错误原因:找不到streams.h这个文件

 

解决方法:

 

1) 安装directX sdk

2)打开安装目录下的dshow.dsw,进行编译

3)在VC++Tools/Option/DirectoryIncludeLibrary中分别加入

C:/DXSDK/Include

C:/DXSDK/SAMPLES/C++/DIRECTSHOW/BASECLASSES

C:/DXSDK/SAMPLES/C++/COMMON/INCLUDE

 

C:/DXSDK/Lib

C:/DXSDK/SAMPLES/C++/DIRECTSHOW/BASECLASSES/DEBUG

 

4)在编译你工程前,在Project/Setting/Link/中加入 strmbasd.lib uuid.lib winmm.lib

 

操作:

头文件

D:\sdk\dx90asdk\Include

D:\sdk\dx90asdk\Samples\C++\Common\Include

D:\sdk\dx90asdk\Samples\C++\DirectShow\BaseClasses

 

lib文件

D:\sdk\dx90asdk\lib

 

3.error C4430:缺少类型说明符假定为 int。注意: C++不支持默认 int 错误的解决方法

 解决方法:

一些函数定义中,在VC6中,如果没有显示的指定返回值类型,编译器将其视为默认整型;

但是vs2008/vs2010不支持默认整型,解决这个问题不能修改每个没有显示指示返回值类型的函数地方,

可以用排除4430来解决;具体的在打开project->BaseClasses properties->configuration->C/C++ ->Advance

中禁用特定警告中排除4430即可。

 

4.下面使用i的时候提示变量未定义。

       INT i;

       for (i = 0; i< m_nBuffers; i++

修改前

       for (INT i = 0; i< m_nBuffers; i++

 

5.

DSCapture.obj : error LNK2019:无法解析的外部符号 “int __cdecl wsprintfWInternal(wchar_t *,wchar_t const *,…)”

(?wsprintfWInternal@@YAHPA_WPB_WZZ),该符号在函数

“protected: long __thiscall CDSCapture::AddGraphToRot(struct IUnknown *,unsigned long *)”

(?AddGraphToRot@CDSCapture@@IAEJPAUIUnknown@@PAK@Z)中被引用

 

解决方法:

把wsprintfW改为swprintf即可。

 

 转载请注明原创链接:http://blog.csdn.net/wujunokay/article/details/16350185

 

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/26046.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信