.NET Framerorkに不具合。XPSファイルが正常に表示されない。サポート中の全Windowsに影響 [Update 1: 修正を公開]

WindowsUpdate

Microsoft .NET Framework

Microsoftは、2022年12月14日に公開・配信した、.NET Framework用更新プログラムに既知の不具合があることを発表しました。

更新履歴 [記事初公開日: 2022/12/20]
① 記事下部に修正情報の項目を加筆 [2023/2/2] [New]

不具合概要

2022年12月14日にリリースされた.NET Framework用更新プログラム(2.0、3.0、3.5、3.5.1、4.6.2、4.7、4.7.1、4.7.2、4.8、4.8.1)をインストールすると、テーブル構造やStoryboard、ハイパーリンクなどを含むXPSドキュメント(XPSファイル)が、WPFベースのリーダーで正常に表示されない場合があります。

この不具合は、以下の更新プログラムに内包されており、サポート中の全OSに影響します。

  • Windows11 22H2
    KB5020880
  • Windows11 21H2
    KB5021090
  • Windows10 22H2
    KB5021089
  • Windows10 21H2
    KB5021088
  • Windows10 21H1
    KB5021087
  • Windows10 20H2
    KB5021086
  • Windows10 Enterprise LTSC 2019 (1809) / Windows Server 2019
    KB5021085
  • Windows 10 LTSB 2016 (1607) / Windows Server 2016
    KB5021235
    KB5020873
  • Windows10 LTSB 2015 (1507)
    KB5021243
  • Windows8.1 / Windows Server 2012 R2
    KB5021093 (ロールアップ)
    KB5021081 (セキュリティのみ)
  • Windows Server 2012
    KB5021092 (ロールアップ)
    KB5021080 (セキュリティのみ)
  • Windows7 SP1 ESU / Windows Server 2008 R2 SP1
    KB5021091 (ロールアップ)
    KB5021079 (セキュリティのみ)
  • Windows Server 2008
    KB5021094 (ロールアップ)
    KB5021082 (セキュリティのみ)
  • Azure Stack HCI 22H2
    KB5021084
  • Azure Stack HCI 21H2
    KB5021095

対処方法・回避策

この不具合の影響を受ける場合、Microsoftは以下の手順を実行するよう案内しています。

▼XPSドキュメントを正常に表示させる手順

  1. PowerShellスクリプトをダウンロードしてください。
  2. 管理者権限でPowerShellを開いてください。
  3. ダウンロードしたPowerShellスクリプトがあるディレクトリに移動してください。
  4. 以下のコマンドを入力し、エンターを押してください。
    .\kb5022083-compat.ps1 -Install
  5. これで正常にXPSドキュメントが表示されるようになるはずです。

何かしらの理由により、この回避策を実行する前の状態に戻したい場合は、『4』の手順で『.\kb5022083-compat.ps1 -Uninstall』と入力してエンターを押してください。

もし、上記手順で上手くいかない場合は、強化されたセキュリティのレジストリを無効化することでも回避できます。手順は以下。

▼強化されたセキュリティのレジストリを無効化してXPSドキュメントを正常に表示させる手順

  1. 管理者権限でコマンドプロンプトを開いてください。
  2. 以下のコマンドを入力し、エンターを押してください。
    reg add "HKLM\SOFTWARE\Microsoft\.NETFramework\Windows Presentation Foundation\XPSAllowedTypes" /v "DisableDec2022Patch" /t REG_SZ /d "*" /reg:64

注意点として、上記手順はセキュリティの強化が無効化されるため、すべてのXPSドキュメントが確実に信頼できるファイルである場合にのみ行うようMicrosoftは述べています。

元に戻すには、レジストリエディターを起動して([Windows] + [R]キーを押して『regedit』と入力してエンター)、『HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\Windows Presentation Foundation\』にある『XPSAllowedTypes』というキーを削除してください。

修正を公開 [2023/2/2] [New]

Microsoftは、この不具合を修正した定例外の.NET Framework用更新プログラムを公開しました。公開された更新プログラムはWindowsUpdateには降ってこず、Microsoft Updateカタログから手動でダウンロード・インストールする必要があります。本不具合にお困りの方は、Microsoftのページよりダウンロードをどうぞ。(リンク先ページ下部に各OS用の更新プログラムのリンクあり)

また、上記『対処方法・回避策』の対処を行っていた場合は、元に戻すのをお忘れなきようお気をつけください。

なお、2023年2月2日時点では.NET Framework 4.7.2、4.8、4.8.1用更新プログラムのみが公開されており、そのほかのバージョンはまだ公開されていません