将 ATL 项目从 vs2010 升级到 vs2013 时出现编译错误 [重复]

2024-01-11

当在 Visual Studio 2013 构建中包含来自 Microsoft ATL 库的 atlwin.h 时,可能会导致出现大量有关未定义元素的编译器错误。

HMONITOR is not defined

使用 VS2010 构建时不会发生这种情况。

由于这是标准的 MS 头文件,因此缺少类错误似乎没有意义。


由于这是一个非常古老的遗留项目,问题在于 stdafx.h 文件中 Windows 的目标版本

来自 MSDN

Visual C++ 不再支持针对 Windows 95、Windows 98、 Windows ME 或 Windows NT。如果您的 WINVER 或 _WIN32_WINNT 宏是 分配给这些 Windows 版本之一时,您必须修改 宏。当您升级使用创建的项目时 早期版本的 Visual C++,您可能会看到相关的编译错误 到 WINVER 或 _WIN32_WINNT 宏(如果它们被分配给版本) 不再支持的 Windows。

所以,改变

#ifndef WINVER  
#define WINVER 0x0400   
#endif

to

#ifndef WINVER  
#define WINVER 0x0500
#define _WIN32_WINNT 0x0500
#endif

纠正构建问题

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 ATL 项目从 vs2010 升级到 vs2013 时出现编译错误 [重复] 的相关文章

  • 注销租约抛出 InvalidOperationException

    我有一个使用插件的应用程序 我在另一个应用程序域中加载插件 我使用 RemoteHandle 类http www pocketsilicon com post Things That Make My Life Hell Part 1 App
  • 如何将非静态类成员“std::bind”绑定到 Win32 回调函数“WNDPROC”?

    我正在尝试将非静态类成员绑定到标准WNDPROC http msdn microsoft com en us library ms633573 aspx功能 我知道我可以通过将类成员设为静态来简单地做到这一点 但是 作为一名 C 11 ST
  • 计算 Richtextbox 中所有单词的最有效方法是什么?

    我正在编写一个文本编辑器 需要提供实时字数统计 现在我正在使用这个扩展方法 public static int WordCount this string s s s TrimEnd if String IsNullOrEmpty s re
  • 复制 std::function 的成本有多高?

    While std function是可移动的 但在某些情况下不可能或不方便 复制它会受到重大处罚吗 它是否可能取决于捕获变量的大小 如果它是使用 lambda 表达式创建的 它依赖于实现吗 std function通常被实现为值语义 小缓
  • 当我们想要返回对象的引用时,为什么我们在赋值运算符中返回 *this 而通常(而不是 this)?

    我正在学习 C 和指针 我以为我理解了指针 直到我看到这个 一方面 asterix 运算符是解引用的 这意味着它返回值所指向的地址中的值 而与号 运算符则相反 它返回值存储的地址记忆 现在阅读有关赋值重载的内 容 它说 我们返回 this因
  • 复制目录内容

    我想将目录 tmp1 的内容复制到另一个目录 tmp2 tmp1 可能包含文件和其他目录 我想使用C C 复制tmp1的内容 包括模式 如果 tmp1 包含目录树 我想递归复制它们 最简单的解决方案是什么 我找到了一个解决方案来打开目录并读
  • 使用 Newtonsoft 和 C# 反序列化嵌套 JSON

    我正在尝试解析来自 Rest API 的 Json 响应 我可以获得很好的响应并创建了一些类模型 我正在使用 Newtonsoft 的 Json Net 我的响应中不断收到空值 并且不确定我的模型设置是否正确或缺少某些内容 例如 我想要获取
  • 为什么调用非 const 成员函数而不是 const 成员函数?

    为了我的目的 我尝试包装一些类似于 Qt 共享数据指针的东西 经过测试 我发现当应该调用 const 函数时 会选择它的非 const 版本 我正在使用 C 0x 选项进行编译 这是一个最小的代码 struct Data int x con
  • 标准化 UTF-8 到底是什么?

    The 重症监护室项目 http userguide icu project org transforms normalization 现在也有一个PHP库 http us php net manual en class normalize
  • DbContext 和 ObjectContext 有什么区别

    From MSDN 表示工作单元和存储库模式的组合 使您能够查询数据库并将更改分组在一起 然后将这些更改作为一个单元写回存储 DbContext在概念上类似于ObjectContext 我虽然DbContext只处理与数据库的连接以及针对数
  • Qt - ubuntu中的串口名称

    我在 Ubuntu 上查找串行端口名称时遇到问题 如您所知 为了在 Windows 上读取串口 我们可以使用以下代码 serial gt setPortName com3 但是当我在 Ubuntu 上编译这段代码时 我无法使用这段代码 se
  • C# HashSet 只读解决方法

    这是示例代码 static class Store private static List
  • 为什么 std::strstream 被弃用?

    我最近发现std strstream已被弃用 取而代之的是std stringstream 我已经有一段时间没有使用它了 但它做了我当时需要做的事情 所以很惊讶听到它的弃用 我的问题是为什么做出这个决定 有什么好处std stringstr
  • CMake 无法确定目标的链接器语言

    首先 我查看了this https stackoverflow com questions 11801186 cmake unable to determine linker language with c发帖并找不到解决我的问题的方法 我
  • 动态添加 ASP.Net 控件

    我有一个存储过程 它根据数据库中存储的记录数返回多行 现在我想有一种方法来创建 div 带有包含该行值的控件的标记 如果从数据库返回 10 行 则 10 div 必须创建标签 我有下面的代码来从数据库中获取结果 但我不知道如何从这里继续 S
  • 方法优化 - C#

    我开发了一种方法 允许我通过参数传入表 字符串 列数组 字符串 和值数组 对象 然后使用这些参数创建参数化查询 虽然它工作得很好 但代码的长度以及多个 for 循环散发出一种代码味道 特别是我觉得我用来在列和值之间插入逗号的方法可以用不同的
  • C++ 条件编译

    我有以下代码片段 ifdef DO LOG define log p record p else define log p endif void record char data 现在如果我打电话log hello world 在我的代码中
  • 无法接收 UDP Windows RT

    我正在为 Windows 8 RT 编写一个 Windows Store Metro Modern RT 应用程序 需要在端口 49030 上接收 UDP 数据包 但我似乎无法接收任何数据包 我已按照使用教程进行操作DatagramSock
  • WebSocket安全连接自签名证书

    目标是一个与用户电脑上安装的 C 应用程序交换信息的 Web 应用程序 客户端应用程序是 websocket 服务器 浏览器是 websocket 客户端 最后 用户浏览器中的 websocket 客户端通过 Angular 持久创建 并且
  • 从列表中选择项目以求和

    我有一个包含数值的项目列表 我需要使用这些项目求和 我需要你的帮助来构建这样的算法 下面是一个用 C 编写的示例 描述了我的问题 int sum 21 List

