VSTOの.net 5 以降 対応はいつ?

VSTO
スポンサーリンク
スポンサーリンク

結論 VSTOの.net5以降への対応はなし

(追記2021/9/30) 現在の時点での結論を言うと、VSTOの.net5以降への対応はありません。

詳しくは下記の「継続的に観察していたら。。」を参照下さい。

以下は、本記事作成~2021/07/05時点までの観察内容です。

観察し始めてだいぶなるけど。。

結論だけ言うと、MSFTさんまだかいなって話になるんですが。。

ずっと英語の資料も定点観測してますが、未だに対応しましたよって、お話はまった聞かないですね。外国の方もちょっとイラってきてんじゃないかと思うようなコメント満載です。

だってオワコンの.Net Frameworkに対応したきりしばらく音沙汰なしですから。将来性考えたら早い目に対応してくれた方が、作る側にとったら良いです。今から作るとすぐに移植とか考えないといけないし。。

流石にあんまり対応までの時間が長いと、ほんまにVSTOの.net 5 以降への対応とかやる気あんのかなぁと思ったりも。 「Officeアドインあるからいいじゃん!」ってはならないと思う。

MSFTさん、期待していますよ!とだけ、VSTOファンとしては申し上げておきます。

海外の反応も参考までに。。

VSTO with .NET Core 3.0
I was wondering if the VSTO works on the new .NET Core 3 which supports COM Objects. A Project can be created with .Net Framework and then migrate it to .NET Co...
.Net 5 and further VSTO · Issue #5156 · dotnet/core
Are there any plans for including VSTO or similar framework supporting .Net 5 and up? The rationale for this is obviously the ability of using future .NET funct...

自分のアドインたちで使ってるライブラリたちは?

一度この記事を全部書いてみて、そういえば自分で作成した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日にサポート終了

参考1 Microsoft 主要製品ライフサイクル

参考リンク

.NET Coreとは? 開発環境(SDKとVisual Studio Code)のインストール
C#による.NET Core入門(1)。クロスプラットフォームで開発できる.NET Coreの基礎から開発実践までが学べる入門連載スタート。初回は.NET Coreの歴史/立ち位置/特徴を紹介し、開発環境の準備方法を説明する。
https://www.infoq.com/jp/news/2020/12/microsoft-releases-dotnet-5/

Office Addinについて

COM / VSTO (PIA)と異なり、Html やJavascriptで作成するアドインです。

Windows, Macパソコンのブラウザ版のExcel,Word,Power Point (他のOfficeソフト)にインストールできるところはメリットです。

Office アドイン プラットフォームの概要 - Office Add-ins
HTML、CSS、JavaScript などの一般的な Web テクノロジを使用し、Word、Excel、PowerPoint、OneNote、Project、Outlook を拡張および対話操作できます。

インストール版の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アドイン開発者向け移行ガイドみたいなものがありまして、移していってねことなのかと勝手に考えてます。

OFFICE Web アドインに関する VSTO アドイン開発者ガイド - Office Add-ins
熟練した VSTO アドイン開発者に向けた Office Web アドイン学習リソースへの推奨パス。

継続的に観察していたら。。

一番初めに上げた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さんの個人の前後のコメント以外は、ここの一番初めの「重要」と書かれている部分に書かれたものと同じですね。

VSTO アドインのプログラミングの概要 - Visual Studio (Windows)
VSTO アドインを使用して、Microsoft Office アプリの自動化、アプリケーションの機能の拡張、アプリケーションのユーザー インターフェイスのカスタマイズを行います。

対しての、ユーザーの反応は 2021/07/05 時点で以下の様子。

まぁ。。。でしょうな。。個人的には悲しさも相まってます。

そんなこんなしてたら。。Win11言うてますが。。

Win11では、.NET Framework 4.8の対応状況等はまだ分かりませんので、何とも言えない状況になっております。

Windows 11に関するまとめ

という状況でもう一度、自分のアドインたちの今後の戦略

基本戦略は .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に対応しているか、単体テストを走らせたりして対応してみる。

タイトルとURLをコピーしました