LINK : fatal error LNK1104: “dpiaware.manifest”

LINK : fatal error LNK1104: “dpiaware.manifest”这个问题很诡异,之前装了好多次vs2012都没问题,这次先把vs2013装了,又把qt框架集成进去了,随便新建一个工程都能正常编译。唯独安装了vs2012后在安装更新至update 4 ,新建一个工程开始编译就报错了,百度半天竟然没有一点线索,难道大家都没遇到过这种问题?郁闷,又折腾了两天,我把系统在重装了两次,问题依旧,后来发现只是一个文件复制的问题。唉,只能说我又犯了一个低级错误 -_-! 。

问题背景:

安装Win 7后再装vs2012更新到update 4 编译新工程报错:LINK : fatal error LNK1104: “dpiaware.manifest”

问题分析及解决:

一开始编译工程报错:fatal error C1083: 无法打开包括文件:“new.h”: No such file or directory

网上的大仙儿们说要找new.h文件的路径,然后在vs里添加文件包含,又说还可能会报各种编译错误,于是分别列举各种错误的处理。我按照他们说的结合我的情况,我试着做了一下,然后就出现:LINK : fatal error LNK1104: “dpiaware.manifest”。对于这个编译错误,我总感觉大仙们是有意避开不说,这么明显的错误难道你们没遇到么?一个个问了都没个线索给我。我当时采取了一种策略规避了这个错误然后就是报错:LINK : fatal error LNK1104: 无法打开文件“C:/Program.obj”,这个错误网上到是不少解释,却没有一个有用的。折腾来折腾去,那个烦啊…..

索性关了浏览器自己研究,网上一帮答非所问的东西。

静下心来想了想:

我安装vs2012的时候安装路径选在了“D:\Program Files”,估计大家也都一样吧,然后vs2012提示会占用c盘5G左右的空间,d盘要占将近1个G的空间,每次装vs2012我都在想c盘那5G干什么去了,选择装d盘就是要少往c盘那放东西,结果还是要5G,真是教人难以接受啊。。。。。

言归正传,我在c盘和d盘观察了一下安装路径,d盘下有这个目录:

D:\Program Files\Microsoft Visual Studio 11.0\VC

然后会有这些文件夹

这里写图片描述

vs启动的时候我选的是VC++启动

后来c盘下有这两个目录:

C:\Program Files\Microsoft Visual Studio 11.0
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC

这里写图片描述
这里写图片描述

两个目录一个在Program Files(x86)下,一个在Program Files下当时不太了解这俩目录干什么用的。但有一点值得注意,就是之前搜new.h这个文件的时候,他的路径就在C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include下我把这个路径下的VC文件夹内容和D:\Program Files\Microsoft Visual Studio 11.0\VC下的目录比对了一下。

这里写图片描述

不知道大家有没有发现什么,反正我是有种想把两个目录合并的冲动,这两个目录结构如此相似,只是c盘的目录内容比d盘的内容少些。更可恨的是dpiaware.manifest和new.h这几个文件都在c盘的这个目录下,好歹用vs2012的时间也不短了,文件包含我还是知道些的,一般vs编译程序包含文件都是默认从安装路径下取得,这次我选择装在d盘,安装程序却把一些文件单独提出来放在c盘,也不知是何用意。然后,果断把c盘下的VC目录和d盘的VC目录合并,在编译程序,就顺利通过了。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

把程序跑起来运行没有任何问题,有把以前写的程序重编了下,照样正常编译运行。。。。。。。。。。。。。。。

看到这个结果,当时那个心里也是十万只草泥马奔腾……感觉不会再爱了,只想说以后还是多多提防微软这家伙,说不定什么时候就给你个坑。再就是,感觉以后再遇到什么问题,靠的最多的应该是我自己。别人怎说,我怎么做完全两回事。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值