error C2220: 警告被视为错误 - 没有生成“object”文件

误提示:error C2220: 警告被视为错误 - 没有生成“object”文件
错误原因:原因是该文件的代码页为英文,而我们系统中的代码页为中文。

解决方法:
1,将源码转化为正确的编码方式
    用vs2008打开对应的文档,文件->打开->选择该cpp,然后保存。
    如果不起作用的话,修改其中一部分,或者 选择替换,选中正则表达式,将\n替换为\n。
   也可以用文本编辑器如Notepad,更改代码文件的编码方式,改为ANSI。

2,设置项目属性,取消警告视为错误
    VS2008菜单 - 项目 - 属性 - 通用配置 - C/C++ - 常规 - 将警告视为错误 修改为 否,重新编译即可。


LNK1123: 转换到 COFF 期间失败: 文件无效或损坏

用VS2010编译C++项目时出现这样的错误:

LNK1123: 转换到 COFF 期间失败: 文件无效或损坏

方案一:(这个方法比较好,在用qt运行时出现问题也能解决)

复制 C:\Windows\winsxs\x86_netfx-cvtres_for_vc_and_vb_b03f5f7f11d50a3a_6.1.7601.17514_none_ba1c770af0b2031b 目录下的 cvtres.exe 到C:\Program Files\Microsoft Visual Studio 10.0\VC\bin 目录下,直接覆盖替换。

 

方案二:

 

是嵌入清单的问题,于是对该工程以及所有依赖工程进行如下操作
右键->工程属性->配置属性-> 清单工具->输入和输出->嵌入清单,选择[否]

1>LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏
1>CVTRES : fatal error CVT1100: 资源重复。类型: MANIFEST,名称: 1,语言: 0x0409

这个是由于日志文件引起的,可以将

项目\属性\配置属性\清单工具\输入和输出\嵌入清单:原来是“是”,改成“否”。

或者将

项目\属性\配置属性\链接器\清单文件\生成清单:原来是“是”,改成“否”。


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在qt中,C2220警告视为错误是编译器发出的一种警告信息。它是由于编译器在编译过程中发现了可能会导致潜在问题或错误的代码而发出的。C2220警告通常与类型转换相关的问题有关。 当编译器发出C2220警告时,我们应该认真对待并检查可能存在的问题。在大多数情况下,C2220警告并不会导致编译错误,但可能会影响程序的正确性和可靠性。 要解决C2220警告,我们可以采取以下几个步骤: 1. 确认警告的具体内容和出现的位置。C2220警告通常会提供警告的详细信息,我们可以根据这些信息定位和理解问题的原因。 2. 检查相关的代码逻辑。仔细检查与警告相关的代码行,包括变量的使用、类型转换和函数调用等。确保代码逻辑的正确性,并尽量避免出现不明确或不安全的类型转换。 3. 根据需要进行类型转换。如果警告确实是由于类型转换引起的,我们可以考虑进行必要的类型转换以解决警告。但要注意,类型转换可能会导致数据丢失或产生意外的结果,因此在进行类型转换之前应仔细检查代码逻辑和数据的正确性。 4. 使用编译器选项进行配置。有些编译器提供了配置选项,可以将某些警告视为错误,使得在编译过程中出现警告时会导致编译错误,从而迫使我们解决问题。可以查阅编译器文档,了解相关的配置选项并根据需要进行配置。 综上所述,C2220警告视为错误是编译器发出的一种警告信息,我们应该认真对待并检查可能存在的问题。通过仔细检查代码逻辑、进行必要的类型转换和配置编译器选项,我们可以解决C2220警告,确保程序的正确性和可靠性。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值