VB.NET OS和暦レジストリ取得方法公開

もうすぐ改元ですね、改元対応の計画を立ててみえると思います。
大変なのは和暦判断です。

市販のコンポーネントを購入し使用されている場合には問題ありませんが、作り込みで和暦判断をされている方も多いと思います。そんな方にWindowsレジストリ情報を取得できる.NET クラスのソースを公開致します。

ご存知の通りWindowsにはレジストリに和暦情報をもっています。

.NET のカレンダーのプライベートプロパティへアクセスし、値を取得するクラスソースを公開します。
※本クラスは10年ほど前に作成し、現在も利用できています。
Windows 10/2016 Serverでも取得が可能であることを確認しています。

■使用方法

Dim cReki As List(Of cReki) = cRekis.GetRekiList

With cReki(0)
TextBox1.Text=.EraName '【明治】
TextBox2.Text=.EraShortName '【M】
TextBox3.Text=.EraYear '【1868】
TextBox4.Text=.EraDate '【1868/1/1】
TextBox5.Text=.EraRange '【45】
End With

※【】の中の値が戻ってきます
※cRekisクラスを下記に有料公開します!

■取得時の戻り値イメージ一覧

※「和暦」などの日本語行は解説用でプロパティには入ってきません。
※Win10 1803以降の場合は、新元号「??」が取得できます

■留意点

10年ほど実環境で運用しておりますが、プライベートプロパティへのアクセうですので、.NETの仕様の変更によりアクセスできなくなる可能性もあります。自己責任にてご利用下さい。

■VB.NETソース

ソースが見にくいのでこちらのブログで無料公開中




いいなと思ったら応援しよう!