写在前面:本博文是在我现有知识状态下写的, 我现在是小白, 有错误欢迎指正。 以后假如接触到更合理的见解, 我一定会修正这篇博文的。
本文原是在我本地笔记中待着的, 写于2016/05/17。

下载了OpenCV的Windows的安装版文件,运行该可执行程序将OpenCV解压到某个位置,设置好OpenCV相关的环境变量并重启,接下来可以配置Visual Studio里面的属性,检查配置无误,然后开始编写cpp来测试OpenCV环境搭建的最终结果,可是出现了下面的错误:

错误描述:
>LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏

现象解释:
这个错误比较少见,因为往往做了某些事情的电脑才会出现这个错误,这个事件很大概率上是:电脑上先装了Visual Studio 2010,在没卸载2010的情况下安装了Visual Studio 2012,之后又把Visual Studio 2012删除了,只用Visual Studio 2010这个版本。

原因解释:
我电脑Windows 7 x64系统,没安装Visual Studio 2010之前,电脑上的.net framework仅有3.5版本,安装Visual Studio 2010时安装了.net framework 4.0,再当安装VS2012之后,.net
framework 4.0会被替换为.net framework 4.5。 卸载VS2012时,.net framework 4.5不会被卸载。   之后紧接着又装上了Visual Studio 2010,它会安装.net framework 4.0,这导致了系统里面.net framework是4.5,VS2010里面.net framework是4.0。具体到文件上,就是cvtres.exe这个程序出现了两个版本的。

说的再清楚点就是C:\Windows\Microsoft.NET\Framework\v4.0.30319下的cvtres.exe(其对应.net framework 4.5), 跟(vs2010安装的位置)...\Microsoft Visual Studio 10.0\VC\bin下的cvtres.exe (其对应.net framework 4.0)产生了冲突。
当VS中程序运行时,VS不知道要用哪个cvtres.exe,导致了错误。

解决:
$约定$      C:\Windows\Microsoft.NET\Framework\v4.0.30319 目录 为  $系统目录$
           (vs2010安装的位置)...\Microsoft Visual Studio 10.0\VC\bin  为  $VS目录$



1、将$系统目录$下的.net framework 4.5更改为4.0,就是卸载.net framework 4.5这个环境包再安装上.net framework 4.0。  这个方法是将$系统目录$下的.net framework版本(版本为4.5)向$VS目录$里的.net
frameword版本(版本为4.0)看齐。
2、一个暴力方法让VS2010使用.net framework 4.5的cvtres.exe程序  把VS2010里面的.net framework 4.0的cvtres.exe程序给损坏掉使之无效。具体的说就是重命名或删除$VS目录$下的cvtres.exe,这样$系统目录$中的cvtres.exe文件就可以被VS2010使用。

3、类似于方法二,也是要使用.net framework 4.5 版本, 但是这里走常规路线, 不搞破坏。   安装VS2010 SP1,它会安装.NET 4.5(也就是把$VS目录$下的.net framework版本变为4.5),这样就非暴力的解决了$系统目录$和$VS目录$下.net
framework版本的冲突。

注意:安装VS 2010 SP1 时会移除64-bit 编译器,通过安装 VS 2010 SP1 compiler pack 能够重新获得。
 

