インストールされている Microsoft .NET Framework のバージョンおよび Service Pack のレベルを確認する方法

レジストリを見る


.NET Framework Service Pack のレベル レジストリ キー名
4.6.2 元のリリース
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Client
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full
名前: リリース

種類: REG_DWORD

データ :
  • Windows 10 Anniversary Update の場合: 394802
  • 他のすべての OS バージョンの場合: 394806
4.6.1 元のリリース
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Client
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full
名前: リリース

種類: REG_DWORD

データ :
  • Windows 10 Anniversary Update システムの場合: 394254
  • 他のすべての OS バージョンの場合: 394271
4.6 元のリリース
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Client
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full
名前: リリース

種類: REG_DWORD

データ :
  • Windows 10 更新プログラムの場合: 393295
  • 他のすべての OS バージョンの場合: 393297
4.5.2 元のリリース
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Client
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full
名前: リリース

種類: REG_DWORD

データ : 379893
4.5.1 元のリリース
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Client
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full
名前: リリース

種類: REG_DWORD

データ :
  • Windows 8.1 または Windows Server 2012 R2 の場合: 378675
  • Windows 8、Windows 7 SP1、または Windows Vista SP2 の場合: 378758
4.5 元のリリース
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Client
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full
名前: リリース、種類: REG_DWORD、データ: 378389
4 - クライアント 元のリリース HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Client 名前: インストール、種類: REG_DWORD、データ: 1
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Client 名前: バージョン、種類: REG_SZ、データ: 4.0.30319.0
4 - フル 元のリリース HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full 名前: インストール、種類: REG_DWORD、データ: 1
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full 名前: バージョン、種類: REG_SZ、データ: 4.0.30319.0
3.5 元のリリース HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5 名前: インストール、種類: REG_DWORD、データ: 1
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5 名前: SP、種類: REG_DWORD、データ: 0
3.5 Service Pack 1 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5 名前: インストール、種類: REG_DWORD、データ: 1
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5 名前: SP、種類: REG_DWORD、データ: 1
3.0 元のリリース 次の文書の展開と検出のガイダンスに従う: http://msdn.microsoft.com/ja-jp/library/aa480173.aspx
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0 名前: SP、種類: REG_DWORD、データ: 0
3.0 Service Pack 1 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0 名前: インストール、種類: REG_DWORD、データ: 1
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0 名前: SP、種類: REG_DWORD、データ: 1
3.0 Service Pack 2 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0 名前: インストール、種類: REG_DWORD、データ: 1
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0 名前: SP、種類: REG_DWORD、データ: 2
2.0 元のリリース HKEY_LOCAL_MACHINE\Software\Microsoft\NET Framework Setup\NDP\v2.0.50727 名前: インストール、種類: REG_DWORD、データ: 1
    HKEY_LOCAL_MACHINE\Software\Microsoft\NET Framework Setup\NDP\v2.0.50727 名前: SP、種類: REG_DWORD、データ: 0
2.0 Service Pack 1 HKEY_LOCAL_MACHINE\Software\Microsoft\NET Framework Setup\NDP\v2.0.50727 名前: インストール、種類: REG_DWORD、データ: 1
    HKEY_LOCAL_MACHINE\Software\Microsoft\NET Framework Setup\NDP\v2.0.50727 名前: SP、種類: REG_DWORD、データ: 1
2.0 Service Pack 2 HKEY_LOCAL_MACHINE\Software\Microsoft\NET Framework Setup\NDP\v2.0.50727 名前: インストール、種類: REG_DWORD、データ: 1
    HKEY_LOCAL_MACHINE\Software\Microsoft\NET Framework Setup\NDP\v2.0.50727 名前: SP、種類: REG_DWORD、データ: 2
1.1 (32 ビット版オペレーティング システム上で) 元のリリース HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322 名前: インストール、種類: REG_DWORD、データ: 1
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322 名前: SP、種類: REG_DWORD、データ: 0
1.1 (32 ビット版オペレーティング システム上で) Service Pack 1 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322 名前: インストール、種類: REG_DWORD、データ: 1
1.1 (64 ビット版オペレーティング システム上で) 元のリリース HKLM\SOFTWARE\Wow6432Node\Microsoft\NET Framework Setup\NDP\v1.1.4322 名前: インストール、種類: REG_DWORD、データ: 1
    HKLM\SOFTWARE\Wow6432Node\Microsoft\NET Framework Setup\NDP\v1.1.4322 名前: SP、種類: REG_DWORD、データ: 0
1.1 (64 ビット版オペレーティング システム上で) Service Pack 1 HKLM\SOFTWARE\Wow6432Node\Microsoft\NET Framework Setup\NDP\v1.1.4322 名前: インストール、種類: REG_DWORD、データ: 1
    HKLM\SOFTWARE\Wow6432Node\Microsoft\NET Framework Setup\NDP\v1.1.4322 名前: SP、種類: REG_DWORD、データ: 1
1.0 (Windows XP Media Center および Tablet PC 以外のサポートされているプラットフォーム上で) 元のリリース



