当前位置: 首页 > news >正文

关于 typedef void * POINTER_64 PVOID64;问题

不知道什么时候,使用较新版本的VC IDE编译“转换”以后的旧版本的VC项目时,会收到来自于“winnt.h”的错误;而错误的原因主要由下面这行代码引起的。
typedef void * POINTER_64 PVOID64;
很明显,“POINTER_64”应该是为了适应未来的64位指针而“新生的事物”!编译/预处理器可能是受了旧版VC项目的“束缚”,无法解释这个新玩意儿是咋回事。糟糕的是,我也不记不得有这么一回事了 :-(
这个问题我以前处理过,而且处理得还蛮不错的。可时间一久,我却什么也记不起来了。真是——郁闷……
事情是这么来的那么去的:我用VC2008(以前是2005)编译DirectShow/baseclasses,总是无法通过(VC2003以前是没有这个问题的)。虽然我已经知道采用“人工干预”的方式,定义一个宏,用“__ptr64”替换“POINTER_64”貌似解决问题,但是,我需要的不是这个。毕竟POINTER_64/__ptr64是什么玩意不是一般人能够解释得了的!
我就找啊,想啊,回忆啊……终于有所突破!(我以前也是这么突破过一次的。)
POINTER_64只在“BaseTsd.h”中有定义(这个文件就是用来定义一些奇怪符号的 :-( ),定义为__ptr64。
winnt.h所在的目录是“C:\Program Files\Microsoft SDKs\Windows\v6.0A\Include”,它所引用的basetsd.h应该也是在这个目录里的。然而,让我意外的是,此时的IDE却只能调用出“C:\DXSDK\Include”(DirectX 9.0 SDK,12/19/2002)目录内的basetsd.h!
对于这个转换过来的旧版本VC项目,有一些隐蔽的东西也被原封不动地转换过来了——那就是“项目属性”里的“附加包含目录”!
在这个地方陈列的目录是相当的优先——比“VC++目录”里的设置项——那是相当的优先……那玩意儿……总之是比较优先。
……
……
(知道是咋回事就好。至于解决这个问题的办法……那玩意儿……是相当的多……

相关文章:

  • iOS动手做一个直播(代码篇)
  • videoJs实现点击按钮播放切换视频
  • [安卓] 8、VIEW和SURFACEVIEW游戏框架
  • JavaScript经典代码【二】【javascript判断用户点了鼠标左键还是右键】
  • iOS快速集成支付宝
  • Commons.net FTPClient 上传文件
  • AIO - 概述
  • Azure Redis Cache (5) Redis Cache Cluster集群模式
  • 白盒测试
  • SQL Server 2008 部分改变
  • Python将被加入高考科目
  • [转]使用WinINet和WinHTTP
  • Microsoft Ribbon for WPF 正式发布
  • 【原创】简单的局域网内无线文件传输(1)
  • 给初学者:JavaScript 中数组操作注意点
  • GDB 调试 Mysql 实战(三)优先队列排序算法中的行记录长度统计是怎么来的(上)...
  • happypack两次报错的问题
  • java正则表式的使用
  • Vue 2.3、2.4 知识点小结
  • vue2.0开发聊天程序(四) 完整体验一次Vue开发(下)
  • vue中实现单选
  • 码农张的Bug人生 - 初来乍到
  • 【运维趟坑回忆录 开篇】初入初创, 一脸懵
  • ​LeetCode解法汇总2696. 删除子串后的字符串最小长度
  • ​软考-高级-信息系统项目管理师教程 第四版【第14章-项目沟通管理-思维导图】​
  • # Python csv、xlsx、json、二进制(MP3) 文件读写基本使用
  • #我与Java虚拟机的故事#连载06:收获颇多的经典之作
  • (Mirage系列之二)VMware Horizon Mirage的经典用户用例及真实案例分析
  • (黑马出品_高级篇_01)SpringCloud+RabbitMQ+Docker+Redis+搜索+分布式
  • (四)linux文件内容查看
  • (一) storm的集群安装与配置
  • ***监测系统的构建(chkrootkit )
  • .desktop 桌面快捷_Linux桌面环境那么多,这几款优秀的任你选
  • .net MySql
  • .NET Standard、.NET Framework 、.NET Core三者的关系与区别?
  • .Net Web项目创建比较不错的参考文章
  • .Net 路由处理厉害了
  • .NET企业级应用架构设计系列之应用服务器
  • /usr/lib/mysql/plugin权限_给数据库增加密码策略遇到的权限问题
  • @RequestBody详解:用于获取请求体中的Json格式参数
  • [ 数据结构 - C++]红黑树RBTree
  • [AutoSar]BSW_Memory_Stack_004 创建一个简单NV block并调试
  • [C/C++]数据结构 深入挖掘环形链表问题
  • [CareerCup] 17.8 Contiguous Sequence with Largest Sum 连续子序列之和最大
  • [daily][archlinux][game] 几个linux下还不错的游戏
  • [Django ]Django 的数据库操作
  • [FUNC]判断窗口在哪一个屏幕上
  • [GN] Vue3快速上手1
  • [LeetCode] 148. Sort List 链表排序
  • [LeetCode]Spiral Matrix
  • [Linux]----文件操作(复习C语言+文件描述符)
  • [orleans2.1]这是你没玩过的船新版本
  • [Salesforce组件开发][LWC] 弹出框开发
  • [sqlmap]学习笔记#1
  • [uniapp生命周期]详细讲解uniapp中那些属于vue生命周期,那些属于uniapp独有的生命周期,以及这中间的区别 相关的内容和api 代码注释