※本ページにはプロモーション(広告)が含まれています
wingetでパッケージをインストールしようとしたらハッシュ不一致エラーが出て困っていませんか?
Windows 11のパッケージマネージャー「winget」を使って winget install コマンドを実行した際に、「Installer hash does not match」というエラーが表示されてインストールが止まってしまう——そんなトラブルに遭遇したことはありませんか?
このエラーはセキュリティ検証の仕組みによるものですが、実際にはパッケージ自体に問題がないケースも多く、正しい手順で対処すれば解決できます。本記事では、ハッシュ不一致エラーの原因と具体的な解決方法を順番に解説します。

この記事でわかること
- 「Installer hash does not match」エラーの原因
- wingetソースを更新してエラーを解消する方法
--forceオプションの正しい使い方とリスク- プロキシ・VPNによる干渉の確認方法
- winget設定のリセット手順
- 手動インストールへのフォールバック手順
「Installer hash does not match」エラーとは
ハッシュ検証の仕組み
wingetはパッケージをダウンロードした後、そのファイルが正規のものであることを確認するために「ハッシュ値」を照合します。ハッシュ値とはファイルの内容から計算される固有の文字列で、ファイルが1バイトでも変われば全く異なる値になります。
wingetのパッケージマニフェスト(winget-pkgs リポジトリに公開されている定義ファイル)には、正規インストーラーのハッシュ値が記録されています。ダウンロードしたファイルのハッシュ値がマニフェストの値と一致しない場合に「Installer hash does not match」エラーが発生します。
エラーが起きる主な原因
| 原因 | 説明 | 対処法 |
|---|---|---|
| wingetソースが古い | マニフェストは更新済みだがローカルキャッシュが古い | winget source update |
| ネットワーク通信の改ざん | プロキシ・VPNがファイルを書き換えている | VPN/プロキシをオフにして再試行 |
| マニフェストの更新遅延 | ベンダーがインストーラーを更新したがwinget側が未対応 | –force または手動インストール |
| ダウンロードの破損 | 通信エラーでファイルが完全にダウンロードされなかった | 再実行またはキャッシュ削除 |
| セキュリティソフトの干渉 | ウイルス対策ソフトがファイルを変更・ブロック | 一時的に除外リストに追加 |
対処法1:wingetソースを更新する(最初に試すべき方法)
最も多い原因はwingetのローカルキャッシュが古いことです。以下のコマンドでソースを更新してから再度インストールを試みてください。
PowerShellまたはコマンドプロンプトを管理者として実行し、以下を入力します。
winget source update
更新完了後、再度インストールコマンドを実行します。
winget install パッケージID
これで解決しない場合は、ソースを一度リセットして再登録します。
winget source reset --force
winget source update

対処法2:–force オプションを使う
--force オプションを付けると、ハッシュ検証を無視してインストールを強制します。ただし、このオプションはセキュリティ上のリスクがあるため、信頼できるパッケージに限り使用してください。
winget install パッケージID --force
--force は原因が「マニフェストの更新遅延」であることが確実な場合のみ使用してください。不審なパッケージに対して使用すると、改ざんされたファイルをインストールするリスクがあります。
対処法3:プロキシ・VPNの干渉を確認する
企業ネットワークや家庭用VPNを使用している場合、ネットワーク機器がHTTPS通信を検査・変更することがあり、ファイルのハッシュ値が変わる原因となります。
- VPNソフトを一時的に無効化する
- 企業プロキシを経由しない直接接続で試す(可能な場合)
- Wi-Fiをオフにして別のネットワーク(スマートフォンのテザリング等)で試す
- 問題が解決した場合、VPN/プロキシ設定にwinget用の除外ルールを追加する
Windows標準のプロキシ設定を確認するには、PowerShellで以下を実行します。
netsh winhttp show proxy
プロキシが設定されていてそれが原因と思われる場合は、一時的に直接接続に切り替えます。
netsh winhttp reset proxy
対処法4:winget設定をリセットする
wingetの設定ファイルが破損している場合、設定をリセットすることで解決することがあります。
- PowerShellを管理者として開く
- 以下のコマンドでwingetの設定フォルダを開く
explorer $env:LOCALAPPDATA\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState
- 「settings.json」ファイルを別の場所にコピーしてバックアップする
- 「settings.json」の内容を以下に書き換える(またはファイルを削除してwingetを再起動する)
{
"$schema": "https://aka.ms/winget-settings.schema.json"
}
対処法5:手動インストールへのフォールバック
wingetでのインストールが繰り返し失敗する場合は、メーカー公式サイトから手動でインストーラーをダウンロードするのが最も確実な方法です。
- wingetでパッケージ情報を確認してダウンロードURLを取得する
winget show パッケージID
- 表示された「Installer URL」から直接ブラウザでダウンロードする
- ダウンロードしたファイルをダブルクリックして通常どおりインストールする
手動インストール後、wingetが認識できるようにするには以下を実行します(任意)。
winget list パッケージID

