Edited at

Windows10にオフライン環境で.NET Framework 1.1 および .NET Framework 3.5をインストールする


はじめに

Windows 7の延長サポート終了が2020年1月14日となっています。

そのため、既存アプリケーションのWindows 10の検証作業を行っています。

既存アプリケーションの中には、.NET Framework 1.1 を使用しているものがあります。

また、インターネット環境があれば.NET Framework 3.5 のインストールが簡単に出来るのですが、工場などインターネット環境が使用できないオフライン環境だとインストールが面倒なので、ここも少し書いていきます。

先程、調べたらWindows 7で2023年まで延ばせる方法もあるようですが、どちらかというと大企業向けかな。


2020年1月14日の延長サポート終了後、2023年1月までWindows 7のセキュリティ更新プログラムを受け取ることができるのが、「Windows 7 Extended Security Update(ESU)」というプログラム

Windows 7のサポートを2023年まで延ばせるって聞いたけど……



.NET Framework 1.1のインストール


Windows 8、Windows 8.1、Windows Server 2012、Windows Server 2012 R2、または Windows 10 に .NET Framework 1.1 を手動でインストールすることはできません。 サポート対象から除外されました。 パッケージをインストールしようとすると、「このバージョンの .NET Framework は以前にインストールしたバージョンと互換性がないため、セットアップを続行できません。」というエラー メッセージが表示されます。

Windows 8、Windows 8.1、または Windows 10 での .NET Framework 1.1 アプリの実行


上記サイト(microsoftの.NET Framework移行ガイド)には、そのように書かれているのですが、普通にインストールできました。

下記3つをダウンロードします。

もちろんダウンロード自体はネット環境があるところに行います。


Microsoft .NET Framework Version 1.1 再頒布可能パッケージ










Microsoft .NET Framework Version 1.1 日本語 Language Pack










Microsoft .NET Framework 1.1 Service Pack 1 のインストール








プログラムと機能


.NET Framework 3.5のインストール

残念ながらオフライン環境では下記サイトの実行ファイルは使用できません。

Microsoft .NET Framework 3.5 Service Pack 1 (フル パッケージ)

https://www.microsoft.com/ja-jp/download/details.aspx?id=25150


cabファイルの取得

Windows 10のインストールディスクが必要となります。

今だとISO自体は無料でダウンロードできます。※但し、英語版

Windows 10 のダウンロード - PC への Windows 10 のインストールをご希望ですか?

※ライセンスキーはWindows 10のインストール時にのみ必要ってだけ。

Windows 10 セットアップにて「別のPCのインストールメディアを作成する(USBフラッシュドライブ、DVD、またはISOファイル)」を選択します。自分は使用するメディアでISOファイルを選択しました。ISOファイルができたらマウントします。

【2019/08/27 追記】

64bitOSでWindows 10のインストールディスクの用意が出来ない場合、下記サイトの「こちら(70MB)」からも取得できます。

Windows 10 (1803) で、.NET Framework 3.5 のオフラインインストールができない


32bitの場合

sources/sxsフォルダから、下記ファイルをインストールしたいPCにコピーします。(例 C:\Temp直下)

microsoft-windows-netfx3-ondemand-package~31bf3856ad364e35~x86~~.cab


64bitの場合

sources/sxsフォルダから、下記ファイルをインストールしたいPCにコピーします。(例 C:\Temp直下)

日本語版はja-JPもあります、英語版はありません。

microsoft-windows-netfx3-ondemand-package~31bf3856ad364e35~amd64~~.cab

Microsoft-Windows-NetFx3-OnDemand-Package~31bf3856ad364e35~amd64~ja-JP~.cab


インストール

例 C:\Temp直下 に cabファイルをコピーした前提とします。

コマンドプロンプトを管理者権限で起動し、以下コマンドを実施

DISM /Online /Enable-Feature /FeatureName:NetFx3 /All /LimitAccess /Source:c:\Temp


実行結果

Microsoft Windows [Version 10.0.17763.503]

(c) 2018 Microsoft Corporation. All rights reserved.

C:\WINDOWS\system32>DISM /Online /Enable-Feature /FeatureName:NetFx3 /All /LimitAccess /Source:c:\Temp

展開イメージのサービスと管理ツール
バージョン: 10.0.17763.1

イメージのバージョン: 10.0.17763.503

機能を有効にしています
[==========================100.0%==========================]
操作は正常に完了しました。

C:\WINDOWS\system32>


確認

チェックが付いている。

一応、レジストリを確認する。

インストールされている全ての .NET Framework のバージョンを列挙する

C:\> for /f "usebackq tokens=*" %k in (`reg query "HKLM\SOFTWARE\Microsoft\NET Framework Setup\NDP"`) do @(reg query "%k" | find "Version")

Version REG_SZ 2.0.50727.4927
Version REG_SZ 3.0.30729.4926
Version REG_SZ 3.5.30729.4926

ターゲットフレームワークを .NET Framework 2.0 にした簡易アプリケーションを作成して起動することを確認。


メディア不要

上記ではWindows 10のメディアを使用していましたが、PowerShellだけで有効化が可能な情報がありました。

【Win10】メディア不要!!PowerShellで.NET Framework3.5の有効化


最後に

例えば工場などではインターネット環境を使用できずオフライン環境によるインストールが必要になったりします。

.NET Frameworkのターゲットを変えればほとんど問題なく動作するといっても、やはり検証が必要です。担当や開発した人がいなくなったアプリケーションだと検証が大変です。まだ、.NET Frameworkのターゲットを変えないで動作してくれた方がましだったりします。

そうそう、Windows XP は、.NET Framework 4.0までで改良版の.NET Framework 4.5以降はインストールすることが出来ないんですよね。

Windows XPや 2000に何故 .NET Framework 4.5が入らないか