Epic Games Launcher が “Project files not associated” を警告してきたが、Fix Now を選んだら “Error: Couldn’t update file associations” と表示される

問題 (Symptoms)

この問題は以下の兆候、および条件があります。

  1. Epic Games Launcher を起動し、Unreal Engine -> Library を選ぶと、”Project files not associated” というメッセージが表示される
  2. 前述のメッセージ ダイアログで “Fix Now” をクリックすると、”Error: Couldn’t update file associations” というダイアログが表示されて修正できない
  3. PowerToys を使っている
  4. Epic Games Launcher を管理者権限で起動したり、管理者権限で起動したコマンド プロンプトから UnrealVersionSelector.exe /fileassociations を実行しても、同様に “Error: Couldn’t update file associations” というダイアログが表示されて関連付けを修正できない

解決方法

この問題が、この記事で述べている原因で起きている場合は、以下の方法で解決できます。

  1. PowerToys を起動し、File Management > File Explorer Add-ons のカテゴリから、Source code files (Monaco) を Off にする
  2. レジストリ キー HKCU\Software\Classes\.uproject を削除する
  3. Epic Games Launcher を一度完全に終了(※)してから起動し、Unreal Engine -> Library を選んで関連付けを修正する

(※)システムトレイに常駐している Epic Games Launcher も終了させる。または Windows を再起動する。

原因と解説

解決方法で Off にしている PowerToys の設定は、ソースコード ファイルのプレビューを表示するエクスプローラーのアドオンです。これを On にすると、PowerToys は .uproject に対する設定もレジストリに追加します。これにより HKCU\Software\Classes\.uproject が作られ、その下にもいくつかの設定が追加されます。

この PowerToys によって追加されたレジストリ キーは、Epic Games Launcher により検出され、.uproject ファイルの関連付けが正しくないと判断されるため、警告が表示されます。

関連付けを修正するよう選択すると、Epic Games Launcher は UnrealVersionSelector.exe /fileassociations を実行します。これが失敗するため、関連付けの修正は失敗します。UnrealVersionSelector.exe は RegDeleteKey() API を使ってこのキーを削除しようとしますが、RegDeleteKey() は空のレジストリ キーしか削除できないため、PowerToys が登録した(空ではない)このキーの削除に失敗します。

PowerToys によって作られた HKCU\Software\Classes\.uproject を手動で削除すれば、UnrealVersionSelector.exe /fileassociations は成功し、Epic Games Launcher は関連付けの不正を検出しなくなります。

しかし、PowerToys のソースコード ファイル プレビュー機能を有効にしていると、次回の PowerToys の起動時に、再び HKCU\Software\Classes\.uproject およびその下にレジストリ キーが作られるため、Epic Games Launcher はそれを関連付けの不正として検出します。

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です


reCaptcha の認証期間が終了しました。ページを再読み込みしてください。