皓月云天

紧张中保持一份松弛

松弛中保持一份紧张

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2011年7月13日

摘要: DXSDK 2005之后不再提供largeint.lib,直接在设置链接库中去掉该项即可。 阅读全文

posted @ 2011-07-13 19:31 皓月云天 阅读(2236) 评论(0) 推荐(1)

摘要: 1.LINK : fatal error LNK1181: 无法打开输入文件“largeint.lib”DXSDK 2005之后不再提供largeint.lib,直接在设置链接库中去掉该项即可。2.error LNK2001: 无法解析的外部符号 _MEDIATYPE_Audio 或error LNK2001: 无法解析的外部符号 _IID_IAMErrorLog在链接库中增加 strmiids.lib3. error LNK2019: 无法解析的外部符号 "public: __thiscall CTransformFilter::CTransformFilter(wchar_t * 阅读全文

posted @ 2011-07-13 19:29 皓月云天 阅读(1975) 评论(0) 推荐(0)

摘要: 属性=》配置属性=》高级=》编译为=》编译为 C++ 代码(/TP)/D_WIN32_WINNT=-0x0400 去掉 阅读全文

posted @ 2011-07-13 19:24 皓月云天 阅读(1211) 评论(0) 推荐(0)

摘要: 解决办法属性=》配置属性=》C/C++=》优化=》完全优化 阅读全文

posted @ 2011-07-13 19:18 皓月云天 阅读(2748) 评论(0) 推荐(0)

摘要: ..\Samples\C++\DirectShow\Common 和 WMSDK\WMFSDK9\include 中的wmskidl.h 冲突解决办法把WMSDK\WMFSDK9\include 提到前面 阅读全文

posted @ 2011-07-13 18:39 皓月云天 阅读(232) 评论(0) 推荐(0)

摘要: 解决方法:打开rc文件,找MANIFEST,所属段或行全去掉。 阅读全文

posted @ 2011-07-13 18:12 皓月云天 阅读(218) 评论(0) 推荐(0)

摘要: 我在DLL项目中遇到了,因为要对Debug版和Release版分别指定不同的输出文件名。对Debug版,我指定输出文件为dllD.dll,对Release版指定为dllR.dll。 解决方法有两个:(1)删掉自动生成的dll.DEF文件,在代码中使用_declspec(dllexport)导出函数;(2)删掉dll.DEF文件中LIBRARY字段后面双引号及其内部的库名即可,也可以将其改掉。如改为:; dll.def : Declares the module parameters for the DLL.LIBRARY "dllD"DESCRIPTION 'dll 阅读全文

posted @ 2011-07-13 16:14 皓月云天 阅读(389) 评论(0) 推荐(0)

摘要: 这个错误意思是说,某个函数已经被标记为过时了,最好不要用,在将来的版本中,该函数可能就没有了,不存在了。 对于编译器警告,当然可以用 #pragma warning(disable: xxxx ) 的语法将其禁止掉,但是关闭这个警告并不正常,因为这样一来,所有过时的函数都不会再警告了,而我们可能是需要这个警告的。 像是对于strcpy这种超常用的函数,考虑到安全性(应对缓冲区溢出攻击),我们的确应该使用其安全版本,例如strcpy就有对应的StringCchCopy/StringCbCopy这样的函数,如果关闭了此警告,我们就可能在代码中不小心写下strcpy,而不是其对应的安全版本(当然,s 阅读全文

posted @ 2011-07-13 15:04 皓月云天 阅读(7506) 评论(0) 推荐(0)

摘要: 从VS2008开始,MS对ATL Server代码的支持进行了改变。在VS2008中移除了对ATL Server的内置代码,而是把它独立为一个开源项目。但这意味着原来在vs2003,vs2005程序中使用了以下头文件的程序将编译出错,如 fatal error C1083: 无法打开包括文件:“atlsoap.h”: No such file or directoryhttp://atlserver.codeplex.com/releases/view/3754解决的方法是将这些头文件找到并复制入 $:\Program Files\Microsoft Visual Studio 9.0\VC\ 阅读全文

posted @ 2011-07-13 14:23 皓月云天 阅读(1069) 评论(0) 推荐(0)

摘要: 解决方法属性=》配置属性=》输入=》忽略特定库LIBCMT 阅读全文

posted @ 2011-07-13 14:16 皓月云天 阅读(15900) 评论(3) 推荐(0)

摘要: 解决方法:属性=》配置属性=》优化=》优化大小或速度=》均不或代码大小优先(/Os) 阅读全文

posted @ 2011-07-13 13:49 皓月云天 阅读(3589) 评论(0) 推荐(0)

