Microsoft Edgeでは、110以降のバージョンから、Windows10環境でEdgeのIEモードを利用してIEを起動すると、以下のメッセージが全画面で表示される場合があります。
表示されるメッセージは以下です。
詳しくは後述しますが、このメッセージは全画面で表示され、閉じるボタンなども表示されないため、この画面に初めて遭遇した場合は「続行」を必ず押すことになります。
「続行」を押すことで、EdgeのIEモード設定が変更されてしまい、それ以降IEモードが動作しなくなります。
IEモードを設定している以上、MicrosoftによるIEのサポート終了や、起動不可になることは理解しているのが当然な訳で、この通知は余計なお世話であると言わざるを得ないでしょう。
この現象の解説と、レジストリの書き換えによる対応方法を紹介していきます。
「Internet ExplorerはMicrosoft Edgeに移行しました。」が表示される条件や現象
当項では、「Internet ExplorerはMicrosoft Edgeに移行しました。」と全画面通知が表示される条件や、表示された場合の動作や現象について紹介していきます。
「移行しました。」画面が表示される条件
Edgeのバージョン:110以降からこの通知が表示されるようになったと冒頭で記載しましたが、すべてのWindows端末で発生する訳ではなく、以下の条件で発生しているようです。
- Windows10※ProとHomeの両方
- レジストリ書き換えでIEモード対応した端末
- IEプロセスを起動するIEモード連携時に発生
IEモード起動時にこの前画面表示でのポップアップウィンドウが表示されるのはWindows10です。
今のところWindows11では発生しません。
また、EdgeのIEモードを、ActiveDirectoryのグループポリシーで適用した端末では発生せず、AD管理外でレジストリを書き換えてIEモードを適用した端末で発生しています。
レジストリを書き換えてIEモードを適用する方法については、当ブログの以下の記事で紹介しています。
ActiveDirectoryの管理外に起因して発生するのか、レジストリ書き換えによるIEモード適用に起因して発生しているのかは検証できておりません。
あと、EdgeのIEモードには大きく分けて二種類の動作モードがありますが、一つはEdge上でIEの描画エンジンをエミュレートしてページを表示する動作モードです。
この動作モードでは、ActiveXなどのIE固有のスクリプトは動作しません。
こちらのIEモードでは今回のポップアップウィンドウは表示されません。
もう一つの動作モードは、EdgeからIEの実行ファイル自体を起動してページを表示する動作モードです。
IE自体を起動する訳で、IEモードと呼びつつも、実質ただIEを起動しているだけのモードです。
このモードであれば、ActiveXなどのIE固有のスクリプトも動作させることができます。
この動作では従来のIEがプロセスとして起動しますが、この起動時にポップアップウィンドウも表示されるようです。
「移行しました。」画面が表示された場合の動作
この画面は、全画面ウィンドウで表示されるので、後ろのウィンドウを選択できなくなります。
画面下部のタスクバーにはこのメッセージを表示させているEdgeのタスクが表示されているため、そこを右クリックして「ウィンドウを閉じる」を選択することで、この画面を消すことができます。
一度消してしまえば、IEのプロセスが残っている間は、IEモードを使用して新しくIEのプロセスを起動しても、このメッセージは表示されません。
但し、IEのプロセスをいったんすべて終了した後、EdgeのIEモードからIEのプロセスを起動させたタイミングで、再度このメッセージは表示されます。
尚、このメッセージは前述した通り全画面化されており、上記のようにタスクバーから消せることに気付かない限り、「続行」を押さないと何もできない状態になります。
「続行」を押下したタイミングで、以下のレジストリが自動的に書き換わります。
キー | HKEY_CURRENT_USER\SOFTWARE\Microsoft\Edge\IEToEdge |
値の名前 | RedirectionMode |
値の種類 | REG_DWORD |
値 | 0 or 1 → 2 |
このレジストリが 2 に書き換わると、Edgeの設定項目にある「既定のブラウザ」の「Internet Explorer の互換性」の表示が以下のように変わります。
このように、レジストリのRedirectionModeの値が2に書き換わると、それ以降、「Internet Explorer モード (IE モード) でサイトの再読み込みを許可」の設定を何に変更しても、EdgeがIEモードからIEのプロセスを呼ぶ際には必ずEdgeにリダイレクトされるようになります。
それにより、IEで開くように設定したURLをEdgeで開きにいくようになり、目的のページをIEで表示できなくなります。
また、この状態になった後で、レジストリのRedirectionModeの値を0や1に書き換えることで、再度IEモードによるIEの起動はできるようになりますが、また全画面ウィンドウで「移行しました。」メッセージが表示されるようになります。
レジストリを編集して「移行しました。」メッセージを無効化させる方法
IE起動時に、Edgeを起動してリダイレクトする動作は、IEのアドオンとして組み込まれた「IEToEdge BHO」が実現しています。
この「IEToEdge BHO」を無効化することで、IEからEdgeへのリダイレクトを止めることができます。
また、この「IEToEdge BHO」を無効化することで、今回の全画面に表示される「移行しました。」メッセージも出なくなります。
対象のレジストリは以下です。
キー | HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Ext\CLSID |
値の名前 | {1FD49718-1D00-4B19-AF5F-070AF6D5D54C} |
値の種類 | REG_SZ |
値 | 0:無効 1:有効 |
このレジストリを書き換えることで、OSの再起動をすることなく、即座に「IEToEdge BHO」の挙動は変わります。
尚、値の名前は先頭と末尾の括弧も必要です。
括弧が無いと別の値として扱われ、「IEToEdge BHO」を挙動は変わりません。
「IEToEdge BHO」をコマンドで無効にする例
今回紹介したレジストリの値の書き換え作業を複数の端末に対してまとめて実施する場合、Windowsのコマンドラインを利用することも可能です。
例えば、以下のコマンドを記述したbatファイルを作成していただくことで、このbatファイルをダブルクリックで手動実行して「IEToEdge BHO」を無効化することもできますし、このbatファイルをIT資産管理ツールなどで配信することで、一括での適用も可能です。
@echo off
rem 自端末がWindows 10 か否かを判定します。
ver | find /i "Version 10.0." > nul
if %ERRORLEVEL% equ 0 goto :WIN10
goto :END
rem Windows 10 の場合のみ処理をします。
:WIN10
rem レジストリを上書きしてIEToEdge BHOを無効化します。
reg add HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Ext\CLSID /v {1FD49718-1D00-4B19-AF5F-070AF6D5D54C} /t REG_SZ /d 0 /f
goto :END
:END
rem 処理を終了します。
exit
このままコピペしたbatファイルを作成してもらえれば動作しますが、必要によってご使用環境に合わせて書き換えてください。
最後に
Edgeのバージョンアップにより、バージョン110以降から、特定の方式でIEモードを適用した場合に、IEモード起動時に必ず「移行しました。」メッセージが表示されるようになり、発生当初は対応に苦慮しましたが、今回の記事でまとめたように「IEToEdge BHO」を無効化することで、当現象が回避できることがわかり、混乱は収まりました。
当現象で困っている人が他にいるかもと思い、記事にさせていただきました。
今回の記事が参考になれば幸いです。
今回も読んでいただきましてありがとうございました。
それでは皆さまご機嫌よう!