はつねの日記

Kinect, Windows 10 UWP, Windows Azure, IoT, 電子工作

そろそろ.NET 5のWindows OS動作環境をまとめておこう

2021年5月現在、サポート対象となっている.NET (.NET Core) のバージョンは、.NET Core 2.1、.NET Core 3.1、.NET 5です。

Windows クライアント 動作OS

それらがサポートしているWindows クライアント OSとしては次のものがあります。

Windows 7で注意しなければならないのは、SP1定期済であり、また、通常サポートも終了(2020年1月14日)しているので拡張セキュリティ更新プログラム (ESU) が適用されていることです。
docs.microsoft.com
ESUは最大3年の施策ですから、2023年1月14日にはWindows 7 SP1自体のOSとしてのサポートも終わります。
Windows 8.1のサポート終了が2023年1月10日ですので、あと約2年くらいでWindows 10にWindows OSを1本化できる世界線がやってきます。

.NET 6 のWindows動作OS

github.com
リリースノートによれば、.NET 6についても同様にWindows クライアントOSについては、

となっています。
.NET 6はプレビュー版ですが、.NET 5で簡単なWPFアプリなどを作成しておいて、配布先で動作するかをためしておくと.NET 6がGA (正式リリース) されたときの移行もスムーズかもしれませんね。

.NET 5アプリを動作させる上でのその他の注意点

Windows 7では更に次の2つもインストールされている必要があります。

Windows 8.1では次のものがインストールされている必要があります。

  • Microsoft Visual C++ 2015-2019再配布可能パッケージ

Microsoft Build 2021前夜祭に登壇します

azurerockstar.connpass.com

日本時間で2021/05/26の深夜から始まるMicrosoft Build 2021の前夜祭のイベントに登壇することになりました。

  1. 22:30 Buildのアップデートを先取り! 「Book of News」を見ながらトーク
  2. 24:00 日本語解説付きMicrosoft Build 2021基調講演ライブビューイング

2021/05/26 22:30からは、build 2021の直前情報をほかのパネリストの方と一緒にご紹介します。
また、24時、つまり5/7の0時からは基調講演の副音声として、これまた他のパネリストの人と基調講演をみながらあれこれしゃべっちゃいます。

ぜひぜひ、基調講演が始まるまでの眠気覚ましとしてもご活用いただければと思います!
register.build.microsoft.com

Build自体をよりお楽しみいただくために、ぜひ、build 2021の事前参加登録もよろしくお願いいたします。
register.build.microsoft.com

AzureのComputer VisionについてMicrsoft Learnをやってみた

Microsoft Learnは、マイクロソフトさんが用意してくれているマイクロソフト技術を学べるオンラインコンテンツです。
日本語化もどんどんされていて、解説+確認テストという感じで進められます。
テキストアドベンチャーゲームっぽく進んでいるとEXPもらえるなどなかなか楽しいです。

内容も画面スナップショットがおおいですし、試すための具体的なコードも書かれているので、Azureを使って実際に試しながら理解を深めることができます。
Azure Subscription自体は無料で取得できます(クレジットカードの登録は必要)、機能によっては月利用上限付きの無料枠があるので、意外と無料で色々試すことができます。無料枠こえたときは自動的に止まるので意図せず課金ってこともありません。

Computer Visionで言えば、どういった機能があって、その機能を使うためにはどのようなことをしないといけないかなどが順序だてて学ぶことができました。Computer Visionからかえってくる結果などもわかりやすく掲載されているのがよいですね。

自分が学んだおすすめコンテンツをコレクションとしてまとめておいて紹介することもできますので、Computer Vision関連をまとめておきました。
プロファイル | Microsoft Docs

Visual Studio 2022がやってくる!

devblogs.microsoft.com
Visual Studio 2022の最初のパブリックプレビューは今年の夏に登場するようです。
2022ってことなのでGAは来年の様ですね。
2013→2015→2017→2019となって2021かと思いましたが2022のようです。

ここに期待

  1. ついに64bitアプリになります。
  2. .NET 6アプリがつくれる
  3. Visual Studio for Mac がネイティブ macOS UI に移行される
  4. LiveShareにチャットが追加される

はやく使いたいですね。

iOSアプリの開発環境の2台目を設定する

Xamarin.Formsを使ってiOSアプリを作っています。
Windows上でVisual Studio 16.9を使って作成して、Visual Studio for Macが入ったMacMiniとペアリングしてビルドするような開発環境となっています。
docs.microsoft.com

今月、ちょっとした事情(主に在宅勤務時に自宅で実機デバッグができるように)2台目の開発用MacMiniを入手しました。
もちろんM1 MacMiniです。

さて、ここで悩んだのが1台目と同じビルド結果となるように2台目に設定するのかということです。
1台目の開発環境を作る方法は、いろいろなblogに書かれているのですが、その作った環境と同じものを2台目として作る方法がよくわからない。。。
下手にやって1台目の環境でアプリがビルドできなくなったらストア公開しているものが更新できなくなったら本末転倒ですからね、どうしても慎重になってします。

