修正:エラーコード0x800f0954

Windows 10に.NET Framework 3.5または別のオプション機能をインストールしようとすると、 エラーコード0x800f0954が表示されるユーザーもいます。ほとんどのユーザーは、Windows機能を介してパッケージをインストールしようとするとこのエラーが発生することを報告していますが、 DISMコマンドラインツールを使用します。 このエラーは、Windows 7、Windows 8.1、およびWindows 10で発生することが確認されているため、特定のWindowsバージョンに限ったものではないようです。

エラーコード0x800f0954

エラーコード0x800f0954の原因は何ですか?

この特定の問題を調査するために、テストマシンで問題を再現し、この問題に遭遇したさまざまなユーザーレポートを調べました。 結局のところ、このエラーコードをトリガーする可能性のあるいくつかの異なる潜在的な犯人があります。

  • コンピューターがWindows Updateサーバーにアクセスできない -場合によっては、システムがWUサーバーに到達できないためにエラーメッセージが表示されます。 これは、WSUSサーバーから更新プログラムをダウンロードするように構成されたドメインに参加しているコンピューターのネットワーク全体が存在する状況で一般的です。 この場合、WSUSをバイパスして問題を解決できます。
  • DISM CBSログが問題を引き起こしています-DISMユーティリティによって生成されたCBSログが、実際には存在しない問題を指し示すことがあります。 この場合、コンポーネントベースのサービスログを削除し、このエラーメッセージで以前失敗していたDISMコマンドを再実行することで問題を解決できます。
  • .NET FrameworkはPowershellを介してインストールする必要があります–古い.NET Frameworkパッケージをインストールしようとしている場合、 0x800f0954エラーを回避するために、PowerShellウィンドウから実行する必要がある場合があります。
  • グループポリシーがインストールを妨げている -ローカルグループポリシーエディターで無効にした場合、この特定のエラーをトリガーする可能性があるポリシーが1つあります 。 このシナリオが該当する場合、「オプションのコンポーネントのインストールとコンポーネントの修復の設定を指定する」ポリシーを有効にすることで問題を解決できます。

現在、 0x800f0954エラーの修正を探している場合、この記事はいくつかのトラブルシューティング手順を提供します。 以下に、同様の状況の他のユーザーがこの特定の問題を修正するために使用したメソッドのコレクションを見つけます。

以下の方法は効率と重大度の順になっているため、提示された順序でそれらに従うことをお勧めします。 すべての潜在的な修正が現在の状況に適用できるわけではないので、従うことができない方法をスキップしてください。

方法1:WSUSをバイパスする

オプションのWindows機能をインストールしようとしているときに0x800f0954エラーが表示される場合は、おそらくシステムがWindows Updateサーバーにアクセスできないためです。 これは、特にWSUSサーバーから更新プログラムをダウンロードするように構成されたドメインに参加しているコンピューターのネットワーク全体がある状況で、同様の状況の多くのユーザーで発生したようです。

状況が似ている場合、コンピューターがかつてドメインネットワークの一部であり、グループポリシー設定がまだ残っているために問題が発生する可能性があります。 このシナリオが該当する場合、WSUSサーバーを一時的にバイパスすることで問題を解決できます。 次のレジストリ編集を実行することにより、これを簡単に行うことができます。

  1. Windowsキー+ Rを押して、[ 実行 ]ダイアログボックスを開きます。 次に、 「regedit」入力しCtrl + Shift + Enterキーを押して、管理者権限でレジストリエディターを開きます。 UAC(ユーザーアカウント制御)のプロンプトが表示されたら、[ はい ]をクリックして管理者権限を付与します。
  2. レジストリエディター内で、左側のペインを使用して次の場所に移動します。
     HKEY_LOCAL_MACHINE \ SOFTWARE \ Policies \ Microsoft \ Windows \ WindowsUpdate \ AU 

    注:アドレスをナビゲーションバーに直接貼り付けてEnterキーを押すと、すぐにアクセスできます。

  3. WindowsUpdateキーが存在しない場合は、手動で作成する必要があります。 これを行うには、Windowsキーを右クリックして、[ 新規作成]> [キー]を選択し 「WindowsUpdate」という名前を付けます。 次に、新しく作成したキーを右クリックし、[ 新規]> [キー]を選択して、最新のキーにAUという名前を付けます。
  4. AUキーを選択した状態で、右側のペインに移動し、空のスペースを右クリックして、[ 新規]> [文字列値]を選択します。 次に、新しく作成された文字列値の名前をUserWUServerに変更します。
  5. UserWUServerキーが作成されたら、それをダブルクリックして、 Value Data0に設定します
  6. レジストリエディターを閉じ、コンピューターを再起動して、次回のシステム起動時に問題が解決したかどうかを確認します。
//appuals.com/wp-content/uploads/2019/05/bypassing-the-WSUS.webm

この方法で問題が解決しない場合、または適用できない場合は、以下の次の方法に進んでください。

方法2:CBSログのクリーニング

