←・前回記事:Windows 10公開から1年後の姿はどうなる?
→・次回記事:Microsoftが「会話Bot」に力を注ぐ理由
米Microsoftは米カリフォルニア州サンフランシスコで3月30日から4月1日までの3日間(現地時間)、開発者会議「Build 2016」を実施した。開発者向けにさまざまな発表があった中、既存のデスクトップアプリケーションをモダンな形式に変換するツール「Desktop App Converter」は、注目すべきポイントの1つだ。
さかのぼること1年前に開催されたBuild 2015でMicrosoftは「Windows Bridge」を大々的に発表した。これは、既存のアプリケーションをWindows 10のネイティブ実行基盤である「UWP(Universal Windows Platform)」上で動作する形式に変換するツール群および技術の総称だ。
Windows Bridgeには、変換元となるアプリケーションの環境によって「Windows Bridge for Android(Project Astoria)」「Windows Bridge for iOS(Project Islandwood)」「Windows Bridge for Classic Windows apps(Project Centennial)」「Windows Bridge for Web apps(Project Westminster)」の4つが用意されていた。
その当初の目的は、Android向けから、iOS向け、Web向け、そしてWin32/.NET向けまで、既存の幅広いアプリケーション開発環境をまとめてUWPへと導くための「橋渡し役」のようなものだった。
しかし、Microsoftはクロスプラットフォーム開発環境「Xamarin」の買収に伴い、Windows Bridgeを事実上終了した。Windows Bridge for Web apps(Project Westminster)は一般公開されたものの、Windows Bridge for Android(Project Astoria)は開発中止となり、Windows Bridge for iOS(Project Islandwood)はオープンソース化によって事実上Microsoftのメインプロジェクトから外れた形だ。
さて、最後に残ったWindows Bridge for Classic Windows apps(Project Centennial)だが、今回のBuild 2016ではその名称をDesktop App Converterへと変え、間もなく正式に提供を開始する予定と発表された。今回はBuild 2016の会期中に行われたDesktop App Converterに関するセッションでの情報をまとめつつ、「Windows Bridgeの遺産」が目指すものを追いかけてみよう。
なお、Windows Bridgeの変遷については、連載記事のバックナンバーをご覧いただきたい。
Desktop App Converterは、Windowsアプリケーションのインストール形式である「.msi」ファイルを使って、UWPアプリの配布パッケージである「.appx」を自動生成するツールだ。これにより、Windowsストアの仕組みを用いて従来のWin32や.NET向けに記述されたアプリケーションを配布することが可能になる。
一方、ここでAppXパッケージに変換されたアプリは基本的に従来のWin32/.NETコードベースそのままで、Win32サブセットなどを含まないWindows 10 Mobileなどのプラットフォームでは動作しない。つまり厳密に言うと、Desktop App Converterが生成するのはUWPアプリではなく、「UWPと同じ配信形式のパッケージ」を生成しているにすぎない。
これだけだと「Windowsストアを利用できる以外のメリットはないの?」ということになるが、実際にAppXパッケージが生成されることで、企業内でも配信が楽になるだけではなく、ユーザーにとっても「システムフォルダやレジストリを汚さない」という大きなメリットがある。
通常、デスクトップアプリケーションのインストールではWindows OSのレジストリに専用領域の確保のほか、必要なDLLやランタイムをシステムフォルダなどに適時追加していくことが多い。ところが、こうしたことを繰り返すとレジストリが肥大化してメモリやパフォーマンスを圧迫するだけでなく、アンインストール時に「ゴミ」を生む結果となってしまう。
Desktop App ConverterではAppXパッケージ生成時にマニフェストを包含し、内部的にリダイレクト処理を行うことで、レジストリやDLLの書き込みがパッケージの外部に波及することを防ぐようになっている。これにより、変換後のデスクトップアプリケーション(AppXパッケージ)のインストール/アンインストールがシステムに悪影響を与えることがなくなるという。つまり、Windows 7向けのアプリケーションを単純に変換するだけでもメリットがあるのだ。
実際には動作テストと若干のコード変更が必要になる場合があるようだが、Buildのセッションで紹介されていたデモによれば、EvernoteのAppXパッケージの変換はものの数分で完了し、起動初回にインストール画面こそ表示されるものの、ほぼ変わりなく動作しているようだった。
Copyright © ITmedia, Inc. All Rights Reserved.