随机推荐

  • C++ 刷新缓冲区

    我知道这里有很多缓冲区问题 但我似乎找不到明确的答案 std cout lt lt write to screen lt lt std endl 我知道这段代码会因为 endl 而写入屏幕并刷新缓冲区 但如果我这样写 std cout lt
  • 如何创建参数化 SQL 查询?我为什么要?

    我听说 每个人 都在使用参数化 SQL 查询来防止 SQL 注入攻击 而不必验证每一条用户输入 你怎么做到这一点 使用存储过程时会自动获取此信息吗 所以我的理解这是非参数化的 cmdText String Format SELECT foo
  • Function 对象是否必要

    创建如下函数是常见且容易的 var f function alert something 那么为什么会有函数对象 like var f new Function alert something 后者很难写 读 我只能想到一种情况 即有人在网
  • Ant在表单中设计DatePicker

    我在用着DatePicker组件来自antd在表单内并想要更改默认值onChange and value中的道具数DatePicker但它不起作用
  • Oauth2 与 Postman 和 IdentityServer4

    我正在尝试在我的 Identity Server 4 上使用 Postman 进行身份验证 它适用于 Net Code 2 但我最近更新到 Net Core 3 并进行了调整 我可以打开登录页面 可以登录 但无法正确重定向 停留在登录页面上
  • Telerik 和 jquery

    我正在开发一个从客户那里收到的应用程序 他们使用了一些 Telerik Web 控件 Telerik 显然包含它自己的 jquery 1 3 2 版本 而我使用的是 1 4 1 我遇到了一些奇怪的 javascript 问题 我想排除旧的
  • 具有默认参数值的 C# 方法不会生成无参数重载?

    最近 我想向扩展方法添加一个可选参数 原来的方法是这样的 public static class Extensions public static bool Foo this IFoo target target DoIt true 这显然
  • QString::split() 和“\r”、“\n”和“\r\n”约定

    我明白那个QString split应该用来获得QStringList从多行QString 但是如果我有一个文件并且我不知道它是来自 Mac Windows 还是 Unix 我不确定是否QString split n 在所有情况下都会很好地
  • 基类的类型不完整

    我有一个基类Point我从中继承Point3D 然而 由于某种原因 班级Point必须始终返回Point3D为操作add 所以我将其包含在我的包含中 这是我的班级Point ifndef POINT H define POINT H inc
  • CodeIgniter 罐身份验证

    我正在利用这个名为坦克验证 http www konyukhov com soft tank auth 希望这个问题不会太小众 因为它特定于这个库 我正在尝试如何在用户注册后立即登录 看来这个库不提供这个功能 我不想开始搞乱这个库 但也许有
  • 从 Django 视图启动 Scrapy

    我使用Scrapy的经验有限 每次使用它总是通过终端的命令 如何从 django 模板获取表单数据 要抓取的 url 以与 scrapy 通信以开始抓取 到目前为止 我只想到从django的视图中获取表单返回的数据 然后尝试进入scrapy
  • require.js +backbone.js:如何构建具有初始化功能的模块?

    我有一个包含三个页面的应用程序 它们是单页界面 这些页面具有相似但不相同的功能 所以我想要有提供通用功能的 javascript 模块 然后每个页面可以定制 覆盖部分通用功能 我使用的是backbone js 所以我要做的是 加载包含常见模
  • 使用Python登录Google帐户进入网站[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我正在制作一个网站 该网站制作分组中人数的图表 来自 www codecamy com 为了实现这一目标 我制定了一个计划 我将有一个服务
  • HTTP 状态代码 200,但页面未加载 Node.js Socket.io -- Node.js Socket.io 教程、Daniel Nill、fs.readFile()、socket.html

    了解 node js 和 socket io 并进行操作Daniel Nill 的本教程 http www danielnill com blog nodejs tutorial with socketio 服务器启动没有问题 但是 当我导
  • 如何从codeigniter中的视图调用控制器函数?

    使用 codeigniter 我有一个控制器 如下所示
  • Android AccessibilityNodeInfo刷新()和回收()

    我已经阅读了 android 文档https developer android com reference android view accessibility AccessibilityNodeInfo html https devel
  • 当我在 OnChange 事件中调用 Delete 时,为什么会出现 RichEdit 行插入错误?

    我已经用谷歌搜索并检查了很多地方来寻找解决方案 但我发现的所有情况都不同或涉及比简单地添加或删除行更高级的东西 基本上 我想进行一种滚动丰富的编辑 替代方法是将插入符号移动到底部 我已经找到了解决方案 我正在向其中添加行并检查Lines C
  • 如何将变量/参数写入标准输出?

    我正在尝试调试我的第一个Bicep https learn microsoft com en us azure azure resource manager bicep overview模板 如何将变量或参数值写入标准输出 就像是 var
  • Spark 将每个操作执行两次

    我创建了一个简单的 Java 应用程序 它使用 Apache Spark 从 Cassandra 检索数据 对其进行一些转换并将其保存在另一个 Cassandra 表中 我正在使用 Apache Spark 1 4 1 它配置为独立集群模式
  • 将 ATL 项目从 vs2010 升级到 vs2013 时出现编译错误 [重复]

    这个问题在这里已经有答案了 当在 Visual Studio 2013 构建中包含来自 Microsoft ATL 库的 atlwin h 时 可能会导致出现大量有关未定义元素的编译器错误 HMONITOR is not defined 使