Visual Basic 中学校 掲示板 投稿内容
タグのない投稿を抽出 統計 RSS

Visual Basic 中学校 > 投稿一覧 >

ランタイムの選択(.Net Framework)

タグの編集...

投稿者 N88-Basic   (社会人)   投稿日時 2022/4/29 18:39:58
Visual Stusio 2019 を利用中に、今後のサポートが無くなるとのメッセージが表示され、Visual Stusio 2022 に移行タイミングを計っていたので、これを契機に導入することになり、各ソースの整理を含めて移行作業を行っていたところ、.Net FrameWork も 4.6.2 以降に絞られるとの情報を得たのですがこのあたりは全く気にしたことが無かったので、 4.6.2 にすべきか 4.8 判断できない状態です。

そこで、お教えいただきたいのは、どちらを採用するにしても、開発マシン以外の Windows 10 マシン上で特別な処置が必要かどうかをお教えいただければと思います。

一応、数値が大きい 4.8 がいいと単純に考えています。

ただ、4.8でコンパイルしたアプリが実行時に Defender に引っ掛かり、4.8 の影響かなと感じたのですが、その後に Windows Update で更新があったのと、Visual Stusio 2022 にも Defender に引っ掛かった後日にアップデートがあり、再コンパイルで Defender で引っ掛からなくなりました。ただ、4.8 か Visual Stusio 2022 の関係かがわからず、別箇所にあるターゲットマシンの .Net FrameWork の状況がつかめていません(コントロールパネルには出ないのですね)ので、4.8 への移行に少し躊躇しています。

以上、よろしくお願いします。

投稿者 魔界の仮面弁士   (社会人)   投稿日時 2022/4/30 00:11:28
> .Net FrameWork も 4.6.2 以降に絞られるとの情報を得たのですが

Visual Studio 2022 で開発できる .NET Framework のバージョンは
4.6.2 / 4.7 / 4.7.1 / 4.7.2 / 4.8 に限られます。

たとえば、Windows 10 Enterprise LTSB 2015 (サポート期限は2025/10/14) に搭載されている
.NET Framework バージョンは 4.6 ですので、4.6.1 以前の出番が無くなったわけではありません。
そのため、4.6.1 以前の開発を行いたい場合においては、VS2012~VS2019 以下が
必要になる事も一応ありえるのですが、それは稀なケースですね。


> 一応、数値が大きい 4.8 がいいと単純に考えています。

4.8 をインストールできない事情がある場合…たとえば、無停止運用中の Windows Server を
使っている場合や、Windows 10 LTSB / LTSC などにおいては、あえて 4.7.2 以下が
ターゲットとして選択されることもあります。しかし 【クライアント OS】向けに
新規開発するのであれば、現時点では .NET Framework 4.8 一択と言えます。

まぁ、開発時点では 4~4.7.2 をターゲットとして開発していたとしても、
そのアプリを 4.8 のランタイムで動作させることは可能ですが…だからといって
あえて古いバージョンを新規開発時のターゲットとする機会は少ないでしょう。


> Defender に引っ掛かり
どのウィルス対策ソフトを使っていたとしても、誤検知されることはあります。
それこそ、5分前はコンパイルできた同じソースでも、突然検出されてしまうことがありますし。
(なぜか、アセンブリ名を変更するだけでコンパイルできるようになったりすることも…)

自作ソフトなのであれば、コンパイル時に除外設定するなどして対処しましょう。

投稿者 (削除されました)   ()   投稿日時 2022/4/30 00:14:06
(削除されました)

投稿者 魔界の仮面弁士   (社会人)   投稿日時 2022/4/30 00:47:15
蛇足とは思いますが、 .NET Framework のサポート状況をまとめておきます。

•.NET Framework 1.0/1.1/2.0/3.0/4/4.5/4.5.1 のサポートは終了しています。
•.NET Framework 3.5 Service Pack 1 および 4.5.2/4.6/4.6.1/4.6.2/4.7/4.7.1/4.7.2/4.8 の
 サポート期間は、各 OS のサポート期間までです。
