2

VSS アップグレード ツールを使用して増分移行を実行しようとしています。コマンドプロンプトから移行しています。

過去にすべてのプロジェクトと履歴を TFS に正常に移行しました。また、増分移行もチェックインしました。しかし、3回目でエラーが発生しました。

私の知る限り、何も変わっていません。これをデバッグする方法に関する一般的なヒントは役に立ちます。

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).
4

2 に答える 2

1

コンバーターが x64で実行されている場合、COM 相互運用が失敗します。うまくいくかもしれないトリックは、強制的な 32 ビット コマンド プロンプトから変換を開始することです。

c:\windows\SysWOW64\cmd.exe

これにより、強制的な 32 ビット コンテキストが得られるはずです。

ここに画像の説明を入力

もう 1 つの方法は、コンバーターを常にcorflagsx86 に強制するように変更することです。

corflags /32bit+ vssupgrade.exe
于 2019-03-20T17:38:47.653 に答える