この正確な問題が発生している一部のユーザーは、DISMに関連するCBS(コンポーネントベースのサービス)ログ削除した後、問題を解決できたと報告しています。 これを実行してDISMコマンドを再実行した後、影響を受ける一部のユーザーは、 0x800f0954エラーが発生しなくなったことを報告してます。

必要なことは次のとおりです。

  1. エクスプローラーを開き、次の場所に移動します。
     C:\ Windows \ Logs \ CBS 
  2. CBSフォルダーに入ったら、そこにあるものをすべて選択して、 削除を選択します
  3. すべてのファイル.logおよび.cabファイルが削除された後、 CBSフォルダーを閉じることができます。
  4. Windowsキー+ Rを押して、[ 実行 ]ダイアログボックスを開きます。 次に、 「cmd」入力し、 Ctrl + Shift + Enterを押して、昇格したコマンドプロンプトを開きます。 UAC(ユーザーアカウント制御)が表示されたら [はい]をクリックして管理者権限を付与します。

  5. 管理者特権でのコマンドプロンプト内で、次のコマンドを入力し、 Enterキーを押してDISMコマンドをもう一度実行します。
     Dism.exe / online / enable-feature / featurename:NetFX3 / source:C:\ 
  6. Enterキーを 押す 、.NET Frameworkは0x800f0954エラーなしでインストールされます。

それでも同じエラーメッセージが表示される場合、またはこの方法が現在のシナリオに適用できない場合は、下の次の方法に進んでください。

方法3:PowerShellを使用して.NET Framework 3.5をインストールする

DISM(展開イメージのサービスと管理)を使用して.NET Framework 3.5をインストールしようとしているときに0x800f0954エラーが発生した場合、 Powershellを使用してエラーメッセージを回避できる場合があります。

影響を受ける複数のユーザーが、問題を修正するpowershellコマンドを実行した後にエラーコードが発生しなくなったことを報告しています。 必要なことは次のとおりです。

  1. Windowsキー+ Rを押して、実行コマンドを開きます。 次に、 「powershell」入力し、 Ctrl + Shift + Enterを押して、昇格したPowershellプロンプトを開きます。 UAC(ユーザーアカウント制御)のプロンプトが表示されたら、[ はい ]をクリックして管理者権限を付与します。

    実行ダイアログ:powershell次に、Ctrl + Shift + Enterを押します
  2. 管理者特権のPowershellプロンプト内で、次のコマンドを入力し、Enterを押して実行します。
     追加-WindowsCapability –オンライン-名前NetFx3 ~~~~ –ソースD:\ sources \ sxs 
  3. 管理者特権のPowershellプロンプトを閉じて、マシンを再起動します。
  4. 次回のシステム起動時に、.NET Framework 3.5をもう一度インストールして、問題が解決したかどうかを確認してください。

同じエラーが引き続き発生する場合は、下の次の方法に進んでください。

方法4:グループポリシーエディターを使用する

RSAT Toolsetを追加しようとしたときに0x800f0954エラーが発生した場合は、 グループポリシーエディターツールを使用していくつかの変更を加える必要がある可能性があります。 一部のユーザーは、 Gpeditツールを実行してコンポーネントのインストールコンポーネントの修復に関連する設定を変更することで、この問題を解決しています。

特定のローカルポリシーを有効にし、OSがWUから修復コンテンツとオプション機能を直接ダウンロードできるようにした後、数人のユーザーが問題が解決したと報告しました。

注: グループポリシーエディターツールは、すべてのWindowsバージョンで使用できるわけではないことに注意してください。 Windows 10 Homeまたはそれを含まない別のバージョンがある場合は、この記事(ここ)に従って、ポリシーエディターをコンピューターにインストールする必要があります。

Windowsバージョンでグループポリシーエディターを使用している場合、必要な編集を行う方法のクイックガイドを次に示します。

  1. Windowsキー+ Rを押して、[ 実行 ]ダイアログボックスを開きます。 次に、 「gpedit.msc」入力してEnterキーを押し、 ローカルグループポリシーエディターを開きます。 UAC(ユーザーアカウント制御)のプロンプトが表示されたら、[ はい ]をクリックして管理者権限を付与します。

    実行プロンプトで「gpedit.msc」と入力
  2. ローカルグループポリシーエディターを開いたら、左側のペインを使用して次の場所に移動します。

    コンピューターの構成\管理用テンプレート\システム

  3. 次に、[ システム]を選択した状態で、右側のペインに移動し、[ オプションのコンポーネントのインストールとコンポーネントの修復の設定を指定 ]をダブルクリックします

    オプションのコンポーネントのインストールとコンポーネントの修復の設定を指定する
  4. 次に、ポリシーを[ 有効]に設定し、 Windows Server Update Services(USUS)ではなくWindows Updateから直接、修復コンテンツとオプション機能のダウンロードに関連付けられているボックスをオンにします。

    必要なポリシーを有効にします
  5. [ 適用]をクリックして構成を保存し、 ローカルグループポリシーエディターを閉じてコンピューターを再起動します。
  6. 次回のシステム起動時に、エラーは発生しなくなります。

興味深い記事