Windowsで「このアプリは保護のためにブロックされました。」というエラーが出てソフトが実行できないときの対処方法です。
以前、拡張子が「.exe」のインストーラーを実行しようとした時にこのエラーが出て困ったのですが、コマンド経由で無事に起動させることが出来ました。
当記事ではWindows PowerShellからソフトを実行する方法を解説します。
この記事の目次
「このアプリは保護のためにブロックされました。」が出てソフトが実行できない時の解決策
先日サブPC用の新しいグラフィックボードを購入し、付属のDVDを使ってドライバーと専用のソフトをインストールしようとした時の話です。
早速DVD RWドライブ(E:)に付属のDVDを挿入し、インストールに進もうとしたところ見慣れないエラーが発生しました。
このアプリの実行は管理者によってブロックされています。詳細については、管理者に問い合わせてください。
このエラー画面には「閉じる」ボタンしかないので、ソフトを実行(起動)することが出来ません...。
原因もよく分からないのに管理者に問い合わせてくれって...丸投げにもほどがある。
エラーに「管理者」とあるので、試しに管理者権限で実行してみるもダメ。
個人のパソコンなのでアカウントは1つのみ。もちろん権限も管理者なのですが...
解決した方法:Windowsターミナルから実行する
ここから色々調べて試行したところ、結局Windowsターミナルからコマンドを使って直接実行ファイル(インストーラー)を実行すれば解決できました。
エラーの原因は正直よく分からなかったので後回しにします。
この方法はコマンドを使って直接アプリを実行する方法なのですが、パソコンが苦手な方には少し難しいと思いますので、画像も使って詳しく解説していきます。
Windowsターミナルを管理者権限で起動する
まずはWindowsターミナルを起動します。
Windowsターミナルは、デスクトップ下のWindowsマークを右クリックすれば出てくるメニューの中にあります。2つ出てくると思いますが、一応後ろに(管理者)と付いている方を起動しましょう。
実行確認の画面が出たら「はい」を押して起動します。
コマンドを使ってアプリを実行(起動)する
Windowsターミナルが起動したら早速コマンドを使って「このアプリは保護のためにブロックされました。」のエラーが出て実行できないアプリを実行してみます。
今回実行したいアプリは、DVD RWドライブ(E:)内にある「UI.exe」という名前の実行ファイルです。場所は「E:>UI.exe」という感じです。
今回はEドライブ直下のUI.exeを起動するために以下のコマンドを打ちました。
コマンドの解説は以下の通りです。
1つ目のコマンド「E:」
E:と入力してエンターを押し、作業ディレクトリをEドライブに移動する。
2つ目のコマンド「\UI.exe」
Eドライブ内にあるUI.exeという実行ファイルを指定し、起動する。
※ファイル名の前に「\」を付ける
指定するファイルの場所が分からない時
コマンドで指定する実行ファイルの場所が分からない場合は、エラーの画面から確認することも出来ます。
「プログラムの場所」というのが実行ファイルの場所ですね。
ポイント
コマンドの入力を間違っていても、コマンドの使い方が間違ってるよ~!というエラーが出るだけでパソコンがおかしくなったりはしません。
分からないなら数うちゃ当たる方式でもなんとかなりそうです。
動作確認
うまくいけばこれで「このアプリは保護のためにブロックされました。」のエラーが表示されることなく、普通にアプリを起動することが出来ます。
動きました!
C、Dなどドライブ内にあるアプリを実行する時のコマンド例
先ほど挙げた例はDVDドライブ(E:)内の実行ファイルをWindowsターミナルで起動してエラーを回避できた例でしたが、例が良くありませんでした。
ということで一番多そうである「ボリューム(D:)」内に保存してある実行ファイル(.exe)をターミナルから実行する時のコマンド例も詳しく解説しておきます。
例えば上の画像のようにボリューム(D:)内の「target」というフォルダ内に起動したい実行ファイル「setup.exe」がある場合を想定してみました。
この「setup.exe」をWindowsターミナルから起動する時は以下のようにコマンドを入力します。
1つ目のコマンド「D:」
管理者権限でWindowsターミナルを起動した時、スタート時点の作業ディレクトリは「C:\Users\ユーザー名」という場所からスタートするので、これをD:に移動する。
2つ目のコマンド「cd target」
D:ドライブに移動したあと、D:内にある「target」フォルダに移動するコマンド。
3つ目のコマンド「.\setup.exe」
D:>target内にある「setup.exe」を起動するためのコマンド。
この場合は実行ファイル名の前に「.\」を足せば実行できる。
1行でsetup.exeを実行するコマンド例
先ほどの例では分かりやすいように3ステップにしましたが、以下のように1発で「setup.exe」へのパスを指定してもOKです。
command
D:\target.\setup.exe
これだけでD>target>setup.exeをWindowsターミナルから実行できます。
エラーについて調べたことや分かったこと
最後に「このアプリは保護のためにブロックされました。」が出てから色々調べたり試してみて分かったことを整理しておきます。
エラーに関する情報が少ないので、間違っているかもしれません。
が、同じエラーで困っている方の何かの参考になればと思います。
エラー説明文の管理者はPCのアカウントではない?
エラーが出た時にまず試したのがWindowsの「管理者権限」での実行です。
エラー文には
とあるので、管理者権限で実行すれば...と思ったのですがダメでした。
自分のパソコンなのでアカウントは1つで管理者(Administrator)になっているのですが、どうやらこれは関係ないようです...。う~んソフトの開発元を管理者と言っているのか、はたまたOSレベルの実行を管理者と言っているのか...分かりません。
実行ファイル(.exe)が破損しているとエラーが出る?
インターネットで調べていると実行ファイル(.exe)自体に問題があるとエラーが出るとの情報がありました。
しかし今回はグラフィックボードに付属しているDVD内のインストーラーで出ましたので謎です。
同一インストーラーを複数回実行でエラーが発生か?
実は今回「このアプリの実行は管理者によってブロックされています。」のエラーが発生するまでは普通にインストーラーを何回か起動できていました。
ところが、ドライバーのインストールが上手くいかなかったので何度もトライしている最中に「このアプリの実行は管理者によってブロックされています。」が出るようになり、アプリを起動することすら不可能になってしまったという次第です。
なので、もしかしたらパソコンの環境変数を変更するようなソフトを連続で起動したりするとWindowsが自動ブロックしてしまうのかもしれませんね~...。
エラー原因はとにかくややこしそう。
英語サイトも調べたのですが、エラーの原因がやたら難しそうです。
今回はアプリケーションのデジタル署名が信頼できない時に発生する問題というのが一番可能性が高そうな内容でした。
また、ローカルセキュリティーポリシーというメニューでユーザーアカウント制御を調整しても対処できるようですが、Windows11ではローカルセキュリティーポリシーを見つけることが出来ませんでした。
まとめ
Windowsでアプリ(ソフト)実行時に「このアプリの実行は管理者によってブロックされています。」のエラーが出て実行できない状況に陥り、格闘の末に解決できた時のお話でした。
正直言ってエラーの直接の原因は分かりません。
結果的にはWindowsターミナルから起動することで無事に実行できたのですが、案外この方法が成功率高めなのかもしれません。
同じエラーが出ている方はWindowsターミナルからのアプリ実行をお試し下さい。
ではではこのへんで・w・