1

警告 MSB8012

我已经阅读了很多人询问这个错误的答案,但他们似乎都没有遇到像我这样的问题。我试图在我的项目中使用属性表来节省每次都必须设置属性设置,反过来我在构建时得到了这个:

2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(989,5): warning MSB8012: TargetPath(C:\MyProj\Release\MyProj.dll) does not match the Linker's OutputFile property value (). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Link.OutputFile).
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(990,5): warning MSB8012: TargetExt(.dll) does not match the Linker's OutputFile property value (). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Link.OutputFile).
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(991,5): warning MSB8012: TargetName(MyProj) does not match the Linker's OutputFile property value (). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Link.OutputFile).

如果我所要做的只是更改链接器的 OutputFile 属性值,那会很容易,但是正如您所看到的,它Linker's OutputFile property value ()每次都说(OutputFile 值为 null?),这有点不同,$(OutDir)$(TargetName)$(TargetExt)我将其设置为...

我在属性表中配置的唯一内容是一些调试设置、一些优化设置、添加构建后事件和禁用 unicode。这就是我所需要的,但这个问题现在卡在项目中,即使我删除了属性表。我根本没有从以前版本的 Visual Studio 转换项目,就像许多收到此警告的人一样,只是尝试添加和配置属性表。

以下是一些相关设置:

常规->输出目录:$(SolutionDir)$(Configuration)\

常规->目标名称:$(ProjectName)

常规->目标扩展:.dll

链接器->输出文件:$(OutDir)$(TargetName)$(TargetExt)

起初我只是想忽略这个警告,但它实际上开始引起问题,所以如果有人能弄清楚这个 MS 谜题,我将不胜感激。

4

1 回答 1

0

它似乎开始对所有项目产生影响,所以我重新安装了 Visual Studio,问题就消失了……我现在害怕再次尝试使用属性表,但总比没有好。我想这都是MS的错。

于 2013-02-18T01:08:11.800 回答