PowerShellでスクリプトを実行しようとすると、「このシステムではスクリプトの実行が無効になっているため、ファイルを読み込むことができません。」というエラー メッセージが表示される場合があります。MiniTool Partition Wizardのこの記事では、この問題を解決してPowerShellスクリプトを正常に実行する方法について説明します。
Windowsシステムを管理し自動化するための強力ツールであるPowerShellには「実行ポリシー」と呼ばれるセキュリティ機能があり、PowerShellが実行できるスクリプトの種類を決定します。実行ポリシーにはいくつかのレベルがあり、最も制限が厳しい状態では、一切のスクリプト実行が許可されません。この状態が、上記のエラーメッセージが表示される原因です。
解決策:PowerShellの実行ポリシーを変更する
PowerShellには、スクリプトをどのような条件で実行できるかを決定する4レベルの実行ポリシーがあります。これらのポリシーを理解することは、「このシステムではスクリプトの実行が無効になっているため、読み込めません」というエラーを解決するために重要です。以下に、これら4種類のポリシーについて簡単に説明します。
- Restricted(制限):これはPowerShellのデフォルト ポリシーです。このポリシーでは、スクリプトは実行できません。PowerShellを使用して個々のコマンドを実行することはできますが、スクリプト ファイルを実行することはできません。
- AllSigned(すべて署名):このポリシーでは、信頼できる発行者によってデジタル署名されたスクリプトを実行できます。署名されていないスクリプトは、実行がブロックされます。つまり、このポリシーで実行できるのは、認証済みのスクリプトのみです。
- RemoteSigned(リモート署名):このポリシーでは、ローカルで作成されたスクリプトを実行できます。一方、インターネットからダウンロードしたスクリプトは、信頼できる発行者によってデジタル署名されていなければ実行できません。これは、セキュリティと利便性のバランスをとる一般的なポリシーです。
- Unrestricted (制限なし):このポリシーでは、ソースがローカルかどうか、スクリプトがデジタル 署名されているかどうかに関係なく、すべてのスクリプトの実行を許可します。ただし、スクリプトのソースやセキュリ ティに制限がないため、潜在的なセキュリティ リスクが発生する可能性があり、 慎重に使用する必要があります。
「このシステムではスクリプトの実行が無効になっているため、ファイルを読み込むことができません。」エラーを解決するために、PowerShellの実行ポリシーを手動で変更する必要があります。実行ポリシーを変更するには、通常、PowerShellを管理者として実行し、Set-ExecutionPolicyコマンドを使用する必要があります。
方法1:コマンドラインを実行する
コマンドラインを実行して各実行ポリシーの設定を確認し、実行ポリシーを「Unrestricted」に変更することができます。手順は以下のとおりです。
ステップ1:「スタート」アイコンを右クリックし、「Windows PowerShell(管理者)」を選択します。
ステップ2:以下のコマンドを入力し、Enterキーを押します。この操作により、各ユーザーやシステムに対して実行ポリシーがどのように設定されているかを確認できます。
Get-ExecutionPolicy -List

ステップ3:コマンド「Set-ExecutionPolicy Unrestricted –Scope CurrentUser」を入力し、Enterキーを押します。これにより、現在登録しているユーザーの実行ポリシーを「Unrestricted」に変更されます。
ステップ4:PowerShellを閉じてパソコンを再起動します。
方法2:レジストリエディターを使用する
レジストリキーを適切に編集することで、実行ポリシーを「Unrestricted」に変更することもできます。Windows でスクリプトの実行が無効になっている場合は、以下の手順に従ってPowerShell実行ポリシーを変更できます。
MiniTool Partition Wizard Pro Demoクリックしてダウンロード100%クリーン&セーフ
ステップ1:WindowsキーとRキーを同時に押して「ファイル名を指定して実行」ウィンドウを開きます。
ステップ2:「regedit」入力してEnterキーを押し、レジストリエディターを開きます。

ステップ3:次のパスに移動します。
コンピューター\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell
ステップ4:「ExecutionPolicy」という項目を見つけてダブルクリックします。「値のデータ」フィールドに「RemoteSigned」と入力して「OK」をクリックします。この操作により、PowerShellはローカルスクリプトと署名済みスクリプトを実行できるようになります。

ステップ5:レジストリ エディターを終了し、パソコンを再起動します。
方法3:ローカルグループポリシーエディターを使用する
ローカル グループ ポリシー エディターを使用して実行ポリシーを変更することもできます。
ステップ1:「ファイル名を指定して実行」ウィンドウを開き、「gpedit.msc」と入力して「OK」をクリックします。
ステップ2:「ローカルグループポリシーエディター」ウィンドウで、「コンピューターの構成」→「管理用テンプレート」→「Windowsコンポーネント」→「Windows PowerShell」の順に選択します。
ステップ3:ウィンドウの右側に移動し、「スクリプトの実行を有効にする」項目をダブルクリックします。

ステップ4:ポップアップウィンドウで「有効」オプションにチェックを入れ、「実行ポリシー」ドロップダウンメニューから「ローカルスクリプトおよびリモート署名済みスクリプトを許可する」を選択します。
ステップ5:「OK」をクリックして変更を保存します。

結語
この記事では、「このシステムではスクリプトの実行が無効になっているため、ファイルを読み込むことができません。」エラーを解決する方法を紹介しました。ご参考になれば幸いです。