gpt4 book ai didi

c++ - Visual Studio Express 2012 项目中忽略的环境变量

转载 作者:行者123 更新时间:2023-11-28 06:44:17 24 4
gpt4 key购买 nike

我正在尝试在 Visual Studio Express 2012 中打开一个解决方案(我认为它对应于 Visual C++ 11,对吗?)。在解决方案的一个项目中,有这样几行:

  <ImportGroup Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project=".\$(ProjectName)_vc110.props" />
<Import Project="$(OTHER_LIB_ROOT)\path\to\myprops.props" />
<Import Project="$(OTHER_LIB_ROOT)\path\to\myother.props" />
<Import Project="$(OTHER_LIB_ROOT)\path\to\some.props" />
</ImportGroup>

其中 $(OTHER_LIB_ROOT) 是对环境变量的引用,该变量指向我本地计算机上安装的第三方软件。

当我尝试加载解决方案时,它无法加载项目,提示找不到“C:\path\to\myprops.props”。那对我来说就是用空字符串替换变量。我知道变量存在,因为我可以启动命令提示符并键入“echo %OTHER_LIB_ROOT%”,它会显示正确的路径。

我试过重启VS,甚至重启机器,还是不行。我还需要做些什么来让它为环境变量选择正确的值吗?

最佳答案

原来有一个我以前没有看过的文件,叫做 ProjectName.props。它包含以下节:

  <PropertyGroup Label="UserMacros">
<OTHER_LIB_ROOT>../../../../..</OTHER_LIB_ROOT>
</PropertyGroup>

该相对路径已过时(我从供应商的一个示例中抄袭了该项目),并导致一条不存在的路径。所以我猜想当 VS 试图计算它得到的相对路径时,它得到了“”。

一旦我将相对路径更改为有效的绝对路径,它就可以正常工作。

关于c++ - Visual Studio Express 2012 项目中忽略的环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25313490/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com