KB4025342 と DAC について

大分、更新が滞っておりました。2017年7月に KB4025342 がリリースされてから、Desktop App Converter で変換を行うと「E_STARTING_ISOLATED_ENV_FAILED(time out)」というエラーが発生します。KB4025342 をアンインストールすると、変換が問題なく終了することから、パッチか Windows コンテナのイメージの互換性がなくなったかのどちらかと思われます。この問題に関するブログ エントリがありました。

このエントリによると、ダウンロード センターより BaseImage-15063-UPDATE.wim をダウンロードして、ベース イメージを入れ替えて下さいとあります。入れ替えるためには、以下の2種類のコマンドを使用します。

  • ベース イメージの削除:「DesktopAppConverter –Cleanup ExpandedImage」
  • ベース イメージのインストール:「DesktopAppConverter –Setup –BaseImage “フルパス\BaseImage-15063-UPDATE.wim”」

この問題は、Windows 10 ビルド 15063.486 以降では、ベース イメージがビルド 15063.483 以降を要求するためです。 削除する前のベース イメージは 15063.0 になっています。ベース イメージを入れ替えれば、Desktop App Converter による変換は成功しますが、もう 1 つ問題が発生します。それは、Desktop App Converter が出力するフォルダに関するアクセス権限(ACL)によって、「PackageFiles\AppxManifest.xml」を使って「Add-AppxPackage -Register AppxManifest.xml」コマンドでインストールしたアプリを起動しようとすると、「パラメータが間違っています」というエラーが発生することです。これは、アクセス権限の問題ですので、解決方法は次の2種類のどれかになります。

  • 出力先のフォルダをカレントにして「icacls * /t /reset」コマンドでアクセス権限をリセットする。
  • Windows エクスプローラーを使って、出力先のフォルダのアクセス権限を修正する。

アクセス権限を変更するのは、サインインしたユーザーに対してフル コントロールを与えるということです。Desktop App Converter は管理者権限で実行し、出力先フォルダがカレント ユーザーに対する権限を継承しないために、アクセス権の変更が必要になったということです。もちろん、Appx パッケージを作成してインストールする場合は、この問題の影響はございません。