可能な解決策
以下に、KB2919355の有無にかかわらず、オペレーティングシステムがWindows 8.1かどうかを確認できるいくつかのバッチスクリプトを示します。終了コードは次のいずれかになります。
0:Windows 8.1
1:Windows 8.1 Update(KB2919355がインストールされています)
2:Windows 8.1以外
バッチスクリプトA-更新チェック
これが最も信頼できる方法です。スクリプトはまず、オペレーティングシステムがWindows 8.1であるかどうかをバージョンと比較して確認し6.3.9600ます。次に、インストールされているすべての更新が照会され、KB2919355更新が既にインストールされているかどうかが確認されます。
@echo off
for /f "usebackq tokens=2 delims==" %%G in (
`wmic os get version /value ^| findstr /c:"="`
) do set version=%%~G
if not "%version%" == "6.3.9600" exit /b 2
wmic qfe get hotfixid | findstr /i /c:"KB2919355" >nul
set /a errorlevel=%errorlevel% ^^ 1
exit /b %errorlevel%
バッチスクリプトB-ビルドバージョンチェック
別の方法として、すべての更新を列挙する必要がないため、最初のスクリプトよりも高速なWindowsビルドバージョンを確認できます。レジストリ値を使用するため、信頼性が低くなる可能性があります。
@echo off
for /f "usebackq tokens=2 delims==" %%G in (
`wmic os get version /value ^| findstr /c:"="`
) do set version=%%~G
if not "%version%" == "6.3.9600" exit /b 2
for /f "tokens=4 delims=. " %%G in (
'"reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v "BuildLabEx" | findstr /i /c:"REG_SZ" "'
) do set /a build=%%~G
if %build% geq 17031 exit /b 1
exit /b 0
バッチスクリプトC-ビルドバージョンチェック(Internet Explorer)
前のスクリプトと同じように、ここでは概念は似ていますが、代わりにInternet Explorer(IE)バージョンがチェックされます。
@echo off
for /f "usebackq tokens=2 delims==" %%G in (
`wmic os get version /value ^| findstr /c:"="`
) do set version=%%~G
if not "%version%" == "6.3.9600" exit /b 2
for /f "tokens=3,6 delims=. " %%G in (
'"reg query "HKLM\SOFTWARE\Microsoft\Internet Explorer" /v "svcVersion" | findstr /i /c:"REG_SZ" "'
) do set /a major=%%~G & set /a build=%%~H
if %major% equ 11 if %build% geq 17031 exit /b 1
if %major% geq 12 exit /b 1
exit /b 0
注このスクリプトでは、更新KB2919355がインストールされているWindows 8.1システムで12以上のIEバージョンが利用可能であると想定しています。
Windows RT 8.1、Windows 8.1、およびWindows Server 2012 R2の今後のすべてのセキュリティおよびセキュリティ以外の更新では、この更新をインストールする必要があります。今後の継続的な更新を受け取るために、この更新をWindows RT 8.1、Windows 8.1、またはWindows Server 2012 R2ベースのコンピューターにインストールすることをお勧めします。
出典:Windows RT 8.1、Windows 8.1、およびWindows Server 2012 R2 Update:2014年4月
上記を踏まえると、Windows VistaにIE 9をインストールするためにSP2が必要であるのと同じように、新しいIEバージョンでは前提条件として更新が必要になると考えるのが妥当です。