PowerShellが開かない・動作しないときの対処法8選【Windows 11/10対応】
Windows PowerShellは、Microsoftが開発したWindows向けのコマンドラインおよびスクリプトツールです。バッチコマンドの実行やスクリプトによる作業の自動化など、幅広い用途に活用できます。通常は、Windowsの検索ボックスに「PowerShell」と入力して選択するだけで簡単に起動できます。
しかし、一部のユーザーから「PowerShellを起動するとエラーメッセージが表示される」という報告があります。表示されるエラーメッセージは環境によって異なり、主なものは以下のとおりです。
- 「PowerShell has stopped working(PowerShellの動作が停止しました)」
- 「このファイルには、この操作を実行するために関連付けられたアプリがありません。アプリをインストールするか、既にインストールされている場合は、既定のアプリ設定ページで関連付けを作成してください。」
- 「この操作は、このコンピューターに適用されている制限により取り消されました。システム管理者に問い合わせてください。」
上記のようなエラーが表示される場合は、本記事で紹介する解決策が問題の解決に役立つかもしれません。
PowerShellが動作しない・開かないときの対処法
PowerShellが動作しなくなった、または起動しない場合は、以下の解決策を順不同で試し、問題が解決するかどうかを確認してください。
- SFCおよびDISMスキャンの実行
- マルウェア対策ソフト・ウイルス対策ソフトでのスキャン
- グループポリシー設定の変更
- グループポリシー設定のリセット
- Smadavアンチウイルスの設定変更
- システムの復元の実行
- クリーンブート状態でのトラブルシューティング
- 新しいユーザープロファイルの作成
以下、それぞれの対処法を詳しく解説します。
1. SFCスキャンとDISMスキャンを実行する
この問題の原因として考えられるのが、システムファイルの破損です。幸い、Windowsには破損したシステムファイルを修復する組み込みユーティリティが用意されています。まずはSFCスキャンを実行しましょう。
コマンドプロンプトを管理者として起動し、以下のコマンドを入力してEnterキーを押します。
sfc /scannow
SFCスキャンで問題が解決しない場合は、続けてDISMスキャンも試してみてください。
2. マルウェア・ウイルススキャンを実行する
多くのユーザーから、マルウェアやウイルスへの感染が原因で問題が発生していたという報告があります。マルウェアやウイルスは、信頼できないサイトからダウンロードしたソフトウェア経由など、さまざまな経路でPCに侵入します。安全性が確保されていないサイトで配布されているソフトには、悪意のあるコードが含まれている場合があるため注意が必要です。
被害を受けたユーザーの多くは、Rootkit(ルートキット)と呼ばれる悪意のあるプログラムに感染していたと述べています。ルートキットは、サイバー犯罪者がホストコンピューターを制御し、機密データを盗み出すために使われることが多いソフトウェアです。
Malwarebytesなどの信頼性の高いマルウェア対策ソフトでシステムをスキャンするか、無料のルートキット除去ツールを試してみてください。あわせて、アドウェア除去ツールの使用もおすすめします。
また、一部のユーザーからはPoweliks感染の報告もあります。PoweliksはWindowsレジストリに直接悪意のあるコードを注入するトロイの木馬の一種で、亜種によっては追加のマルウェアをダウンロードすることもあります。
さらに、Microsoft Safety Scannerを使ってシステムをスキャンすることも可能です。このツールはMicrosoft公式サイトから無料でダウンロードでき、マルウェアやウイルスの除去に役立ちます。
3. グループポリシー設定を変更する
グループポリシーの設定が誤っていることが原因の場合もあります。グループポリシーエディターで「指定された Windows アプリケーションを実行しない」ポリシーを「未構成」に設定してください。
※ Windows 11/10 Homeエディションにはグループポリシーエディターが搭載されていないため、Homeユーザーはこの方法をスキップできます。
- Win + Rキーを押して「ファイル名を指定して実行」を起動します。
- gpedit.mscと入力してOKをクリックします。
- 「ユーザーの構成 > 管理用テンプレート > システム」に移動します。
- 「指定された Windows アプリケーションを実行しない」をダブルクリックし、「未構成」に設定します。
設定後、PowerShellが起動できるかどうかを確認してください。
4. グループポリシー設定をリセットする
ウイルスやマルウェアは、Windowsレジストリやグループポリシー設定に干渉することがあります。感染によってグループポリシー設定が変更されてしまった可能性もあるため、設定をデフォルトに戻すことで問題が解決する場合があります。
5. Smadavアンチウイルスの設定を変更する
Smadavアンチウイルスをインストールしている場合、PowerShellの起動がブロックされている可能性があります。まずは一時的にアンチウイルスを無効化して確認してみてください。無効化後にPowerShellが起動できるようであれば、Smadavの設定でWindows Scriptを許可しましょう。Smadavを開き、「Protection(保護)」に移動して「Allow Windows Script(Windows スクリプトを許可)」オプションを有効にします。
6. システムの復元を実行する
システムの復元は、Microsoftが提供するPCの保護・修復ツールです。復元ポイントを作成すると、システムファイルとWindowsレジストリのスナップショットがハードドライブに保存されます。問題が発生した際は、この復元ポイントを使ってシステムを正常だった状態に戻せます。
問題が発生する前に復元ポイントを作成していた場合は、システムの復元を実行してみてください。
7. クリーンブート状態でトラブルシューティングを行う
サードパーティ製アプリケーションがPowerShellと競合している可能性もあります。クリーンブート状態でトラブルシューティングを行えば、原因となっているプログラムやスタートアップアプリを特定できます。
クリーンブート状態では、余分なスタートアップアプリとWindowsサービスがすべて無効化されます。クリーンブート後にPowerShellを起動し、以前と同じエラーが表示されるか確認してください。エラーが表示されなければ、有効化されているプログラムのいずれかに原因があります。
原因のプログラムを特定するには、無効化したアプリをいくつか有効にして通常モードで再起動し、PowerShellを起動してエラーの有無を確認します。エラーが出なければ、クリーンブート状態に戻って次のグループのアプリを有効にし、再度確認します。この手順を繰り返すことで、問題を引き起こしているプログラムを絞り込めます。
問題のプログラムが見つかったら、更新プログラムがないか確認するか、アンインストールしてください。
8. 新しいユーザープロファイルを作成する
ユーザープロファイルが破損していると、同様の問題が発生することがあります。新しいユーザープロファイルを作成するには、管理者としてログインしてください。新しいプロファイルで問題が発生しなければ、既存のプロファイルからデータをコピーできます。
エクスプローラーを開き、以下のパスに移動します。
C:\Users
古いユーザープロファイルフォルダを開いて、含まれるファイルとフォルダをすべてコピーします。その後、同じ場所にある新しいユーザープロファイルフォルダを開き、コピーした内容を貼り付けてください。
Windows PowerShellをリセットするには?
PowerShellを初期状態に戻す前に、必ずシステムの復元ポイントを作成しておくことをおすすめします。リセットするには、デフォルトの場所にあるショートカットを新しいものに置き換えます。配布ファイルをダウンロードして展開し、Windows PowerShellのフォルダをすべてコピーします。その後、PowerShellのデフォルトの場所を開いてショートカットを貼り付け、Windowsから確認メッセージが表示されたら「置換」を選択してください。
Windows PowerShellが開かないのはなぜ?
PowerShellが開かない場合、ウイルスやマルウェアに感染しているか、システムファイルが破損している可能性があります。SFC/DISMスキャンの実行、信頼できるマルウェア対策ソフトでのスキャン、グループポリシー設定のリセット(Windows 11/10 Homeは対象外)、クリーンブート状態でのトラブルシューティング(サードパーティ製プログラムとの競合確認)などを順に試してみてください。
お役に立てば幸いです。
-
【Windows】Superfetch(SysMain)が動作しないエラーを解決する5つの方法
Superfetchが機能しなくなった場合の対処法:Superfetch(プリフェッチ)とは、ユーザーの利用パターンをもとに使用頻度の高いアプリを事前に読み込み、アプリの起動を高速化するためのWindowsサービスです。低速なハードディスクの代わりにRAMへデータをキャッシュすることで、ファイルに即座にアクセスできるようにしています。これによりアプリの起動時間が短縮され、システム全体のパフォーマンスが最適化されます。 しかし、長期間使用していると、このプリフェッチ情報が破損することがあり、その結果「Superfetchが動作を停止しました」というエラーが発生することがあります。 この問題を解決
-
【解決済み】Windows 10で「GWXUXは動作を停止しました」エラーを修正する方法
GWXUX.exeは、Windows Update(KB3035583)によって自動的にインストールされたプログラムです。Microsoftから公式な案内がほとんど出されていないため、公開されている情報は限られています。しかし、このGWXUX.exeは、ユーザーに対してWindows 10へのアップグレードを促すポップアップを表示する「Get Windows 10(GWX)」アプリに関連するものです。 この種のプログラムは「PUP(Potentially Unwanted Program:望ましくない可能性のあるプログラム)」と呼ばれ、コントロールパネルから簡単に削除することができます。なお、