使用 VC++ 2008 Express 进行 ATL 开发

Posted

技术标签:

【中文标题】使用 VC++ 2008 Express 进行 ATL 开发【英文标题】:ATL development with VC++ 2008 Express 【发布时间】:2011-09-29 06:49:52 【问题描述】:

我最近安装了 Windows Server 2003 R2 以访问 ATL 头文件和库文件。我已经在 Visual C++ 2008 Express 中设置了包含路径和库路径,以使用 cl.exe 编译 ATL 代码。当我在 VC++ 2008 Express 中编译解决方案时。出现以下错误消息。

d:\programs\psdk windows sever 2003\include\atl\atlbase.h(513) : 警告 C4996: '_vsnprintf': 此函数或变量可能不安全。考虑改用 _vsnprintf_s。要禁用弃用,请使用 _CRT_SECURE_NO_WARNINGS。详细信息请参见在线帮助。 d:\programs\microsoft visual studio 9.0\vc\include\stdio.h(358) :参见“_vsnprintf”的声明 d:\programs\psdk windows sever 2003\include\atl\atlbase.h(537) : 警告 C4996: '_vsnprintf': 此函数或变量可能不安全。考虑改用 _vsnprintf_s。要禁用弃用,请使用 _CRT_SECURE_NO_WARNINGS。详细信息请参见在线帮助。 d:\programs\microsoft visual studio 9.0\vc\include\stdio.h(358) :参见“_vsnprintf”的声明 d:\programs\psdk windows sever 2003\include\atl\atlbase.h(561) : 警告 C4996: '_vsnwprintf': 此函数或变量可能不安全。考虑改用 _vsnwprintf_s。要禁用弃用,请使用 _CRT_SECURE_NO_WARNINGS。详细信息请参见在线帮助。 d:\programs\microsoft visual studio 9.0\vc\include\wchar.h(719) :参见“_vsnwprintf”的声明 d:\programs\psdk windows sever 2003\include\atl\atlbase.h(584) : 警告 C4996: '_vsnwprintf': 此函数或变量可能不安全。考虑改用 _vsnwprintf_s。要禁用弃用,请使用 _CRT_SECURE_NO_WARNINGS。详细信息请参见在线帮助。 d:\programs\microsoft visual studio 9.0\vc\include\wchar.h(719) :参见“_vsnwprintf”的声明 将清单编译到资源... Microsoft (R) Windows (R) 资源编译器版本 6.1.6723.1 版权所有 (C) 微软公司。版权所有。 正在链接... 链接:致命错误 LNK1104:无法打开文件“atlthunk.lib”

任何帮助都值得...

【问题讨论】:

How to add WTL and ATL to visual studio c++ express 2008的可能重复 【参考方案1】:

1.find 'atlthunk.lib' 整个项目, 如果找到'#pragma comment(lib, "atlthunk.lib")',删除它。

2.project setting link -> input->add-on dependency, remove 'atlthunk.lib'.

【讨论】:

这个答案有点晦涩。不是每个阅读这篇文章的人都会理解它的作用以及它如何解决问题也许您可以为后代(和新手用户)解释更多? :)

以上是关于使用 VC++ 2008 Express 进行 ATL 开发的主要内容,如果未能解决你的问题,请参考以下文章

VC 2008 Express下安装OpenCV2.3.1

在 VC++2008 Express 中查找不依赖于模板参数的名称。它是一个错误吗?

Visual C++ 2008 Express 中的代码定义窗口是啥?

无法安装 SQL Server 2008 R2 Express

Visual C++ 2008 Express,将离散的 GUI 元素封装到单独的文件中

cocos2d-x删除vs2010项目模板