Ошибка VSS в TFS: получение заводской ошибки класса COM: 8007007e

Я пытаюсь запустить пошаговую миграцию с помощью инструмента обновления 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).

2 ответа

Решение

Мое решение состояло в том, чтобы восстановить Visual Source Safe Upgrade Tool для Team Foundation Server. Я повторно загрузил ссылку на приложение с веб-сайта Microsoft

А затем запустить и восстановить приложение. Это исправило мои проблемы.

COM-взаимодействие завершается неудачно, когда конвертер работает под x64, уловка, которая может сработать, состоит в том, чтобы запустить преобразование из принудительной 32-разрядной командной строки, которую можно запустить через:

c:\windows\SysWOW64\cmd.exe

Это должно дать вам принудительный 32-битный контекст:

Другой альтернативой является изменение corflags заставить преобразователь в x86 все время:

corflags /32bit+ vssupgrade.exe
Другие вопросы по тегам