VCCやALCOMのウィンドウが表示されなくなったときの解決法

> 勢いで書いたらちょっと長くなっちゃいましたｗ
> とりあえず解決したい人は[解決方法](#解決方法)を見ましょう。

# 経緯
以前、私が不要なプログラムを整理していた時に事件は起きました...
ALCOMが起動しない!!何故じゃ!!なぜ動かん!!

# 環境
- Windows11
多分他は割愛してOK

# 直前にやったこと
- 不要なプログラムの大量アンインストール(主にIOBit Uninstaller使ってた)
- `AppData\...`以下の不要だと思われるディレクトリの削除(主にアンインストール済みのヤツ)
- `C:\Users\ユーザ名\...`にあった不要ディレクトリの削除(主にアンインストール済みのヤツ)
- WindowsUpdate(version 24H2)

# 状況分析
### 1. プロセス周りのチェック
- とりあえずALCOMが動かないのでVCCが起動できるか確認
->起動できねぇ!!ムカつくぜぇ~~!!起動してすぐタスクキルされるっぽい

- ついでにALCOMのプロセス周りがどうなっているのか確認
->プロセスは生きてるっぽいけどウィンドウが表示されない

### 2. VCCとALCOMのログチェック
#### ログの場所
- VCCのログ出力先:`C:\Users\ユーザー名\AppData\Local\VRChatCreatorCompanion\Logs`
- ALCOM(vrc-get)のログ出力先:`C:\Users\ユーザー名\AppData\Local\VRChatCreatorCompanion\vrc-get\gui-logs`

#### 確認結果
- VCC側:そもそもエラーの行が無い。何故じゃ....ちみ少なくともエラー出てるはずじゃろ..
- ALCOM側:↓1行だけエラーの行があった
```
[ERROR] tauri_runtime_wry: failed to create webview: WebView2 error: WindowsError(Error { code: HRESULT(0x80070002), message: "指定されたファイルが見つかりません。" })

```
どうやらWebView2でエラーが発生してるっぽい.....?

### 3. WebView2ってなぁに？
とりあえず調べてみるとトップにこんなものが...

https://developer.microsoft.com/ja-jp/microsoft-edge/webview2

ふむ...どうやらネイティブのWindowsアプリケーションにWebコンテンツを埋め込む為のものっぽい？
WindowsにはEdgeと共にデフォルトで入ってるっぽい
へ～Electronに似てる....

:::note info
Q: Electronとは?
A: Electronは、Webコンテンツによるデスクトップアプリケーションを構築するChromiumとNode.jsを用いて動くJavaScriptベースのソフトウェアフレームワーク
https://www.electronjs.org/ja/docs/latest/
:::

### 原因の総括
多分、不要プログラム消したときにEdgeを選択しちゃって、IOBit Uninstallerくんが間違ってWebView2のディレクトリも消したっぽい。
# 解決方法
~~とは言え、原因が分かれば後は今の時代ネットで調べればいくらでもなんとかなる...~~
とりあえず書いていきましょかｗ

#### 1. レジストリからedge関連のキーを削除する
- Windowsキー+Rを押して、`regedit`を入力して`Enter`
- `\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\EdgeUpdate\Clients\{F3017226-FE2A-4295-8BDF-00C3A9A7E4C5}`を削除
- 
  :::note info
  - 記事によっては`HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Edge`とかも消せ～とか`EdgeUpdate`を消せーとか書いてあるけど、ロックをしているのは~~このキーだけ~~(実際はもう一個あるけど何故か消えてた)から基本これ消せれば何でもOK
  - レジストリを変更する理由は再インストールするのに何故かロックが掛かってるから
    アンインストーラー何ぞは残ってないから直接弄るしか無いね
  :::
  
#### 2. `C:\Program Files (x86)\Microsoft\EdgeWebView`を消す
中身がもしかしたら残ってるかもだから消しておこう
スキップしてもいいよ～

#### 3. Microsoft Edge WebView2をインストールする
以下から、エバーグリーンブートストラップの方をインストール
多分エバーグリーンスタンドアロンインストーラーの方はスタンドアロン版だから、アプリに埋め込むための奴な気がする([参考](https://learn.microsoft.com/ja-jp/microsoft-edge/webview2/concepts/distribution?tabs=dotnetcsharp))
https://developer.microsoft.com/ja-jp/microsoft-edge/webview2?form=MA13LH

### 終わり！！

# おまけ
WebView2って結構前から色んなところに使われてるっぽいですね....
直近だと2025年にファイナルファンタジーXIVの方でもトラブルになってたっぽい([参考](https://jp.finalfantasyxiv.com/lodestone/news/detail/5958d2e0dbd6c77498b9e10f27f012b403efa169))
ちなみに正確なレジストリのキーは[コチラ](https://answers.microsoft.com/ja-jp/windows/forum/all/edge-webview2/a05f3b15-8261-4cf3-a2c0-921392078242)を参考にさせて頂きました
Windows11は元々Runtimeが埋め込まれてるから見落とすよね...

# 参考資料一覧
https://learn.microsoft.com/ja-jp/microsoft-edge/webview2/concepts/distribution?tabs=dotnetcsharp
https://developer.microsoft.com/ja-jp/microsoft-edge/webview2?form=MA13LH
https://vrc-get.anatawa12.com/ja/alcom/
https://www.electronjs.org/ja/docs/latest/
https://devlog.birchgame.org/2024/04/edge-install/index.html
https://answers.microsoft.com/ja-jp/windows/forum/all/edge-webview2/a05f3b15-8261-4cf3-a2c0-921392078242
https://jp.finalfantasyxiv.com/lodestone/news/detail/5958d2e0dbd6c77498b9e10f27f012b403efa169