方法: インストールされている NET Framework セキュリティ更新プログラムおよび修正プログラムを確認するHow to: Determine which .NET Framework security updates and hotfixes are installed

この記事では、コンピューターにインストールされている NET Framework セキュリティ更新プログラムおよび修正プログラムを確認する方法について説明します。This article shows you how to find out which .NET Framework security updates and hotfixes are installed on a computer.

注意

この記事で紹介する手法にはすべて、管理特権が与えられたアカウントが必要になります。All the techniques shown in this article require an account with administrative privileges.

レジストリを利用し、インストールされている更新プログラムを見つけるTo find installed updates using the registry

コンピューターにインストールされている .NET Framework のバージョンごとのインストール済みのセキュリティ更新プログラムおよび修正プログラムは、Windows レジストリに一覧表示されます。The installed security updates and hotfixes for each version of the .NET Framework installed on a computer are listed in the Windows registry. レジストリ エディター (regedit.exe) プログラムを使用して、この情報を表示することができます。You can use the Registry Editor (regedit.exe) program to view this information.

  1. プログラム regedit.exe を開きます。Open the program regedit.exe. Windows 8 以降のバージョンでは、[スタート] Windows ロゴを右クリックし、[ファイル名を指定して実行] を選択します。In Windows 8 and later versions, right-click Start Windows logo, then select Run. [開く] ボックスに「regedit」と入力し、[OK] を選択します。In the Open box, enter regedit and select OK.

  2. レジストリ エディターで、次のサブキーを開きます。In the Registry Editor, open the following subkey:

    HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Updates

    インストールされている更新プログラムは、適用された .NET Framework バージョンを識別するサブキーの下に一覧表示されています。The installed updates are listed under subkeys that identify the .NET Framework version they apply to. 各更新プログラムは、サポート技術情報の (KB) 番号で識別されます。Each update is identified by a Knowledge Base (KB) number.

レジストリ エディターでは、各バージョンの .NET Framework バージョンとインストールされている更新プログラムが別々のサブキーに格納されます。In the Registry Editor, the .NET Framework versions and installed updates for each version are stored in different subkeys. インストールされているバージョン番号の詳細については、「方法: インストールされている .NET Framework バージョンを確認する」を参照してください。For information about detecting the installed version numbers, see How to: Determine which .NET Framework versions are installed.

コードでレジストリにクエリを実行し、インストールされている更新プログラムを見つけるTo find installed updates by querying the registry in code

次の例では、コンピューターにインストールされている .NET Framework セキュリティ更新プログラムおよび修正プログラムをプログラミングによって判断します。The following example programmatically determines the .NET Framework security updates and hotfixes that are installed on a computer:

using System;
using Microsoft.Win32;

public class GetUpdateHistory
{
    public static void Main()
    {
        using (RegistryKey baseKey = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry32).OpenSubKey(@"SOFTWARE\Microsoft\Updates"))
        {
            foreach (string baseKeyName in baseKey.GetSubKeyNames())
            {
                if (baseKeyName.Contains(".NET Framework"))
                {
                    using (RegistryKey updateKey = baseKey.OpenSubKey(baseKeyName))
                    {
                        Console.WriteLine(baseKeyName);
                        foreach (string kbKeyName in updateKey.GetSubKeyNames())
                        {
                            using (RegistryKey kbKey = updateKey.OpenSubKey(kbKeyName))
                            {
                                Console.WriteLine("  " + kbKeyName);
                            }
                        }
                    }
                }
            }
        }
    }
}

Imports Microsoft.Win32

Public Class GetUpdateHistory
    Public Shared Sub Main()
        Using baseKey As RegistryKey = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry32).OpenSubKey("SOFTWARE\Microsoft\Updates")
            For Each baseKeyName As String In baseKey.GetSubKeyNames()
                If baseKeyName.Contains(".NET Framework") Then
                    Using updateKey As RegistryKey = baseKey.OpenSubKey(baseKeyName)
                        Console.WriteLine(baseKeyName)
                        For Each kbKeyName As String In updateKey.GetSubKeyNames()
                            Using kbKey As RegistryKey = updateKey.OpenSubKey(kbKeyName)
                                Console.WriteLine("  " & kbKeyName)
                            End Using
                        Next
                    End Using
                End If
            Next
        End Using
    End Sub
End Class

この例では次のような出力が生成されます。The example produces an output that's similar to the following one:

Microsoft .NET Framework 4 Client Profile
  KB2468871
  KB2468871v2
  KB2478063
  KB2533523
  KB2544514
  KB2600211
  KB2600217
Microsoft .NET Framework 4 Extended
  KB2468871
  KB2468871v2
  KB2478063
  KB2533523
  KB2544514
  KB2600211
  KB2600217

PowerShell でレジストリにクエリを実行し、インストールされている更新プログラムを見つけるTo find installed updates by querying the registry in PowerShell

次の例では、PowerShell を利用し、コンピューターにインストールされている .NET Framework セキュリティ更新プログラムおよび修正プログラムを判断する方法を示します。The following example shows how to determine the .NET Framework security updates and hotfixes that are installed on a computer using PowerShell:

$DotNetVersions = Get-ChildItem HKLM:\SOFTWARE\WOW6432Node\Microsoft\Updates | Where-Object {$_.name -like
 "*.NET Framework*"}

ForEach($Version in $DotNetVersions){
    
   $Updates = Get-ChildItem $Version.PSPath
    $Version.PSChildName
    ForEach ($Update in $Updates){
       $Update.PSChildName
       }
}

この例では次のような出力が生成されます。The example produces an output that's similar to the following one:

Microsoft .NET Framework 4 Client Profile
KB2468871
KB2468871v2
KB2478063
KB2533523
KB2544514
KB2600211
KB2600217
Microsoft .NET Framework 4 Extended
KB2468871
KB2468871v2
KB2478063
KB2533523
KB2544514
KB2600211
KB2600217

関連項目See also