如何更改Visual Studio 2012安装目录?

时间:2012-04-09 04:46:33

标签: visual-studio-2012

我已经使用Windows安装程序卸载了VS11,并删除了我能找到的与它相关的每个注册表项,但是当我尝试重新安装它时它仍会弹出:

我无法点击“...”或编辑路径。右键单击也不执行任何操作。

我需要销毁什么才能更改安装目录?


官方发布时仍在发生:

10 个答案:

答案 0 :(得分:50)

我有同样的问题,而不是强迫我安装到“c:\ program Files”,它强迫我安装到我用于Visual Studio RC的目录。使用Process Monitor和setup的日志文件后,我能够找到需要删除的注册表项。

钥匙位于

  

HKLM \软件\微软\的Windows \ CurrentVersion \ Installer程序\的UserData \ S-1-5-21-776561741-789336058-725345543-318838 \组件\ 31F687BD8A467D54C830E018D99F7F3B

对于其他系统,SID很可能会有所不同,但您可以找到最后一个字符串(31F687BD8A467D54C830E018D99F7F3B)


为了找到密钥,我执行了以下操作:

  1. 从Sysinternals下载ProcessMonitor
  2. 启动带过滤器的Processmonitor

      

    图片路径以vs_premium.exe结尾

  3. 已启动vs_premium.exe

  4. 关闭设置
  5. 等到Processmonitor不再获取活动
  6. 从%TEMP%
  7. 打开最新的dd_vs_premium_.log文件
  8. 搜索了一些内容并找到了

      

    条件'VS_Install_path_KeyExists'被评估为false。 (我想它会在受影响的系统上评估为真。我在干净的Windows安装上试过这个)

  9. 上面一行说

      

    找不到注册表项。键=   'SOFTWARE \微软\ VisualStudio的\的SxS \ VS7'

  10. 搜索

      

    微软\ VisualStudio的\的SxS \ VS7

    在Processmonitor中

  11. 几行下来ProcessMonitor向我显示了我必须删除的密钥

答案 1 :(得分:6)

我发现的唯一解决方案是在Windows 7上创建一个硬链接到您希望安装Visual Studio的目录。

例如,我的SSD驱动器不是我的启动驱动器,驱动器号为B:。

我运行以下命令行

mklink / J“C:\ Program Files(x86)\ Microsoft Visual Studio 11.0”“B:\ Program Files(x86)\ Microsoft Visual Studio 11.0”

对于安装程序和Windows,当它真正将它安装到B:驱动器上的Program Files x86文件夹时,它认为它将它安装到C:驱动器上的Program Files x86目录中。

以下是有关在Windows Vista和7中创建Junction链接的页面链接。http://www.howtogeek.com/howto/windows-vista/using-symlinks-in-windows-vista/

答案 2 :(得分:6)

一种更简单的方法对我有用:

1 - 使用/ uninstall / force开关从命令行运行安装程序,如下所示:

c:\vs_professional_ENU.exe /uninstall /force

2 - 正常重新运行安装程序。

我在Windows 10下使用VS2015执行了此操作。Reference link.

答案 3 :(得分:4)

我没有代表对上面的帖子发表评论。虽然他在这些命令开关的语法中是正确的,但程序有问题,但它不适用于选择CustomInstallPath。事实上,对我来说,它只是决定在进程列表中打开大约50多次vs_ultimate.exe迭代......

我将尝试如上所述的Hard Junction,因为我相信它会起作用。

作为旁注,如果有人感兴趣,您可以使用允许您通过运行vs_ultimate.exe / Layout X来提前获取安装的开关:\ somefolder \

我昨晚做了这件事,希望我的安装会很快,因为我有信息,但我认为为了强制它使用离线版本,你必须运行vs_ultimate.exe / noweb。

此页面指的是所有开关:http://msdn.microsoft.com/en-us/library/e2h7fzkw(v=vs.110).aspx

以上页面指出:/ p CustomInstallPath“在您指定的目录中安装所有可重新定位的包。” Thay可能意味着无声无息,无论它能够从你的根驱动器安装,它都会,但它很难确定,我的SSD空间有限。

在我尝试硬连接之前,我也可以尝试以上操作,看看是什么,然后根据需要卸载它。将发布结果

答案 4 :(得分:2)

尝试使用以下选项启动安装程序:

/p CustomInstallPath="[your_path]"

例如:

vs_ultimate.exe /p CustomInstallPath="C:\MyDirectory"

要查看所有选项,请使用开关 /?

答案 5 :(得分:1)

对我来说,最终的visual studio 2012希望安装到与(卸载的)beta版相同的路径中。我删除了HKLM中与安装目录完全匹配的大部分内容(以\结尾,例如C:\VS11Beta\),然后设置让我再次选择。

可能不是OP的解决方案(M:\Program Files听起来过于通用而无法删除),但也许是针对此问题的其他人。

答案 6 :(得分:1)

我以前安装过VS 2012测试控制器。卸载它允许我更改安装路径。

答案 7 :(得分:1)

如何更改Visual Studio 2012安装目录? 我需要销毁什么才能更改安装目录?

