※この記事は Microsoft Build 2022 にて行われたセッション「Windows 11の使いこなし 「Insider Preview からFeedback Hubまで」」の内容まとめ記事となります。
3度目まして!三瀬と申します。
私が入社してもう2ヶ月が経過するそうですが、本当に時間というものは経ってしまえば早いですね。
ゴリ押しですが、時間が経ったと言えばWindows11です。日本で公開されてからいつの間にか半年が経過していましたが、Windows PCを愛用されている皆さんはもう11にアップデートされましたか?それとも10のままでしょうか?
アップデートを悩んでいる方の中には、「10からどんな仕様変更があったか分からなくて怖い」という考えをお持ちの方もいるかと思われます。
そしてこの記事を書いている私は、Windows10のことすら何も分かっていません(激ヤバ)
現在私の業務用PCはWindowsですし、Linuxが入った個人用PCを使っていた頃のように「まぁいっか、吹き飛ばしちゃっても」といったマインドでコマンドを打ったりする訳にはいかないので、改めてWindowsに対する理解をプチ深めするためにもこの記事を執筆させて頂きました。
あくまでも1セッションに対するまとめ記事で、WindowsというOSの全てを網羅してるぜ...といった記事では無いのですが、もしよろしければご覧ください。
①Windows10との互換性
・デバイスドライバ関連
OSが変わると気にすることの1つとして、「10で使えていたあのデバイスは11でも使えるのか」といったものがありますね。
Microsoftの公式がWindows11用のDDI(デバイスドライバインターフェース)のコードをGitHubに公開しており、10から大規模なアップデートがあった場合はコミット履歴等から確認することができるそうですね。そこでオーディオ関連の部分を見てみると、
オーディオ関連のコードに約10000行の変更が加えられていることが分かります。どうやらAPO(オーディオ処理用ドライバ)にアップデートがあったそうです。
そしてなんと、10に対して大規模なアップデートが存在した部分はこれだけでした。少し細かい変更はいくつかあったようですが、オーディオ周りの部分以外は何も変わっていないので99%以上のドライバをWindows10以前から流用できるようです。
(その肝心のオーディオ部分ですが、このアップデートによってRealtek(オーディオチップメーカー)のドライバが一部使えなくなったりと、影響が出ているそうです。
参考:Windows 11 登場(その2:カーネルは変わったか?))
また、Windows11で使えるWindows用のデバイスドライバ開発環境ですが、こちらは以下のようになっております。
- Visual Studio 2019
- Windows 11 SDK(22000.1)
- Windows 11 WDK(22000.1)
Visual Studio 2022は現在ドライバ開発に対応していないそうですね。
ですが、上記のツールによってWindows7,8,8.1,10,11に対応したドライバをそれぞれ開発することができるそうです。「Windows7用のドライバを作りたいのでWindows7を用意するぜ」といったことは不要なので良いですね。
・アプリケーションの互換性
約84万個のアプリケーション(ゲームやその他諸々)をWindows11で評価し、約99.6%の互換性が確認されたそうです。つまり、Windows10で普段使いされているアプリはほとんど使えるということですね。
逆に互換性の確認がされていない例としては、
- Windows98以前の16bitのアプリ
- 一部のセキュリティ関連のアプリ
- 独特の挙動をし、まだWindows11から評価のされていない業務用アプリなど
があるそうです。
②WinUI 3について
WinUI 3は近年Microsoftが発表した「Fluent Design」というWindowsを対象としたデザイン言語のライブラリです(解釈が間違っていたらごめんなさい)。
.NET5 / 6でも使うことができ、Windows XP時代のC++とも互換性があるといった幅広いもののようです。
その中で今回のMS Buildで紹介されたのは「WinUI 3 Gallery」というアプリです。(Microsoft Store からインストールできます。 これはWindows10でも使えます。 )
WinUI3 Galleryではフォームやテキストボックス、カレンダーやスタイルなどアプリのデザインで使うWinUI 3の要素をギャラリーで見ることができるアプリです。
例えば↑の画像のように「Create Multiple Window」の要素を見てみると、XAMLとC#のサンプルコードをそれぞれ見ることができる他、サンプルコードの実行もできます。実際にCreate new Windowボタンを押してみると、
新しいウィンドウが出てきました。こうやって簡単にライブラリの内容を参照できたり実行してみたりできるのは嬉しいですね。
ただ、WinUI 3に対する知識が無く、このライブラリを使って実際にどうやってアプリを作っていくのかといったことは分かっておりません。。。ここの知識はまたアップデートして公開したいですね。
Fluent Designに対しては過去のTech Blogの記事がとても参考になりました!
(Build 2019でのFluent Designの発展)
③タスクバーの位置とウィジェット
デスクトップを一目で見て、「これはWindows11だ!」と分かる要素としてタスクバーがありますね。
これはmy new gear...である私のWindows11が入った個人用PCのタスクバーになります。
10と比べてWindowsアイコン含むタスクアイコンが中央揃えになっており、検索エリアも無くなっていますね。
そして虚無になった左側に新しく配置されたものが、前述のFluent Designを活用した「ウィジェット」になります。
実際にお天気が表示されている左側のアイコンをクリックすると、Edgeのホーム画面と同じようなニュースやお天気などの一覧が出てきます。
現在はまだ発表段階に至っていないそうですが、いずれはこのウィジェット部分のSDKを配布したり、サブディスプレイとして活用できるような機能を実装するそうです。楽しみですね。
④Insider Programに登録し、Windows11の未来を覗き見る
これに関しては私完全に無知だったのですが、WindowsにはInsider Programという、最新どころか未来の情報をいち早く見ることのできるコミュニティが存在しています。
そしてこのInsider Programは、更新段階によって以下の3つのチャンネルに分かれています。
・Preview - Windows10の次期リリース版、つまりWindows11の現リリース版。実際にリリースされた最新情報を見ることのできる場所
・Beta - 半年程度でリリース予定のWindows11専用機能を見ることのできる場所
・Dev - 新機能実験も含んだ、1年先も見据えた Windows11専用機能を見ることのできる場所
Windowsファンの方々がこの3つのチャンネルで最新機能を体験しレビューを行っていくことで、エンジニアの方々と共にWindowsの未来を形成していける訳ですね。(セッションで登壇されていた日高さんによると、是非Devを評価していって欲しいそうです)
ただし、BetaとDevのInsider Programに参加するには、以下のいずれかのセキュリティ要件が必要だそうです。
①TPM1.2以降のモジュールを搭載した上でセキュアブートを有効にする
②第2世代の仮想マシンでTPMを有効化したHyper-VのゲストOSから参加する
詳しい説明は省きますが、①はTPMという複数の機能を搭載したセキュリティモジュールを搭載し(1.2と2.0がありますが1.2で良いそうです。ただインストールには結局2.0が必要だそう...)、セキュアブートという強力なセキュリティ機能を有効化する方法で、②は日高さんが独自に編み出した裏技だそうです。
そして上記の要件を満たしてDev/BetaのInsider Programに登録し、インストールをすれば一足先にWindows11の未来に接触できます。これも実際に参加したわけでは無いのですが、いつかは参加からレビューまでやってみたいですね。
⑤フィードバックをしよう!
日高さん曰く、フィードバックは「滅多に無いOS開発参加の機会」だそうです。
今後もWindowsにて様々なアプリがリリース/アップデートされていきますが、その都度で触れたアプリに対するフィードバック(良い点・悪い点なんでも)を送信すると、Microsoftからお礼のメッセージを頂けることがあるそうです。嬉しいですね。
フィードバックを送信する方法ですが、「Win+f」キーを押すと、「フィードバックHub」が開きます。
これはWindows10と11で仕様が変わらないと思います。日本語でも送信が可能ですので、気になった点があればどしどし送ってみれば良いかもしれません。
まとめ
このセッションで、Windows11の仕様的な部分から新機能、将来を見据えた開発についてまで幅広く知ることができました。Windowsではあまり自由でクリエイティブなことはできないものだと勝手に思っていましたが、WinUI 3などを使って面白そうな開発もできるそうで楽しみですね。
当分の目標としては、業務用PCは壊さないように頑張る。買いたてほやほやの個人用PCはいっぱいいじって楽しむ。といったことです。