Contents
結論 VSTOの.net5以降への対応はなし
(追記2021/9/30) 現在の時点での結論を言うと、VSTOの.net5以降への対応はありません。
詳しくは下記の「継続的に観察していたら。。」を参照下さい。
以下は、本記事作成~2021/07/05時点までの観察内容です。
観察し始めてだいぶなるけど。。
結論だけ言うと、MSFTさんまだかいなって話になるんですが。。
ずっと英語の資料も定点観測してますが、未だに対応しましたよって、お話はまった聞かないですね。外国の方もちょっとイラってきてんじゃないかと思うようなコメント満載です。
だってオワコンの.Net Frameworkに対応したきりしばらく音沙汰なしですから。将来性考えたら早い目に対応してくれた方が、作る側にとったら良いです。今から作るとすぐに移植とか考えないといけないし。。
流石にあんまり対応までの時間が長いと、ほんまにVSTOの.net 5 以降への対応とかやる気あんのかなぁと思ったりも。 「Officeアドインあるからいいじゃん!」ってはならないと思う。
MSFTさん、期待していますよ!とだけ、VSTOファンとしては申し上げておきます。
海外の反応も参考までに。。
自分のアドインたちで使ってるライブラリたちは?
一度この記事を全部書いてみて、そういえば自分で作成したVSTOアドインは.Net Framaworkだけで作成したわけではないなと思いだしてみた。自分で作ったアドインで使用しているライブラリの.net core対応状況は?どうなのかと思って調べてみた。
バーコード作成アドイン
Zxing.net 対応済を確認。(’21 04/23)
Suica/Icocaアドイン
PCSC 対応済を確認。 (’21 04/23)
NPOI 対応済を確認。 (’21 04/30)
自分のプロジェクトは .Net Framawork 4.6.1 でビルド & Visual Studio 2017
OCRアドイン
tesseract 対応済を確認。(’21 04/23)
自分のプロジェクトは .Net Framawork 4.7.2 でビルド & Visual Studio 2017
Phonetic アドイン
自分のプロジェクトは .Net Framawork 4.7.2 でビルド & Visual Studio 2017
他は、ほんとに .Net FrameworkとC#でゴリゴリ作成しているだけなので、外堀の移植はOKなのを確認できた。
ちなみに何の話か分からん人のために
当ブログで無料公開しているアドインは全てVSTO/C#/.net frameworkで作成したアドインです。
この.Net Frameworkが バージョン 4.8 であること、後継は .net core 3 / .net 5 であることも MSFT(Microsoft)から宣言されております。
ところが、VSTOは現在 .net framework 4.8対応のまま止まってしまったまま。。
オワコンの .Net Framework まででほったらかしにするなんて、VSTOで仕事とってきたりするのに、新しい案件とか考えると.net coreで正式に対応しますってアナウンスだけでも欲しいわ。ってのが、VSTOで仕事とってきたりする人の心境かと。
当ブログは趣味の範囲なので、まぁあれなのですが、そうじゃない人にとったら一大事だったりするよねという話。
最近は当ブログの管理人もJavascriptもちょっと勉強して、出来なくはないのですが、Microsoftが対応しないとなったら色々と頑張って勉強しないといけなくなっちゃうので、Microsoftの偉いエンジニアさんに頑張ってほしい今日この頃です。(2021/04/23)
.Net Frameworkのサポート期限
NET Framework 4.5.2、4.6、4.6.1、2022年4月26日にサポート終了
参考リンク
Office Addinについて
COM / VSTO (PIA)と異なり、Html やJavascriptで作成するアドインです。
Windows, Macパソコンのブラウザ版のExcel,Word,Power Point (他のOfficeソフト)にインストールできるところはメリットです。
インストール版のExcel, Word, PPT(他のOfficeソフト)にもインストールできそう。
Excel アドインを使用すると、Windows、Mac、iPad、ブラウザーなどの複数のプラットフォームで Excel アプリケーションの機能を拡張できます。
https://docs.microsoft.com/ja-jp/office/dev/add-ins/excel/excel-add-ins-overview
一方で、Html やJavascriptで記述しないと行けないので、今までの言語(C#)・マシンパワーが必要な処理・またインストール版のExcel,Word,Power Point (他のOfficeソフト)とは別の開発が必要になります。(残念。。)
一応、VSTOアドイン開発者向け移行ガイドみたいなものがありまして、移していってねことなのかと勝手に考えてます。
継続的に観察していたら。。
一番初めに上げたGitHubのIssueが”AaronRobinsonMSFT”さんのコメントで閉じられていて、個人的にはちょっと悲しい感じでした。(Microsoftの社員さんのコメントですがAaronさんもちょっと悲しいのかもです。)
以下意訳で引用。2021/06/03にコメントされています。
コメントに感謝。他のフォーラムでのフィードバックを受けて、皆さんに情報をアップデートします。
https://github.com/dotnet/core/issues/5156#issuecomment-853430132
VSTO/COM Add-Insは Microsoftにとって非常に重要なものです。最後のメジャーバージョンとしての.NET Framework 4.8とともに、OfficeのなかでVSTO/COM Add-Insのサポートを継続していく計画です。ですので、あなたがメンテしている既存の .NET Frameworkソリューションがあるなら、 .NET Core と .NET 5+に移行する必要はありません。両方のサービス(VSTO/COM)を継続しますし、.NET Framework(4.8)はサポートしていく予定です。詳細はこちらを参照。
一方で、VSTO/COM Add-Insは.NET Core と .NET 5+で作成されることはできません。というのも、同じプロセスの中で.NET Core/.NET 5+と.NET Frameworkが一緒に働くことができないからです。それをしてしまうと、アドインのロードに失敗してしまうからです。
なので、Microsoftは .NET Core/.NET 5+を使用したVSTO や COM アドインのプラットフォームのアップデートを行って行かないでしょう。 .NET Core と .NET 5+ (ASP.NET Core を含む) を利用して、Office Web アドインのサーバー側を作成できます。
https://github.com/dotnet/core/issues/5156#issuecomment-853430132
もう一度いいますが、VSTO/COM Add-Insプラットフォームの開発者の情熱に感謝します。そして、COM/VSTOアドインプラットフォームのサポートを継続していくでしょう。
https://github.com/dotnet/core/issues/5156#issuecomment-853430132
Aaronさんの個人の前後のコメント以外は、ここの一番初めの「重要」と書かれている部分に書かれたものと同じですね。
対しての、ユーザーの反応は 2021/07/05 時点で以下の様子。
まぁ。。。でしょうな。。個人的には悲しさも相まってます。
そんなこんなしてたら。。Win11言うてますが。。
Win11では、.NET Framework 4.8の対応状況等はまだ分かりませんので、何とも言えない状況になっております。
という状況でもう一度、自分のアドインたちの今後の戦略
基本戦略は .Net framework 4.8まで上げて、各アドイン達を延命しておくことですね。
その他の戦略としては、.Net Core/ .Net 5+以降に対応したデスクトップアプリに鞍替えしてしまう案もありかも。
バーコード作成アドイン
Zxing.net は4.7までの対応済を確認。(’21 07/15)
自分のやること
Zxing.netにあわせて、.Net framework 4.7までは対応しておく。Nugetみてると .Net framework 4.8も行けそうな。。
ということで、.Net framework 4.8までテストしておく。単体テストも通るか確認。
あわせて、カスタマーバーコードの対応もしておく。あと長いバーコード対応。
Suica/Icocaアドイン
PCSC は4.8まで対応済を確認。 (’21 04/23)
NPOI は4.5までの対応済を確認。 (’21 04/30)
自分のプロジェクトは .Net Framawork 4.6.1 でビルド & Visual Studio 2017
自分のやること
NPOIは4.5までと言っているが、自身のプロジェクト.Net Framawork 4.6.1までいけているので、.Net Framawork 4.8まで対応できるかのテストをしてみる。単体テストも通るか確認。
OCRアドイン
tesseract 対応済を確認。(’21 04/23)
自分のプロジェクトは .Net Framawork 4.7.2 でビルド & Visual Studio 2017
自分のやること
tesseratは4.5までと言っているが、自身のプロジェクトは.Net Framawork 4.7.1までいけているので、.Net Framawork 4.8まで対応できるかのテストをしてみる。単体テストも通るか確認。
Phonetic アドイン
自分のプロジェクトは .Net Framawork 4.7.2 でビルド & Visual Studio 2017
自分のやること
ゴリゴリ自作している部分が.Net Framawork 4.8に対応しているか、単体テストを走らせたりして対応してみる。