今天在写一个SetWinEventHook的程序时,编译通过,link时,弹出了如下的错误:

Linking...
uuid.lib(oleidl_i.obj) : fatal error LNK1103: debugging information corrupt; recompile module

囧,第一反应是google一下,看来遇到这个问题的还不少,仔细回想了下,原来前几天写minidump的时候,装了一个新的SDK(Microsoft Platform SDK for Windows XP SP2),并且把菜单Tools->Options->下的Directories下的Include files和Library files的路径都指向了新的SDK下的路径,我的是C:/PROGRAM FILES/MICROSOFT PLATFORM SDK FOR WINDOWS XP SP2/INCLUDE和GRAM FILES/MICROSOFT PLATFORM SDK FOR WINDOWS XP SP2/LIB,并且设置到了最前面,也就是第一条(vc按照设置的次序来查找对应的头文件和库文件,找到后,自然就不再往下找了),按网上说的方法做了下,果然,编release版本并没有link错误,成功链接,删除新设置的Include files和Library files,启用旧的头文件和lib文件也是没有问题的。

我的方法是,将新的sdk的include路径依然设置在Include files的第一条,而将新的sdk的lib路径调整到Library files中的最后一条,这样编译连接也没有问题,就可以解决上述删除新设置的路径后无法使用新的sdk中的特性的问题(譬如我的minidump就无法编译了,因为Include files和Library files的设置对vc来说是全局的,你在一个工程修改后,另外一个工程的路径也就变了),还有个更“革命”的方法是替换Microsoft Platform SDK for Windows XP SP2中uuid.lib为旧库中的uuid.lib,这个方法只是说说,不建议。这样改了之后,其实还是有隐患,从根本上来讲,连接失败的原因是新版本的lib文件和一些老的lib文件不兼容造成的,譬如在MFC下你不使用静态库链接就没有问题,如果以后你使用新的sdk中的新特性,旧版lib文件中又没有实现,那又只好设置回来,总之是很麻烦的,真正革命性的做法是使用VS2005或者VS2008,呵呵。

fatal error LNK1103: debugging information corrupt; recompile module相关推荐

  1. build的时候出错,fatal error LNK1103

    Linking...    Creating library Debug/xxx.lib and object Debug/xxx.exp uuid.lib(comcat.obj) : fatal e ...

  2. error LNK1103 问题

    Linking...    Creating library Debug/xxx.lib and object Debug/xxx.exp uuid.lib(comcat.obj) : fatal e ...

  3. fatal error LNK1112: module machine type 'X86' conflicts with target machine type 'x64'

    xxxxxx.lib(xxxxxx.obj) : fatal error LNK1112: module machine type 'X86' conflicts with target machin ...

  4. 插入数据的时候出现错误:Error during job, obtaining debugging information…

    插入数据的时候出现错误:Error during job, obtaining debugging information- 原因: Javaf堆内存不足 解决办法 修改为本地模式 set hive. ...

  5. fatal error LINK1123:failure during conversion to COFF:file invalid or corrupt

    Visual Studio 2010编译时出现:fatal error LINK1123:failure during conversion to COFF:file invalid or corru ...

  6. fatal error LNK1112: module machine type 'X86' conflicts with target machine type 'x64

    xxxxxx.lib(xxxxxx.obj) : fatal error LNK1112: module machine type 'X86' conflicts with target machin ...

  7. fatal error: module file '/Users/cylm/Library/Developer/Xcode/DerivedData/ModuleCache/35BFEUGU7C7G3/

    fatal error: module file '/Users/cylm/Library/Developer/Xcode/DerivedData/ModuleCache/35BFEUGU7C7G3/ ...

  8. 解决Maven使用install出错出现Fatal error compiling: UTF-8的问题

    关于使用maven用install 命令出现以下错误: "C:\Program Files\Java\jdk1.8.0_221\bin\java.exe" -Dmaven.mult ...

  9. Maven编译 Fatal error compiling: 无效的目标发行版: 11

    安装了Java11后,用其编译多个Springboot工程,老是失败,后来发现所有工程指定了java版本为java8,于是乎卸载了java11,安装了java8,再去编译. 其中某个工程在之前用jav ...

最新文章

  1. 给 Windows 驱动程序安装提速
  2. Java虚拟机详解(八)------虚拟机监控和分析工具(2)——可视化
  3. 【NLP】Prompt Learning-使用模板激发语言模型潜能
  4. 小白学编程“Java小白”入门解疑大全
  5. python怎么播放本地录音_Python播放音频与录音
  6. entlib连接oracle乱码,无法构造类型数据库。您必须配置容器以提供此值(EntLib 5 + ODP.NET)...
  7. DragControl
  8. 既然有http 请求,为什么还要用rpc调用?
  9. 固定资产中计算机软件类型,固定资产国标分类1.doc
  10. 【Latex】一、TeX Live和TeXstudio安装及使用教程
  11. 大学生如何学习c语言!
  12. Blender建模练习:人物模型多边形建模流程图解(二形体调整篇)
  13. WEB 1.HTML
  14. linux聊天室项目课程设计,网络编程课程设计报告--基于linux网络聊天室设计.docx...
  15. ICME2021:基于机器学习的VVC帧内编码码率控制
  16. 大青云不显示服务器,37大青云4月25日关服停止运营公告
  17. 欧拉法、改进的欧拉法、龙格-库塔法求解初值问题
  18. NODE.JS事件处理
  19. 【第一阶段:java基础】第7章:面向对象编程中级-2(P307-P318):多态
  20. 解读SEO 黑帽白帽 (share)

热门文章

  1. 驱动_Input输入子系统
  2. eclipse中的maven build、maven clean、maven install和maven test的区别
  3. 2018上IEC计算机高级语言(C)作业 第2次作业
  4. python -- 字符串的方法及注释
  5. Android 基本事件及对话框
  6. 如何管理企业刺头人物!
  7. PyTorch 加载超大 Libsvm 格式数据
  8. break与continue的的用法以及区别
  9. 【Linux网络编程】并发服务器之多进程模型
  10. 【Linux】一步一步学Linux——useradd命令(82)