悩んで「なんもわからーん」とホロラボ社内に聞いてみたら、即回答もらえました。
事前に1台目のApple開発者アカウントを2台目にも設定してあれば、残る手順は以下の通り。

  1. 1台目のキーチェーンでDistribution証明書とDeveloper証明書からそれぞれ「書き出す」でp12ファイルを作成
  2. 2台目にp12ファイルをコピーしてダブルクリックでキーチェーンに登録

なんとこれだけで良かったみたい。
簡単でした。

nupakファイルからインストールする

nugetとは

docs.microsoft.com
nugetは、Microsoftがサポートする.NET/.NET Coreのコード共有手段です。ライブラリなどの依存性なども記述できるので、ある機能のライブラリを使いたいときにnugetから取得することで必要な関連ライブラリなども入手することができます。

nupakファイルについて

nugetには、nupakファイルが登録されています。nupakファイルの構造は、zipファイルになっていますので、nupakファイルの拡張子をzipに変更することで内容をみることができます。
libフォルダには目的のライブラリのバイナリファイルが格納されていますが、その他、様々な情報が格納されています。

nugetとからライブラリを適用する

通常、nugetでライブラリを適用する場合、パッケージソース=nuget.orgを指定して適用したいライブラリを参照から探して適用します。
f:id:hatsune_a:20210326090843p:plain
[プレリリースを含める]にチェックすればプレビュー版なども適用できるので便利です。
ライブラリ開発側もアップデートの配布やプレビュー配布なども自分で行わなう手間が省けてよいですね。

nuget.org以外からのライブラリ適用について

しかし、プライベートに配布したい場合はどうしたらいいのでしょうか。
そのためには、nugetに登録するnupakファイルを作成したら、そのファイル自体をプライベート適用してもらいたい人に配布する(例えば、githubのprivateリポジトリや、Teamsのプライベートチャネルなどを使ってもいいでしょう)方法となります。

では、nupakファイルをもらった側はどうしたらVisual Stduioのプロジェクトに組み込むことができるでしょうか。
当然、Visual Studioのプロジェクトでnugetパッケージの管理を開いてもローカルにあるnupakファイルは参照対象にはなりません。
ローカルにあるnupakファイルを参照するためには、Visual Studioでnugetの参照先としてローカルフォルダを追加する必要があります。

パッケージソースを追加

Visual Studioで[ツール]-[NuGetパッケージマネージャー]-[パッケージマネージャー]メニューを選択します。
f:id:hatsune_a:20210326092558p:plain

左上の[+]ボタンをクリックして、追加されたパッケージソースの参照先としてnupakファイルを格納したフォルダを指定します。
f:id:hatsune_a:20210326092746p:plain

あとは、該当のプロジェクトのnugetパッケージ管理で、パッケージソースを「すべて」にしてあげると、参照の中にローカルに保存したnupakファイルも含まれるようになります。
f:id:hatsune_a:20210326093220p:plain

nupakファイルからインストールする

nugetとは

docs.microsoft.com
nugetは、Microsoftがサポートする.NET/.NET Coreのコード共有手段です。ライブラリなどの依存性なども記述できるので、ある機能のライブラリを使いたいときにnugetから取得することで必要な関連ライブラリなども入手することができます。

nupakファイルについて

nugetには、nupakファイルが登録されています。nupakファイルの構造は、zipファイルになっていますので、nupakファイルの拡張子をzipに変更することで内容をみることができます。
libフォルダには目的のライブラリのバイナリファイルが格納されていますが、その他、様々な情報が格納されています。

nugetとからライブラリを適用する

通常、nugetでライブラリを適用する場合、パッケージソース=nuget.orgを指定して適用したいライブラリを参照から探して適用します。
f:id:hatsune_a:20210326090843p:plain
[プレリリースを含める]にチェックすればプレビュー版なども適用できるので便利です。
ライブラリ開発側もアップデートの配布やプレビュー配布なども自分で行わなう手間が省けてよいですね。

nuget.org以外からのライブラリ適用について

しかし、プライベートに配布したい場合はどうしたらいいのでしょうか。
そのためには、nugetに登録するnupakファイルを作成したら、そのファイル自体をプライベート適用してもらいたい人に配布する(例えば、githubのprivateリポジトリや、Teamsのプライベートチャネルなどを使ってもいいでしょう)方法となります。

では、nupakファイルをもらった側はどうしたらVisual Stduioのプロジェクトに組み込むことができるでしょうか。
当然、Visual Studioのプロジェクトでnugetパッケージの管理を開いてもローカルにあるnupakファイルは参照対象にはなりません。
ローカルにあるnupakファイルを参照するためには、Visual Studioでnugetの参照先としてローカルフォルダを追加する必要があります。

パッケージソースを追加

Visual Studioで[ツール]-[NuGetパッケージマネージャー]-[パッケージマネージャー]メニューを選択します。
f:id:hatsune_a:20210326092558p:plain

左上の[+]ボタンをクリックして、追加されたパッケージソースの参照先としてnupakファイルを格納したフォルダを指定します。
f:id:hatsune_a:20210326092746p:plain

あとは、該当のプロジェクトのnugetパッケージ管理で、パッケージソースを「すべて」にしてあげると、参照の中にローカルに保存したnupakファイルも含まれるようになります。
f:id:hatsune_a:20210326093220p:plain