HKEY_LOCAL_MACHINE\Software\Microsoft\Active Setup\Installed Components\{78705f0d-e8db-4b2d-8193-982bdda15ecd}

 
名前: バージョン、種類: REG_SZ、データ: 1.0.3705.0
1.0 (Windows XP Media Center および Tablet PC 以外のサポートされているプラットフォーム上で) Service Pack 1



HKEY_LOCAL_MACHINE\Software\Microsoft\Active Setup\Installed Components\{78705f0d-e8db-4b2d-8193-982bdda15ecd}

 
名前: バージョン、種類: REG_SZ、データ: 1.0.3705.1
1.0 (Windows XP Media Center および Tablet PC 以外のサポートされているプラットフォーム上で) Service Pack 2



HKEY_LOCAL_MACHINE\Software\Microsoft\Active Setup\Installed Components\{78705f0d-e8db-4b2d-8193-982bdda15ecd}

 
名前: バージョン、種類: REG_SZ、データ: 1.0.3705.2
1.0 (Windows XP Media Center および Tablet PC 以外のサポートされているプラットフォーム上で) Service Pack 3



HKEY_LOCAL_MACHINE\Software\Microsoft\Active Setup\Installed Components\{78705f0d-e8db-4b2d-8193-982bdda15ecd}

 
名前: バージョン、種類: REG_SZ、データ: 1.0.3705.3
1.0 (Windows XP Media Center 2002/2004 および Tablet PC 2004 に同梱) Service Pack 2



HKEY_LOCAL_MACHINE\Software\Microsoft\Active Setup\Installed Components\{FDC11A6F-17D1-48f9-9EA3-9051954BAA24}

 
名前: バージョン、種類: REG_SZ、データ: 1.0.3705.2
1.0 (Windows XP Media Center 2005 および Tablet PC 2005 に同梱) Service Pack 3



HKEY_LOCAL_MACHINE\Software\Microsoft\Active Setup\Installed Components\{FDC11A6F-17D1-48f9-9EA3-9051954BAA24}

 
名前: バージョン、種類: REG_SZ、データ: 1.0.3705.3

C# で enum と int 、 string を 相互 に 変換 する 方法

列挙型(enum) → 文字列(string)

var enmVal = Season.Spring;
var strVal = Enum.GetName(typeof(Season), enmVal);

列挙型(enum) → 数値(int)

var enmVal = Season.Autumn | Season.Winter;
var intVal = (int)enmVal;

文字列(string) → 列挙型(enum)

var strVal = "spring, summer";
var enmVal = (Season)Enum.Parse(typeof(Season), strVal, true);

数値(int) → 列挙型(enum)

var intVal = 2;
var enmVal = (Season)Enum.ToObject(typeof(Season), intVal);

C#/VB.netですべての例外をキャッチする

vb.net

Try
    'ファイルを開く
    sr = System.IO.File.OpenText(filePath)
Catch ex As System.IO.FileNotFoundException
    System.Console.WriteLine(ex.Message)
    Return Nothing
Catch ex As System.IO.IOException
    System.Console.WriteLine(ex.Message)
    Return Nothing
Catch ex As System.UnauthorizedAccessException
    System.Console.WriteLine(ex.Message)
    Return Nothing
Catch ex As System.Exception
    'すべての例外をキャッチする
    '例外の説明を表示する
    System.Console.WriteLine(ex.Message)
    Return Nothing
End Try

C#

try
{
    //ファイルを開く
    sr = System.IO.File.OpenText(filePath);
}
catch (System.IO.FileNotFoundException ex)
{
    System.Console.WriteLine(ex.Message);
    return null;
}
catch (System.IO.IOException ex)
{
    System.Console.WriteLine(ex.Message);
    return null;
}
catch (System.UnauthorizedAccessException ex)
{
    System.Console.WriteLine(ex.Message);
    return null;
}
catch (System.Exception ex)
{
    //すべての例外をキャッチする
    //例外の説明を表示する
    System.Console.WriteLine(ex.Message);
    return null;
}

C#でGoogleカレンダーからAPIで日本の祝日を取得する

Newtonsoft.Json 使います。

        public static HashSet<DateTime> GetHolidays(int year)
        {
            var key = "あなたのAPIキー";
            var holidaysId = "japanese__ja@holiday.calendar.google.com";
            var startDate = new DateTime(year, 1, 1).ToString("yyyy-MM-dd") + "T00%3A00%3A00.000Z";
            var endDate = new DateTime(year, 12, 31).ToString("yyyy-MM-dd") + "T00%3A00%3A00.000Z";
            var maxCount = 30;

            var url = $"https://www.googleapis.com/calendar/v3/calendars/{holidaysId}/events?key={key}&timeMin={startDate}&timeMax={endDate}&maxResults={maxCount}&orderBy=startTime&singleEvents=true";
            var client = new WebClient() { Encoding = System.Text.Encoding.UTF8 };
            var json = client.DownloadString(url);
            client.Dispose();

            var o = Newtonsoft.Json.Linq.JObject.Parse(json);
            var days = o["items"].Select(i => DateTime.Parse(i["start"]["date"].ToString()));
            return new HashSet<DateTime>(days);
        }