多版本VisualStudio导致的.net版本问题的更多相关文章

  1. angular.js使用ui-router注入报错,这里是版本问题导致的

    报错如下: common.ts:604Uncaught SyntaxError: Unexpected token ) stateEvents.ts:211Uncaught SyntaxError: ...

  2. 生成war的jdk版本高于tomcat使用的jdk版本,导致项目不能正常被访问

    记录一个耽误30分钟的一个坑: 生成war的jdk版本高于tomcat使用的jdk版本,导致项目不能正常被访问 报404错误

  3. as版本切换导致项目损坏,无法启动。环境依赖混乱

    以下方法都不管用, 新建一个项目setting的 把main拷过去就行了!!!! Error:(5, 0) Gradle DSL method not found: 'google()'Possibl ...

  4. zookeeper 版本不一致导致不断重连

    在使用kafka 和zookeeper 实现实时分析程序时,由于zookeeper部署版本和分析程序导入jar包的版本不一致,导致了当实时分析程序从远程服务器连接kafka集群的zookeeper时报 ...

  5. centos7安装Python3的过程中会和Python2.7版本冲突导致yum版本比对应,致使yum不能使用的问题。

    centos7安装Python3的过程中会和Python2.7版本冲突导致yum版本比对应,致使yum不能使用的问题. 原因:yum调用Python,启动程/usr/bin/yum就是一个python ...

  6. oracle:数据库版本问题导致的bug

    公司开发出来的系统,由于各现场oracle数据库版本有10.2.0.4.11.2.0.1.11.2.0.3.11.2.0.4: 进而会导致版本不一导致错误问题.下面列举2个: 1.wm_concat ...

  7. thrift 版本不一致导致 @Override 报错

    thrift 版本不一致导致 @Override 报错 学习了:http://blog.csdn.net/antony1776/article/details/78920888 版本不一致导致的: 在 ...

  8. ride.py在运行python3.×版本后导致无法运行及解决办法

    最近一直在自学python自动化,网上看到rf框架挺适合初学自动化测试,于是通过虫师的搭建了rf框架, 但是在使用过程中遇到了一个问题,在网上没有找到明确解决办法于是想到记录一下 之前为了搭建rf框架 ...

  9. Maven版本问题导致的 unable to import maven project, see logs for details. 问题

    新电脑安装了基础环境后,jdk,maven也都安装好了,idea安装后,导入Java项目一切正常,但是idea中code一直导入import依赖包出现问题,错误提示:unable to import ...

随机推荐

  1. 网络拓展知识 ACL NAT IPv6

    第1章 ACL 访问控制列表 访问控制表(”位代表精确匹配,而“1“位代表不许匹配. 例如路由器EIGRP的配置中: RouterA(config)#router eigrp 100 RouterA( ...

  2. jQuery选择器(表单元素过滤选择器)第八节

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/stri ...

  3. 《Google SRE》读后感

    注:这是去年国庆时的一篇读书笔记,最近线上故障频繁,重新读了下这篇读书笔记,觉得<Google SRE>非常棒,遂从简书再搬家到博客园,希望大家受益.我的简书地址:daoqidelv 国庆 ...

  4. 百度统计的JS脚本原理分析

    首先,百度统计会要求我们在要统计的页面中嵌入一段js语句,类似如下: <script type="text/javascript">var _bdhmProtocol ...

  5. 对于php-fpm和cgi,还有并发响应的理解

    参考链接: - https://www.zhihu.com/question/64414628   php fpm 进程数和并发数是什么关系? - https://segmentfault.com/q ...

  6. Machine Learning &&Deep Learning&&Sklearn

    参考资料:https://github.com/ty4z2008/Qix/blob/master/dl.md https://morvanzhou.github.io/ 如图,先了解一下都有什么模型方 ...

  7. 【Java框架型项目从入门到装逼】第一节 - Spring框架 IOC的丧心病狂解说

    大家好,好久不见,今天我们来一起学习一下关于Spring框架的IOC技术. 控制反转--Spring通过一种称作控制反转(IoC)的技术促进了松耦合.当应用了IoC,一个对象依赖的其它对象会通过被动的 ...

  8. Chrome的开发者工具(Chrome Developer Tools)

    Chrome的开发者工具(Chrome Developer Tools) 按F12 https://developer.chrome.com/devtools/index http://www.w3s ...

  9. python坑之input获取字符串

    space = input("set user quotation:").strip() quotation = int(space* 1024 * 1024) print(quo ...

  10. 去除url后缀(.html,.jsp等)的有效方法

    有时候,我们想要隐藏真正的路径,或者觉着很酷,举一个知乎网的例子,如https://www.zhihu.com/question/39547745 那么?如何做到呢,其实,可以有一个非常简单而有效的解 ...