Windowsアプリの更新が失敗したとき、再試行の前に段階を見る
アプリに更新があるのに、「更新」を押しても終わらないように見えます。ダウンロード中か、管理者の承認待ちか、インストール中か、インストール済みバージョンの確認中かを見ます。判断を待っているインストーラーは、何度クリックしても進みません。
遅いダウンロードと、失敗したインストールを分ける
Moleの更新の行は段階を示します。ダウンロードは、合計サイズがあるときは割合を、ないときはダウンロード済みの量を示します。数字が変わるなら進んでいます。ダウンロード中は取り消せます。管理者の確認を含むインストール段階に入ると、もう取り消せないので、インストーラーが途中で強制終了されることはありません。
| 止まる場所 | 最初の確認 |
|---|---|
| ダウンロードが進まない、またはサーバーエラー | ダウンロード先、接続、ベンダーのサービス。エラー全文を残す |
| 管理者アクセスを求めている | タスクバーとWindowsの承認の確認 |
| 別のウィンドウを開いたままインストール中 | インストーラーがアプリの終了、確認、再起動を待っているか |
| 終わったのにバージョンが変わらない | アプリのバージョン情報、インストールの範囲、開き直しが必要か |
拒否されたダウンロードは、インストーラーが一度も動かなかったことを意味し得ます。インストーラーが壊れたことや、動いている版を先にアンインストールする必要を示すものではありません。
エラーはインストーラー自身の文脈で読む
Windows Installerの結果は、失敗の種類によって対処が違う理由を示します。
| MSIコード | 意味 | 次の手順 |
|---|---|---|
| 1603 | 一般的なインストール失敗 | %TEMP%のMSIログ(MSI*.log)を読むか、msiexec /l*vで再実行する。コードだけでは原因は特定できない |
| 1618 | 別のインストールが実行中 | そのインストールが終わってから、次を始める |
| 3010 | 成功。完了には再起動が必要 | 作業を保存し、再起動の要求に従い、バージョンを確認する |
これらの意味はMicrosoftのWindows Installerのコード表からのものです。MSIの結果に当てはまり、すべてのベンダーのEXEインストーラーに当てはまるわけではありません。特に3010は、失敗したダウンロードを再インストールする必要があるという意味ではありません。
インストールを繰り返さずにログを探す
次のPowerShellの問い合わせは、アプリの更新を始めずに、WinGetのバージョン、環境、ログディレクトリを示します。
winget --info
失敗した時刻のログを見つけ、アプリ名、パッケージID、タイムスタンプを照合します。ダウンロードの応答、インストーラーの終了、そのあとのバージョン確認を分けます。ログにはユーザー名とローカルパスが入り得ます。アーカイブ全体を公開せず、サポートへ共有する前に出したくない詳細を外します。
試した時刻、元のアプリのバージョン、完全なコード、承認や再起動の要求を一緒に残します。そうしないと、昨日の無関係なインストールの失敗が、今日の問題の原因に見え得ます。WinGetのトラブルシューティングのドキュメントは、強制的な再インストールを要求せずに、このログの探し方を説明しています。
一部の更新は、先に古い版を外す
Java 8などのインストーラーは、古い版の削除を要求することがあります。マシン全体へのインストールは管理者アクセスが必要なことがあり、通常ユーザーの更新は完了しないことがあります。Moleはサポートされた更新の場合を扱い、必要なときは承認を求めます。すべての失敗が権限の問題とは限りません。
インストーラーの終了コードと挙動は違います。MicrosoftのWinGetのトラブルシューティング案内は、ログとエラーの調査を説明しています。サポートには、「失敗」という語だけより、コードと段階の方が役立ちます。
新しいバージョンが実際に使われているか確認する
アプリにはユーザー単位とマシン全体のインストールがあり得て、表示されるバージョンがパッケージ登録と違うこともあります。このインストールのバージョン情報を開き、インストーラーが終わったことを確認し、求められた再起動を完了します。更新一覧を空にするためだけにインストールを繰り返すのは、信頼できる修正ではありません。
Moleは、バージョンが変わらなかった結果を確認できるように残します。自分で更新するアプリは自分の経路を残します。更新のガイドがその項目を説明しています。開いたまま更新するブラウザーは、次の再起動のあと新しい版を使うのが普通です。
フィードバックにはバージョンと正確なエラーを入れる
Windows、Mole、影響を受けたアプリのバージョンを記録します。ダウンロード、承認、インストールがどこまで進んだかを書き、エラーとスクリーンショットをWindowsヘルプのサポート経路で送ります。ログは、共有したくないものを先に外します。
Mole自身の更新、ほかのアプリの更新、Windows Updateは別の待ち行列です。システムの更新エラーは、アプリの失敗1件をシステム全体のリセットの理由にせず、Windowsの記録から調べます。更新の経路そのものはWindowsでどの更新の入り口を使うか、更新ファイルとそれが失うロールバックはWindows Updateのファイルを削除するを見てください。