摘要: 删除/D_WIN32_WINNT=-0x0400 阅读全文

posted @ 2011-07-13 11:46 皓月云天 阅读(2114) 评论(0) 推荐(0)

摘要: 解决方法: 项目-属性- 配置属性-高级-无入口点选择"是(/NOENTRY)" 阅读全文

posted @ 2011-07-13 11:16 皓月云天 阅读(1296) 评论(0) 推荐(0)

摘要: 好像随便加入个资源文件就没问题,不明原因Configuration Properties, C/C++, Code Generation, Runtime Library -> choose either /MT or /MTd depending on debug or release build. If using MFC, then also set General, Use of MFC to Use MFC in a Static Library. 阅读全文

posted @ 2011-07-13 11:12 皓月云天 阅读(1197) 评论(0) 推荐(0)

摘要: 一般这个文件是个.h的头文件,是在编译过程中自动生成的,所以每重新生成一次都会被修改,所以有这个提示。解决办法:在VS中编辑器中关闭这个对应的文件即可。 阅读全文

posted @ 2011-07-13 10:30 皓月云天 阅读(2196) 评论(0) 推荐(0)

摘要: 解决办法属性=》配置属性=》C/C++=》常规=》调试信息格式=》程序数据库(/Zi) 阅读全文

posted @ 2011-07-13 10:27 皓月云天 阅读(3118) 评论(0) 推荐(0)

摘要: Visual Studio 2008 已經沒有 rpcndr.lib.解决办法属性=》配置属性=》连接器=》输入=》附加依赖库=》删除rpcndr.lib这一行 阅读全文

posted @ 2011-07-13 09:58 皓月云天 阅读(1997) 评论(1) 推荐(1)

摘要: 解决办法配置属性=》链接器=》常规=》启用增量链接=》否 阅读全文

posted @ 2011-07-13 03:10 皓月云天 阅读(1380) 评论(0) 推荐(0)

摘要: 解决办法属性=》配置属性=》C/C++=》连接器=》优化=》Windows 98 优化=》默认值 阅读全文

posted @ 2011-07-13 03:09 皓月云天 阅读(1337) 评论(0) 推荐(0)

摘要: vs2008不再建议使用/wp64检测64兼容问题,因为可以直接在32位OS上交叉编译为64位代码(vs2005也可以)。vs2008建议直接使用该方法检测64位兼容性问题。该选项被设置为“不推荐”有个原因是它会导致某些template库发生许多无效的warning。解决办法:C/C++ 检测64位可移植性问题设为No。 阅读全文

posted @ 2011-07-13 02:55 皓月云天 阅读(9263) 评论(0) 推荐(0)

摘要: 解决方法C/C++=>高级=》调用约定=》__stdcall (/Gz) 阅读全文

posted @ 2011-07-13 01:41 皓月云天 阅读(6583) 评论(0) 推荐(0)

摘要: 以前经常遇到这个警告信息,因为运行并没有什么问题,所以也没深究。但是耿耿于怀那个“ 0 个错误,0 个警告”的成功提示,在网上搜了一下。原来问题出在默认库的引用选择上。VS2008,项目——属性——配置属性——C/C++——代码生成:他有/MT,/MTd,/Md,/MDd四个选项,你必须让所有使用的库都使用相同的配置,否则就会有相应的提示,甚至可能会出现无法解析的函数。有时我们使用的库不是自己可以控制的,那么就只能把工程属性设置成和你使用的库相同的选项。错误1 error LNK2005: _free 已经在 libcmtd.lib(dbgheap.obj) 中定义 MSVCRT.lib错误2 阅读全文

posted @ 2011-07-13 00:53 皓月云天 阅读(22294) 评论(0) 推荐(2)

摘要: 解决方法属性=》配置属性=》预编译头=》不使用预编译头如果预编译头文件被正确使用时,它确实大大提高我们编程的效率(你工作中,有多少时间是在等编译完成?很多吧,这个时候一般都很无聊,无奈,浪费时间)。但是他太容易用错了. 下面是几种常见的错误用法.1) 在预编译头文件里include自己的头文件(当然, 如果你的头文件不经常变化, 也可以)原因:自己的头文件一般会经常变, 便利后导致预编译的东东重新编译, 降低了编译速度.2) 在其他的头文件里也include 预编译头文件假设你的其他头文件也include了预编译头文件, 如果别人引用你的这个头文件又没有设置成预编译头文件, 那引用你头文件的这 阅读全文

posted @ 2011-07-13 00:40 皓月云天 阅读(2879) 评论(0) 推荐(0)