我安装了VB6,我已经安装了Sourcegear Vault 5.x,现在我在每个VB6启动时收到此消息。
当然,我不能使用内置的源代码控制命令 我尝试重新安装SourceGear Vault,但无济于事。我错过了什么?
我该如何解决?
答案 0 :(得分:2)
当VB6加载源代码控制加载项时,您将收到此错误消息,但它没有默认的MSSCCI提供程序。
MSSCCI代表Microsoft源代码控制接口,它是大多数IDE用于连接到版本控制系统(VCS)的标准API。它最初是为Visual SourceSafe开发的,当您安装SourceSafe时,它包含了用于IDE集成的MSSCCI提供程序。对于某些现代VCS,MSSCCI提供程序必须单独安装。
您可以通过查看注册表项HKLM\SOFTWARE\SourceCodeControlProvider\InstalledSCCProviders
来验证系统上安装了哪些MSSCCI提供程序。
(在64位系统上,请查看HKLM\SOFTWARE\Wow6432Node\SourceCodeControlProvider\InstalledSCCProviders
。)
如果安装了多个IDE,则大多数IDE(包括VB6)仅支持默认提供程序。默认提供程序存储在注册表项HKLM\SOFTWARE\SourceCodeControlProvider\ProviderRegKey
中。
注意:如果您需要更改默认的MSSCCI提供程序,那么一个名为SCCSwitcher的便捷应用程序非常棒。
由于您特别提到SourceGear Vault存在问题,因此您可能遇到名为VB6 and VC++ 6.0 Integration on Windows 7的Vault知识库中描述的问题,其中包括以下步骤:
通常,对于VB6和VC ++ 6.0与Vault,您的客户端集成 机器需要.NET Framework 1.1。但是,Windows 7不支持此版本的Framework。解决方法是使VB6加载.NET Framework 2.0 启动VB6时。
以下是使VB6加载2.0 .NET框架的说明:
1)制作VaultGUIClient.exe.config的副本(在Vault GUI中 客户端目录)并将其重命名为“VB6.exe.config”。
2)将“VB6.exe.config”文件复制到与...相同的目录中 Visual Basic可执行文件“VB6.exe”。编辑VB6.exe.config文件, 在
<configuration>
行之后添加运行时信息:
<startup>
<supportedRuntime version="v2.0.50727"/>
<requiredRuntime version="v2.0.50727" safemode="true"/>
</startup>
以便配置文件的第一部分如下所示:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v2.0.50727"/>
<requiredRuntime version="v2.0.50727" safemode="true"/>
</startup>
<system.net>
对于Visual C ++ 6.0,使用以下命令创建“MSDEV.exe.config”文件 上面的说明并将其放在MSDEV.exe目录中。
(注意:这仅适用于Visual Studio 6中的VB6和VC ++ 6.0 VS中的VB或Visual C ++集成需要特殊配置 2005/2008/2010)
3)您可能还需要修改Source的注册表设置 Vault客户端计算机上的控制提供程序。对于64位Windows 7:
3a)在注册表中,在 HKEY_LOCAL_MACHINE \ Software \ Wow6432Node \ SourceCodeControlProvider add 一个名为ProviderRegKey的字符串,并为其提供数据 SOFTWARE \ SourceGear \ Vault Client。
3b)在注册表中,在HKEY_LOCAL_MACHINE \ Software \ Wow6432Node下 \ SourceCodeControlProvider \ InstalledSCCProviders,更改密钥 可能会将Vault VS 2003兼容客户端列为SourceGear Vault Classic Client并为其提供SOFTWARE \ SourceGear \ Vault的数据 客户端