Windows Serverのアップグレード後、デスクトップにシステム情報を簡単に表示できるBGInfoが旧バージョンのまま変わらない――そんなお悩みに心当たりはありませんか。実際、EditionはWindows Server 2022と認識していてもBGInfoや一部ツールのみ更新されないケースがあるようです。ここでは、その原因と対処法を分かりやすく解説していきます。
BGInfoが旧バージョンを表示する原因
アップグレード後もBGInfoに反映されるOSバージョンが変更されない理由の一つには、BGInfoが参照するレジストリ情報が更新されていない点があります。Windows Server 2016から2022へのアップグレード直後には、一部のレジストリキーやWMIオブジェクトが古いまま残ってしまうことがあるためです。
アップグレードという特殊な状況
通常、Windows Serverを新規インストールした場合は最新のバージョン情報が反映されるため問題は起こりにくいです。しかし、アップグレード方式ではシステム関連の情報を引き継ぎながらOSを更新するため、古いレジストリ値などが中途半端に残ってしまうことが考えられます。
BGInfoの仕組みと表示情報の取得
BGInfoはSysinternals(マイクロソフト傘下)で提供されている無料ツールで、デスクトップの壁紙にシステム情報を自動的に配置してくれるのが特徴です。OSのバージョン情報は、以下のいずれかから取得されるケースが多いとされています。
- Windowsのレジストリキー(
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion
など) - WMIクエリ(
Win32_OperatingSystem
など)
アップグレード後に旧バージョンが残存していると、BGInfoがそれを拾い続けるためOSバージョンが2016のままになるといった問題が生じます。
対処法1:レジストリの値を修正する
最もシンプルな対応策として、「BGInfoが参照しているレジストリキーを正しい値に更新する」という方法があります。手順は下記のとおりです。
レジストリ編集の流れ
- レジストリエディタを起動 「Windowsキー + R」で「ファイル名を指定して実行」を開き、
regedit
と入力してEnterキーを押します。 - 対象キーを開く 以下のキーに移動します。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion
- CurrentVersionを確認・修正 右ペインにある
CurrentVersion
の値が「10.0」になっているか確認します。もし旧バージョン(例: 6.3, 10.0(の一部)など)になっていれば、10.0に書き換えてください。 - レジストリエディタを終了、再起動 設定を反映させるため、Windows Serverの再起動を行うとより確実です。
修正後のBGInfo再実行
レジストリの修正後、BGInfoを再度起動すると正しいWindows Server 2022のバージョン名が反映されます。BGInfoは初回起動時に設定ファイル(.bgi)を作成・編集することが可能ですので、必要に応じて「表示する情報」「フォントサイズ」などもカスタマイズするとよいでしょう。
レジストリ編集時の注意点
- レジストリの誤った変更はシステム不具合を引き起こす可能性があるため、必ずバックアップを取ってから実施してください。
- アップグレード直後の不安定なタイミングで行う場合は、事前に十分なテスト環境で手順を試すことが望ましいです。
対処法2:WMIクエリを利用したBGInfoの設定
レジストリの直接編集を避けたい場合や、より柔軟な方法を求める場合は「BGInfoでWMIクエリを利用する」設定に切り替えるのがおすすめです。WMI(Windows Management Instrumentation)は、Windowsのシステム情報を問い合わせる標準機能であり、BGInfoでも自由に情報を取得できます。
BGInfoのWMIクエリ機能
BGInfoの設定画面から「Custom Fields」を使い、WMIクエリを定義できます。たとえば、Win32_OperatingSystem
のCaption
やVersion
を取得して、それをデスクトップに表示させる仕組みを作ることが可能です。
具体的なWMIクエリ例は以下のようになります。
SELECT Caption FROM Win32_OperatingSystem
この場合は、下記のようにWindowsのエディションやバージョンが取得できます。
Windows Server 2022 Standard
設定手順の概要
- BGInfoを起動
- [Custom Fields]を選択
- [New…]をクリックし、[WMI Query]を選択
- [Query:]の欄に「SELECT Caption FROM Win32_OperatingSystem」など入力
- フィールド名を分かりやすいものに変更(例:「OS_Caption」など)
- レイアウト画面で追加したフィールドを表示
- BGInfoを保存し、再度反映
こうすることで、BGInfoがレジストリの古い値ではなく、最新のWMI情報を参照するようになり、Windows Server 2022として正しいバージョン名がデスクトップに表示されるようになります。
WMIクエリを使うメリット
- レジストリを直接編集しなくて済むため、リスクを低減できる
- カスタムクエリを用いることで多彩なシステム情報を表示できる
- スクリプト化・自動化にも応用しやすい
アップグレード後にOSバージョンを統一して確認する方法
BGInfoだけでなく、システム全体が新しいバージョンに移行したかをきちんと確認することは、運用管理上とても重要です。以下の方法で、OSバージョンやエディションの統一がなされているかチェックしてみましょう。
1. コマンドプロンプトまたはPowerShellで確認
systeminfo | findstr /i "OS Name"
あるいは
wmic os get caption, version
またはPowerShellなら
Get-ComputerInfo | Select-Object WindowsProductName, WindowsVersion, OsHardwareAbstractionLayer
実際に出力されるOS名やバージョンに「Windows Server 2022」が含まれていれば問題ありません。
2. システムのプロパティで確認
GUI環境上でWin + Pause/Break
キーを押す、もしくは「サーバーマネージャ」や「コントロールパネル → システムとセキュリティ → システム」などから「システムの詳細」画面を開き、表示される「エディション」「バージョン」をチェックします。
3. その他の管理ツール
Hyper-V ManagerやServer Managerなど、Microsoft系の管理コンソールがOSバージョンを参照している場合もあります。それらの表示内容も合わせて確認し、整合性が取れているかどうかを確かめると安心です。
アップグレード時における運用上の注意点
1. バックアップの実施
アップグレードを行う前に、システムイメージや重要なデータのバックアップを取得しておくことは必須です。アップグレード後にレジストリや設定が意図せず古いものになっているケースがあるため、何か問題があった時に復旧できるよう準備しましょう。
2. アンチウイルスやサードパーティ製ソフトウェアの影響
アップグレード後、BGInfoに限らず一部のサードパーティ製ソフトやサービスが正しいバージョン情報を取得できない場合があります。これはソフト側のアップデートが追いついていない可能性があるため、最新バージョンの提供があるかどうか確認してください。
3. クリーンインストールとの比較
新規インストールであれば、レジストリやOS環境が純粋なWindows Server 2022になるため、バージョン情報の不整合は起きにくいです。アップグレードの場合は、どうしても既存設定の継承が発生するので、今回のようなレジストリ値の残存は一定確率で起こります。
そのため、余裕があればクリーンインストールを検討するのも一つの方法です。
BGInfoを使った運用のベストプラクティス
1. 定期的な壁紙更新スクリプトの運用
BGInfoはコマンドラインでも実行可能で、スクリプトから自動で壁紙を再生成できます。例えば、タスクスケジューラを利用し毎日やサーバー起動時にBGInfoを実行することで、最新情報に常に更新された壁紙を維持できます。
bginfo.exe "C:\Tools\BGInfoConfig.bgi" /timer:0 /silent /nolicprompt
上記のようにオプションを付けて起動すると、ユーザーの操作なしで壁紙を再設定してくれます。
2. 複数サーバーへの一括適用
大規模環境であれば、グループポリシーやスクリプト配布機能(SCCM等)を使ってBGInfoの設定ファイルを各サーバーに展開し、バージョン情報を統一した状態で表示することが可能です。
このとき、レジストリ修正が必要なサーバーが複数台ある場合は、PowerShellなどで自動化すると手間を大きく削減できます。
3. BGInfoのバージョン管理
BGInfo自体にも更新があります。古いバージョンを利用しているとWindows Server 2022への対応が不十分な可能性があるため、BGInfoの公式ダウンロードページで最新バージョンを入手して利用することをおすすめします。
最新のBGInfoでは細かいバグ修正や新OSへの正式対応などが行われるため、特にServer 2022環境へ移行後はアップデートを検討してください。
トラブルシューティングQ&A
Q1. レジストリを書き換えたのにバージョンが変わりません
A. 変更後にWindows Serverの再起動を実施していない場合、BGInfoや他のツールがメモリ上の古い情報を参照している可能性があります。まずサーバーを一度再起動し、再度BGInfoを実行してみてください。
また、同一レジストリキーが複数の場所にある(WOW64環境向けなど)場合もあり、念のためそれらも合わせて確認するとよいでしょう。
Q2. WMIクエリでも正しい情報が取得できない場合がある?
A. まれにWMIリポジトリが破損している可能性があります。winmgmt /verifyrepository
やwinmgmt /salvagerepository
コマンドを使ってリポジトリの整合性を確認・修復してみてください。
それでも改善しない場合はMicrosoftの公式ドキュメントを参考に再登録や再構築を行うことを検討します。
Q3. BGInfoがServer 2022を認識しないのはバグなのか?
A. BGInfo自体が古いバージョンで新OSに正式対応していないことが原因の場合もあります。ただし、レジストリやWMIの値が古いままの場合はツール側ではなくOS側の設定が問題であることが多いです。まずはレジストリやWMI情報の更新を行い、BGInfoも最新バージョンにしてから再度確認してください。
まとめ
Windows Server 2016から2022へのアップグレード後、BGInfoが旧OSバージョンを表示し続ける原因は主に「アップグレードで残存するレジストリ値」や「WMI情報の古さ」が考えられます。対策としては、レジストリを修正する方法か、WMIクエリを利用して最新の情報を取得する方法が有効です。
どちらの方法を選ぶにしても、最終的にOS全体がWindows Server 2022として認識されているかを他のコマンドやツールで確認し、整合性を確保することが大切です。また、BGInfo自体のバージョンを最新に保つことも、今後の運用トラブルを回避するうえで重要なポイントとなります。
もしレジストリ編集に抵抗があれば、BGInfoのWMIクエリを使うアプローチをぜひ試してみてください。これならばレジストリに変更を加えずに、Windows Server 2022として正確なバージョン名を取得できるようになります。サーバー管理は安全性と正確性が求められますので、適切な運用手順と検証を重ねながらアップグレード後の環境を最適化していきましょう。
コメント