対処法6:winget自体をアップデートする
古いバージョンのwingetにはハッシュ検証に関するバグが含まれている場合があります。winget自体(App Installer)を最新版にアップデートしましょう。
- Microsoft Storeを開く
- 「App Installer」を検索してアップデートがあれば適用する
- またはPowerShellから更新する
winget upgrade Microsoft.AppInstaller
対処法まとめ比較
| 対処法 | 難易度 | 解決率 | リスク |
|---|---|---|---|
| winget source update | 低 | 高(約60%) | なし |
| –force オプション | 低 | 高(約70%) | 中(不明パッケージ不可) |
| VPN/プロキシ無効化 | 低〜中 | 中(約30%) | 低 |
| 設定リセット | 中 | 中(約20%) | 低 |
| 手動インストール | 中 | 非常に高(約95%) | 低(公式サイトから) |
この記事に関連するおすすめ商品
Windows 11 対応 PC セキュリティソフト
約3,000〜8,000円/年
winget使用時の安全なネットワーク環境を保護するセキュリティスイート
Windows 11 Pro パッケージ版
約18,000〜22,000円
winget他の開発者向け機能が充実したWindows 11 Proライセンス
※ 価格は変動します。最新価格はリンク先でご確認ください
よくある質問(FAQ)
Q. –force を使うと何かリスクはありますか?
信頼できる公式パッケージに対して使う場合のリスクは低いです。ただし、不明なパッケージや第三者が公開したパッケージに対しては、改ざんされたファイルをインストールする可能性があるため絶対に使用しないでください。判断に迷う場合は公式サイトから手動ダウンロードを選択してください。
Q. wingetコマンドが「winget: コマンドが見つかりません」と表示されます
wingetはWindows 10(バージョン1709以降)またはWindows 11に含まれていますが、古い環境では手動インストールが必要です。Microsoft StoreでApp Installerを検索してインストールするか、GitHubの「microsoft/winget-cli」リリースページからダウンロードしてください。
Q. 企業のPCでwingetを使う場合に注意点はありますか?
企業環境ではグループポリシーによってwingetの使用が制限されていたり、プロキシサーバーがハッシュ不一致の原因になることがあります。IT管理者に確認の上、必要に応じてプロキシ除外リストへの追加を依頼してください。
Q. winget source update を実行してもエラーが続きます。なぜですか?
wingetのソース(winget-pkgs)がGitHubにホストされているため、GitHubへの接続が不安定な環境では更新が失敗することがあります。時間をおいて再試行するか、別のネットワーク環境から実行してみてください。
Q. PowerShellとコマンドプロンプト、どちらでwingetを実行すべきですか?
どちらでも動作しますが、PowerShellを管理者として実行するとより多くの権限が使えるため推奨します。Windows Terminalを使うとPowerShell・コマンドプロンプトを簡単に切り替えられて便利です。
まとめ
Windows 11のwingetで「Installer hash does not match」エラーが発生した場合、以下の手順を順番に試してください。
- winget source update を実行してソースを更新する(最初に必ず試す)
- VPN・プロキシを一時的に無効化して再試行する
- 信頼できるパッケージであれば
--forceオプションで強制インストール - winget設定をリセットして再試行する
- 公式サイトから手動でインストーラーをダウンロードしてインストール
ハッシュ不一致エラーのほとんどはソースの更新(手順1)または手動インストール(手順5)で解決できます。セキュリティを意識しながら、段階的に対処法を試していくことが大切です。
minto.tech スマホ(Android/iPhone)・PC(Mac/Windows)の便利情報をお届け! 月間アクセス160万PV!スマートフォン、タブレット、パソコン、地デジに関する素朴な疑問や、困ったこと、ノウハウ、コツなどが満載のお助け記事サイトはこちら!