•下記の各 OS は、.NET Framework 3.5 (Service Pack 1) もサポートしています。
 (ただし最近の OS では、初期状態では有効化されていないことが多いです)

Windows Server 2019  (2029/01/09 期限) → 4.7.2 がプリインストール/4.8   まで更新可能
Windows Server 2016  (2027/01/11 期限) → 4.6.2 がプリインストール/4.8   まで更新可能
Windows Server 2012R2(2023/10/10 期限) → 4.5.1 がプリインストール/4.8   まで更新可能
Windows Server 2012  (2023/10/10 期限) → 4.5   がプリインストール/4.8   まで更新可能
Windows Server 2008 R2      (期限切れ) → 3.5SP1がプリインストール/4.8   まで更新可能
Windows Server 2008         (期限切れ) → 3.5   がプリインストール/4.5.2 まで更新可能

Windows 11 ver 21H2  (2023/10/10 期限) → 4.8   がプリインストール
Windows 10 ver 21H2  (2023/06/13 期限) → 4.8   がプリインストール
Windows 10 ver 21H1  (2022/12/13 期限) → 4.8   がプリインストール
Windows 10 ver 20H2  (2022/05/10 期限) → 4.8   がプリインストール
Windows 10 ver 2004         (期限切れ) → 4.8   がプリインストール
Windows 10 ver 1903/1909    (期限切れ) → 4.8   がプリインストール
Windows 10 ver 1803/1809    (期限切れ) → 4.7.2 がプリインストール/4.8   まで更新可能
Windows 10 ver 1709         (期限切れ) → 4.7.1 がプリインストール/4.8   まで更新可能
Windows 10 ver 1703         (期限切れ) → 4.7   がプリインストール/4.8   まで更新可能
Windows 10 ver 1607         (期限切れ) → 4.6.2 がプリインストール/4.8   まで更新可能
Windows 10 ver 1511         (期限切れ) → 4.6.1 がプリインストール/4.6.2 まで更新可能
Windows 10 ver 1507(RTM)    (期限切れ) → 4.6   がプリインストール/4.6.2 まで更新可能
Windows 8.1          (2023/01/10 期限) → 4.5.1 がプリインストール/4.8   まで更新可能
Windows 8                   (期限切れ) → 4.5   がプリインストール/4.6.1 まで更新可能
Windows 7                   (期限切れ) → 3.5.1 がプリインストール/4.8   まで更新可能
Windows Vista               (期限切れ) → 3.0   がプリインストール/4.6   まで更新可能


投稿者 N88-BASIC   (社会人)   投稿日時 2022/5/1 06:30:21
魔界の仮面弁士 さん、ご連絡ありがとうございます。

>新規開発するのであれば、現時点では .NET Framework 4.8 一択と言えます。
 新規開発ではありませんが、Visual Basic 2022 ではターゲットを選べるようですので、4.8 にて進めていきます。

>「.NET Framework のサポート状況のまとめ」
 非常に参考になります。特に、Windows 10 と Windows 11 には、4.8 がインストール済みであることがわかりましたので、4.8 で両バージョンのWindowsに対応できるとのことで、Windows 11 の導入も安心してできます。

また、Defender における動作の件も、参考になりました。

今後ともよろしくお願いいたします。

投稿者 魔界の仮面弁士   (社会人)   投稿日時 2022/5/1 11:29:21
追加情報。

> •.NET Framework 1.0/1.1/2.0/3.0/4/4.5/4.5.1 のサポートは終了しています。
> •.NET Framework 3.5 Service Pack 1 および 4.5.2/4.6/4.6.1/4.6.2/4.7/4.7.1/4.7.2/4.8 の
>  サポート期間は、各 OS のサポート期間までです。

確認したところ、4.5.2/4.6/4.6.1 も、サポート終了になっていました。
https://forest.watch.impress.co.jp/docs/news/1405588.html

実質的な選択肢は、 3.5SP1/4.6.2/4.7/4.7.1/4.7.2/4.8 に限られますね。
まぁ 4.8 で良いとは思いますが。