Win10 移行の前に IE Dev Channel 版はアンインストールした方がよさげ
Windows 8.1 に IE Dev Channel 版をインストールした状態で、Windows 10 にアップグレードすると「ファイル名を指定して実行」でエラーが発生するようです。
前提条件
- Windows 8.1 の状態で IE Developer Channel 版をインストールしている
- Windows 8.1 から Windows 10 にアップグレードしている
事象再現方法
「ファイル名を指定して実行」より「calc.exe」を入力し [OK] ボタンをクリックします。
結果、以下のエラーが表示されます。
calc.exe - 序数が見つかりません
序数 581 がダイナミック ライブラリ C:\ProgramData\App-V\9BD02EED-6C11-4FF0-8A3E-0B4733EE86A1\6A0357B5-AB99-4856-8A59-CF2C38579E78\Root\VFS\System\ieframe.dll から見つかりませんでした。
OK
※ calc.exe の他に、URL を指定して実行した場合も、エラーとなります。
解決方法
「プログラムと機能」より「Internet Explorer Developer Channel」をアンインストールします。
ウィザードに従って、アンインストールします。
修正結果確認
「ファイル名を指定して実行」より「calc.exe」を入力し [OK] ボタンをクリックします。
Windows 10 の新しい電卓が起動します。
calc.exe と ieframe.dll の関係
一見、calc.exe と ieframe.dll は紐づかないようなイメージがありますが、以下の理由により、呼び出されるようです。
- Windows 10 の calc.exe は、電卓の実体ではなく、ストアアプリ版の電卓を呼び出す為のプログラムとなっている。
- ストアアプリ版の電卓は「calculator://」で呼び出す仕組みとなっている。
- ShellExecute() API にて「calculator://」が実行され、その過程で ieframe.dll が呼ばれる ※ (shell32.dll → shdocvw.dll → ieframe.dll)
※ 呼び出しの過程は Dependency Walker と API Monitor にて確認