2013-02-28 104 views
1

我们正在使用visual studio 2005.我知道,但这就是我们所拥有的。需要在vcproj文件内的文件路径中使用环境变量

所以,我们有一个项目文件夹,再加上一些其他文件夹中的“其他”代码。其他代码来自其他组并且是只读的。由于我们使用clearcase,所以其他代码区域可能会发生变化。没有进入很多无聊的细节(我仍然不能“清理自己”,所以请不要问),我们通常所做的就是使用subst将这个驱动器的视图映射到一个固定的驱动器盘符。

我想摆脱这种情况,并使用一个环境变量引用其他代码驱动器。

我定义了一个环境变量'blah',指向这个其他代码的驱动器和路径。我已经通过简单地引用env变量%blah%来解决解决方案文件。我的麻烦是试图让项目(vcproj)文件在从其他代码区域引用文件时类似的行为。

内vcproj文件,我已经试过:

<文件RelativePath = “%嗒嗒%......”

<文件RelativePath =“$(等等).. ”

无论是工作 - 我收到一个错误,当我尝试打开该文件:

u:\ path \ to \ vcprojfile \ $(blah)... \ myfile.c无法打开文件。

在我修改vcproj文件之前,RelativePath属性包含文件的绝对路径。那么,为什么环境变量不能正确扩展?我甚至可以在这里做我想做的事情?

回答

1

尝试使用UPPER CASE作为环境变量以及文件的相对路径。使用RelativePath="$(BLAH)\Folder\myfile.c"语法。它在VS2005中适用于我。

+0

感谢您的回复。使变量大写没有区别(错误对话框在显示之前实际上将同一变量降低了)。你使用的&角色也导致VS抱怨。 – Jon 2013-03-01 15:29:22

+0

当然,你需要使用$。错字。我已经修好了 – cha 2013-03-02 11:08:30

+1

好吧。我重新启动VS,是的,它拿起了环境变量(FYI:大写/混合的情况似乎没有区别)。我以前只是重新加载了没有的项目(拿起env var)。我还在探索在其中定义的用户宏中添加自定义属性表(每个项目似乎都替换了upgradedfrom .. prop表),从而允许为每个用户定制值,而无需设置env var。对于拥有多个clearcase视图或其他VCS分支的开发人员,他们自己的设置用于查找正确的代码也很方便。 – Jon 2013-03-05 16:01:48

相关问题