Visual studio 没有那么多经验 一般/目标名称

Visual studio 没有那么多经验 一般/目标名称,visual-studio,unit-testing,googletest,Visual Studio,Unit Testing,Googletest,所以我要做的就是在这里做同样的调整: 现在它编译文件。这不是正确答案。这将更改输出文件的名称。lib的调试版本和发布版本现在都命名为gtest。最后生成的内容将覆盖该文件。当OP最终将.lib的发布版本链接到他想要测试的代码的调试版本时,它给OP带来了麻烦。他后来把那个问题删掉了,我想他大概算明白了。@Hans:不是真的。Visual Studio已将这些文件放在单独的文件夹中。只有当您决定将libs复制到单个目录中时,才需要额外的“d”。如果我希望名称保持不变,该怎么办?我认为@HansPa

所以我要做的就是在这里做同样的调整:


现在它编译文件。

这不是正确答案。这将更改输出文件的名称。lib的调试版本和发布版本现在都命名为gtest。最后生成的内容将覆盖该文件。当OP最终将.lib的发布版本链接到他想要测试的代码的调试版本时,它给OP带来了麻烦。他后来把那个问题删掉了,我想他大概算明白了。@Hans:不是真的。Visual Studio已将这些文件放在单独的文件夹中。只有当您决定将libs复制到单个目录中时,才需要额外的“d”。如果我希望名称保持不变,该怎么办?我认为@HansPassant提供的答案更正确。@alariq:1。我不知道你为什么要这么做。2.即使你这么做了,汉斯的回答和我的回答基本上是一样的。@BillyONeal:从一个解决方案版本转换到另一个解决方案版本时,这是一个常见的问题。另一个原因是,如果是这种情况,那么您还必须手动更改调试->命令。因为它默认设置为$(TargetPath)。问题是$(TargetName)(它是$(TargetPath)的一部分)与输出文件不同。很久以来,我一直在寻找如何设置这些构建时间符号。@zadane-请原谅我的无知。。。对于VS2010,升级后正确设置了
OutputDirectory
OutputFile
。但是,缺少
TargetName
targetText
。我们如何使用您的技巧将
TargetName
targetText
添加到VS2005中,使其在VS2010升级后仍然有效(对于VS2010用户来说,一切“正常”了)?还可以看到@zar-看起来系统删除它是因为视图太少;没有答案或注释。TargetName现在位于VS2019的高级选项卡中。已更改,但仍会更改$targetText变量。
Warning 1   warning MSB8012: 
TargetPath(C:\Users\sucho\Desktop\gtest-1.5.0\msvc\gtest/Debug\gtest.lib) does not match
the Library's OutputFile property value (C:\Users\sucho\Desktop\gtest-1.5.0\msvc\gtest\
Debug\gtestd.lib).

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 %(Lib.OutputFile).  
C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets
 $(ProjectName)d
  <PropertyGroup Label="My Values">
    <ProjectName>New_Project_Name</ProjectName>
  </PropertyGroup>
Linker → General → Output File = "myproject.exe"
Configuration Properties → General → Target Name = "myproject"

configuration properties → General → Target Extension = ".exe"