【问题标题】:VS2008 C++ warning LNK4229: invalid directiveVS2008 C++ 警告 LNK4229:无效指令
【发布时间】:2018-05-26 00:40:58
【问题描述】:

我参加了一个已离开公司的开发人员编写的 VS2008 C++ 项目。 当我编译程序时,对于每个编译的类(以及 StdAfx)两次,我收到以下警告:

“ClassName.obj : 警告 LNK4229: 无效指令 '/COMMENT:@(#) $Workfile: $, $Revision: $, $Modtime: $' 遇到;忽略”

链接器无法识别这些警告。

你知道指令在哪里吗,我没有在项目属性中找到它们?

谢谢

【问题讨论】:

  • 检查#pragma(特别是#pragma comment)指令的代码。
  • 谢谢菲尔,但没有#pragma 评论,只有#pragma once 和一些#pragma pack,...
  • 另一种可能性是隐藏在属性表中的东西(这些将显示为 .props 文件并从 .vcxproj 文件中引用)。
  • 抱歉,没有“.props”或“.vcxproj”文件。但是,有一个 .dsw 和 .dsp,与 VC++6.0 项目/工作区相关。
  • 所以你在VS2008中打开VC6项目/工作区而不进行转换?您是从 IDE 还是从命令行构建?您是否尝试过全部清理并重建?

标签: c++ visual-studio-2008 comments warnings directive


【解决方案1】:

我终于在包含 .h 和 .cpp 文件中找到了 #pragma 注释。 Visual Studio 无法通过“查找”功能读取这些文件,因此我使用 grepwin 找到了。

与警告相关的指令: #pragma comment(exestr, "@(#) $Workfile: $, $Revision: $, $Modtime: $")

好像是指源代码版本管理器...

所以问题解决了。

感谢菲尔的帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-05-28
    • 2017-12-06
    • 2012-01-09
    • 2019-01-03
    • 2020-10-19
    • 1970-01-01
    • 2011-12-27
    相关资源
    最近更新 更多