答案:您可以更改物理目录,而无需“销毁或更改”安装目录。这是另一种“思考聪明而不是更难”的解决方案。

以下是继续使用逻辑M:\ Program Files目录并解决文件存储问题的物理位置所需的具体材料详细信息。

它还可以为社区的其他成员提供更清晰,更可重复的安装,使用Beta版本时可以减少工作量和风险。它的风险较小,因为它封装了测试版安装中的每个文件。想要从测试版转到RC,没问题,只是不安装测试版驱动器,使用一个关闭shell注册表清理器并每次都重新安装清理到新驱动器。

该过程使用PGP磁盘,可以根据需要登录和注销/备份。

最初,似乎只能创建两个驱动器。不是这样。   - 对于f:\ Program Files(x86)\ Microsoft Visual Studio 11.0,将驱动器#1安装为F:\    这是我告诉Visual Studio安装程序安装文件的地方。它确实可以作为2.7 Gigs文件的可安装容器。

  • 在“C:\ Program Files(x86)\”“Microsoft Visual Studio 11.0”上作为文件夹安装的驱动器#2 安装文件夹的目的是收集5.5 Gigs文件的剩余部分。

我必须移动到其他PGP文件夹的33个已创建文件夹的实际列表。

以下是在安装程序将文件部署到文件夹之前可以创建的文件夹列表。

C:\Program Files\Microsoft SQL Server
C:\Program Files\Microsoft SQL Server Compact Edition
C:\Program Files\Application Verifier
C:\Program Files\MSBuild
C:\Program Files\Microsoft
C:\Program Files\IIS Express
C:\Program Files\IIS
C:\Program Files\Microsoft Visual Studio 11.0

C:\Program Files (x86)\IIS
C:\Program Files (x86)\IIS Express

C:\Program Files (x86)\Microsoft ASP.NET
C:\Program Files (x86)\Microsoft Help Viewer
C:\Program Files (x86)\Microsoft SDKs
C:\Program Files (x86)\Microsoft SQL Server
C:\Program Files (x86)\Microsoft SQL Server Compact Edition
C:\Program Files (x86)\Microsoft WCF Data Services
C:\Program Files (x86)\Microsoft Web Tools
C:\Program Files (x86)\MSBuild
C:\Program Files (x86)\NuGet
C:\Program Files (x86)\Windows Kits

C:\Program Files (x86)\Common Files\Merge Modules
C:\Program Files (x86)\Common Files\Microsoft
C:\Program Files (x86)\Common Files\microsoft shared\DevServer
C:\Program Files (x86)\Common Files\microsoft shared\MSDesigners8
C:\Program Files (x86)\Common Files\microsoft shared\MSEnv
C:\Program Files (x86)\Common Files\microsoft shared\MSI Tools
C:\Program Files (x86)\Common Files\microsoft shared\SQL Debugging
C:\Program Files (x86)\Common Files\microsoft shared\SQL Server Developer Tools
C:\Program Files (x86)\Common Files\microsoft shared\TextTemplating
C:\Program Files (x86)\Common Files\microsoft shared\Visual Database Tools
C:\Program Files (x86)\Common Files\microsoft shared\VS7Debug
C:\Program Files (x86)\Common Files\microsoft shared\WF
C:\Program Files (x86)\Common Files\microsoft shared\Windows Simulator

这是完美的预防; - 补丁管理器和补丁管理系统,无意中和无监督,不受监督,未经审计的故意无知幸福违反了良好推广到生产变更控制最佳实践的前提

  • 开发人员的代码大多是随机出现的,并且真的不知道最终产品是什么。

  • 黑客利用构建环境。

可以使用True Crypt或PGP桌面。只是没有整个磁盘加密,必须能够挂载和卸载资源。

我很欣赏硬连接方法,但除非你安全地弹出&断电驱动器,与安全PGP卸载/安装相比,它几乎不提供过程,并且既不安全也不可靠。开发人员只需打开驱动器并进行更改即可。

关于备份和恢复的工作量,与硬连接驱动器相比,备份PGP驱动器的工作量大致相同。但是,不必记住哪些文件夹已联结(可能需要还原以恢复开发环境)的价值有利于包含所有所需文件夹的更少数量的.PGD驱动器(即,将其作为其功能的一部分进行记忆)

将此视为一种环境,用于何时需要强制性非自行决定的绝对可审计保证,以实现可重现的安全构建。为了实现这一核心目标,它必须只有在实际“需要”时才可用,并且在不需要时必须得到保护。

答案 8 :(得分:0)

查看已安装的程序并查看是否已安装Visual Studio实例,如果已删除并重新运行该设置。

答案 9 :(得分:0)

对于这个仍在寻找解决方案的人,我从该问题中学到的是,尽管“正常”(从控制面板中)卸载,但并不是删除了VS的每个签名。因此,我们已从命令行强制卸载以删除所有VS足迹。我发现堆栈溢出中的以下答案对我非常有用。

在命令行(Admin)中运行带有参数的安装程序:

vs_community_ENU.exe / uninstall / force

然后:

运行vs_community_ENU.exe(或专业版/企业版)。

How to install Visual Studio 2015 on a different drive