将vss和tfs一起安装在同一台计算机上

时间:2019-02-05 17:05:02

标签: tfs visual-studio-2017 visual-sourcesafe visual-studio-2003

我有绑定到Visual SourceSafe的旧项目,并由Visual Studio 2003完成。现在,我最近在同一台计算机上安装了Visual Studio 2017和TFS。

现在,当我尝试打开绑定到Visual SourceSafe的旧项目时,出现了一系列错误。截图下方(出于保密原因加像素)。

enter image description here

enter image description here

enter image description here

当使用旧版Visual Studio 2003打开旧版项目(绑定到Visual SourceSafe)时,它试图连接到TFS服务器(显然不能)。自从我在同一台计算机上安装了新的Visual Studio 2017和TFS以来,这种情况正在发生,似乎它们无法在同一台计算机上一起生活。那么如何将VSS和TFS都安装在同一台计算机上?有可能吗?

已更新: 似乎VS2003不允许切换SCC提供程序。唯一的方法是破解注册表进行切换。

我发现了一些有趣的东西,它们解释了如何做到这一点,并且似乎可以正常工作,问题是某些链接已断开,它们太旧并且不再可用。

Source safe with Team Foundation Server in VS.2003 Installed TFS Version Control Provider and Now my VS 2003 Projects lost connectivity to VSS 2005? MSSCCI Provider installation error

在上面的链接中,提供了一种解决方案,其中包括破解注册表,但是它们提供的链接已损坏:

Switch SCC providers

更新2 : 正如爱德华·汤姆森(Edward Thomson)在其答案中所建议的那样,我创建了一个新密钥“ HKCU \ Software \ Microsoft \ VisualStudio \ 7.1 \ CurrentSourceControlProvider \”,并将其设置为字符串值:ProviderRegKey =“ SOFTWARE \ Microsoft \ SourceSafe”。下面的屏幕截图,但不起作用:

enter image description here

1 个答案:

答案 0 :(得分:0)

MSSCCI是Microsoft源代码控制集成API,它是Visual Source Safe为诸如Visual Studio之类的IDE工具提供的原始API。早期的Visual Studio版本(如2003年)仅使用MSSCCI,并期望有版本控制提供程序来提供MSSCCI。因此,您只能让一个版本控制提供程序使用该协议。

Team Foundation Server客户端API提供MSSCCI(仅适用于Team Foundation版本控制,不适用于Git)。因此,如果要使用Visual Source Safe,则需要配置Visual Studio以与那个库集而不是TFS API集进行对话。

在Visual Studio的最新版本(如Visual Studio 2008)中,可以在“选项”>“源代码控制”>“插件选择”中即时选择MSSCCI提供程序。将枚举所有MSSCCI提供程序,您可以在Visual Source Safe和Team Foundation版本控制之间进行选择。

MSSCCI Selection

如果您使用的Visual Studio早期版本没有此选项,则可以通过直接更新注册表来更改MSSCCI提供程序。

找到注册表项:

HKCU\Software\Microsoft\VisualStudio\7.1\CurrentSourceControlProvider\ 

并设置:

ProviderRegKey="SOFTWARE\Microsoft\SourceSafe"

使用已安装的Visual Studio版本将密钥中的7.1更新(Visual Studio 2003对应于7.1版)。

进行了此更改后,您将不能使用Visual Studio 2003中的Team Foundation Verson Control,而无需将其改回。