このWindowsUpdateをインストールメディアで


連日のように「WindowsUpdateが出来ない」「0x8XXXXXXXエラー」
「一日待っても終わらない」「xx%から進みません」
のような悲鳴がネット上から沢山聞こえてきます。
失敗を繰り返し、空き容量が足りないとか悪化させる場合もあります。
対応策の中に、KBxxxxxxx.msu をアップデートカタログからダウンロードして
ローカルでアップデートをする方法があります。
この方法でも、ウィルス対策ソフトが邪魔をしたりする事があるので
クリーンブートしてから行ってくださいとか手順が面倒です。

そこで、インストールメディアでアンインストールが出来るなら
アップデート(インストール)も出来るのでは?と試したら出来ました。
緊急手段?として使えるかも知れません。

やり方は
① インストールメディアをUSBメモリで作成。
  ※ 8GBでOK。
  ※ インストール先と同じOSで同じビット数で作成。
② 「X.cmd」と「C:\Windows\system32\CHOICE.exe」をUSBメモリのルートにコピー。
  ※ コピー先は、Setup.exe のある所です。
③ ダウンロードした「KBxxxxxxx.msu」をUSBメモリのルートにコピー。
④ USBメモリで起動して、言語選択画面で Shift + F10 を押します。
⑤ コマンドプロンプトが表示されたら「D:¥x」(半角)と入力後、Enter。
  バッチが起動しなかったら「E:¥x」、「F:¥x」、「G:¥x」のように
  ドライブレターを変更して実行して下さい。
⑥ バッチが起動したら、OSのドライブを聞かれるので「C」等を入力。
  アップデートのインストールが行われます。
⑦ インストールが終わると、シャットダウン等を聞かれるので「S」を押す。

x.cmd
@echo off
SetLocal EnableDelayedExpansion

powercfg /? >nul 2> nul && call powercfg /s 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c

CLS
echo;★ ★ ★ KBxxxxxxx アップデートをインストールする (要:CHOICE.exe) ★ ★ ★
echo;
echo; Windows のあるドライブを探しています・・・
echo;

            Set        "Select_Drive= "
for                   %%D in ( C D E F G H I J K L M N O P Q Q S T U V W   Y Z ) do (
   if      exist      %%D:\ (
       if      exist "%%D:\Windows\system32\cmd.exe" (
              echo;%%D 】ドライブに cmd.exe が在ります。多分、これが OS の ドライブかも。
       )
       Call Set         Select_Drive=%%Select_Drive%%%%%%D
   )
)

echo;
echo;  [C,D,E]? のような選択肢が表示されたら
echo;
echo;  C を選択する場合、「 C 」キーだけ押して下さい。
echo;

"%~dp0choice"       /c %Select_Drive% /m " OS のドライブを指定して下さい "
Call Set OSのドライブ=%%Select_Drive:~!errorlevel!,1%%

echo;
echo; USBメモリにあるアップデートをインストールします。

Dism /Image:%OSのドライブ%:\ /ScratchDir:%OSのドライブ%:\ /Add-Package /PackagePath:"%~d0:"

echo;

"%~dp0choice" /c SRT /m "更新終了。この後どうする? シャットダウン:S、再起動:R、取り合えずこの処理を終わる:T "

if      !ERRORLEVEL! EQU 1                          Wpeutil         Shutdown
if      !ERRORLEVEL! EQU 2                          Wpeutil                    Reboot