我正在尝试使用VSS升级工具运行增量迁移。我正在通过命令提示符进行迁移。
我过去已成功将所有项目和历史迁移到TFS,我还检查了增量迁移。但是,现在我第三次这样做了,我得到了一个错误。
据我所知,一切都没有改变。关于我如何进行调试的任何一般提示都会有所帮助。
运行vssupgrade migrate settings.xml
命令时出现的错误。
ERROR: Retrieving the COM class factory for component with CLSID {783CD4E4-9D54-11CF-B8EE-00608CC9A71F} failed due to the following error: 8007007e The specified module could not be found. (Exception from HRESULT: 0x8007007E)
查看分析工具创建的日志文件,错误如下所示:
[VSS, Error, 3, 2019/03/20 11:23:56.676] Exception: System.IO.FileNotFoundException
Message: Retrieving the COM class factory for component with CLSID {783CD4E4-9D54-11CF-B8EE-00608CC9A71F} failed due to the following error: 8007007e The specified module could not be found. (Exception from HRESULT: 0x8007007E).
Stack Trace: at Microsoft.TeamFoundation.Admin.VssMigration.VssConverter.OpenVss(String sourceRepository, String passwd)
at Microsoft.TeamFoundation.Admin.VssMigration.VssConverter.Initialize(ExecutionMode executionMode, MigrationSession migrationSession)
at Microsoft.TeamFoundation.Admin.VssMigration.Api.MigrationSession.PrepareForProcessing(ExecutionMode executionMode, Boolean requireUserMapFile)
at Microsoft.TeamFoundation.Admin.VssMigration.Api.MigrationSession.Migrate()
at Microsoft.TeamFoundation.Admin.VssMigration.CommandLine.VSSUpgradeCommand.MainThread()
Help Link:
BaseExceptionMessage: Retrieving the COM class factory for component with CLSID {783CD4E4-9D54-11CF-B8EE-00608CC9A71F} failed due to the following error: 8007007e The specified module could not be found. (Exception from HRESULT: 0x8007007E).
COM interop fails when the convertor runs under x64,可能有效的技巧是从强制的32位命令提示符启动转换,您可以从以下命令开始:
c:\windows\SysWOW64\cmd.exe
这应该给你一个强制的32位上下文:
另一种选择是在任何时候改变corflags
to force the convertor to x86:
corflags /32bit+ vssupgrade.exe
我的解决方案是修复Team Foundation Server的Visual Source Safe Upgrade工具。我从Microsoft's website重新下载了应用程序链接
然后运行并修复应用程序。这解决了我的问题。