2010-03-11 84 views
2

我有一个驻留在“拇指驱动器”(a.k.a.记忆棒)上的项目。由于Windows能够更改驱动器盘符,我想使用环境变量指定子项目的位置。这使我可以设置拇指驱动器盘符,具体取决于我正在使用的PC;或者在驱动器盘符更改时(例如将硬盘驱动器添加到PC时发生)更改该变量。如何使用环境变量添加现有项目?

这个问题有子部分:

  1. 如何判断的Visual Studio(2008)使用环境中添加使用GUI现有项目时可变

  2. 哪些文件,我需要与环境变量(* .dcp,*的.vcproj,*的.sln)修改?

  3. 我是否需要删除特定于平台的vcproj文件,如*.vcproj.HOST_NAME
    {因为我用拇指驱动器不同的主机电脑,也有不同的vcproj文件。}

我使用微软的Visual Studio 2008中,C++,在Vista和Windows XP(至少两个平台)。

+1

顺便说一句,您可以使用磁盘管理器来分配特定的驱动器盘符(试行> = M :)你的具体** **音量 - ,或者安装到一个目录上您的主NTFS分区中的一个。 – vladr 2010-03-11 04:48:22

+0

只有当它是具有序列号的_proper_ USB设备时才有效。这打破了没有序列号的假货。 – MSalters 2010-03-11 10:24:08

+0

分配盘符不是问题;它是Windows自动移动它们。例如,如果我的拇指驱动器是“F:”,并且添加了一个硬盘驱动器(外部或内部),我的拇指驱动器将是“G:”,而不是分配给“G:”的硬盘驱动器。然后我必须重新分配所有的驱动器或者只是改变一个环境变量。 – 2010-03-11 13:41:30

回答

0

这里最好的解决方案是使用相对路径,为您的子项目。从解决方案文件到子项目的相对路径不会更改,因为二者位于同一个驱动器上。

+0

如果这是最好的解决方案,我如何使用相对寻址使GUI“添加现有项目”?另外,相对寻址的“参考点”在哪里? – 2010-03-11 13:45:25

0

您还可以使用'subst'命令来克服漫游驱动名称。

例如

f(thumbdrive):\> subst z: projectfolder 

,然后你可以设为z随时访问您的文件夹:\,计算机的假设没有一个有“Z:”驱动器安装。

+0

尽管我没有测试过这个,但我知道在Windows XP上,添加硬盘驱动器会使驱动器号出现抖动,并且不需要考虑网络驱动器映射。如果我在“D:”有一个网络共享,并且我添加了一个硬盘,那么硬盘变成“D:”并且*我的网络共享仍然映射到“D:”。我的理解是'subst'和映射网络驱动器的思路是一致的。 – 2010-03-11 13:44:11