経緯
※とにかく対処法を知りたい方はこの章は飛ばしてよいです。
普通にアップデートしてみる
社内用PCのマスター更新で64bit版へのアップデートの要望があり、
試験機にマスターイメージ戻し、
諸々のポリシーを外した上で
外部ネットワーク接続、
32bit版 Acrobat Reader のアプリケーション内から
普通にアップデートを実行。
→64bit版へのアップデートがかからない。
いろいろ情報収集するも、
「64bit版へのアップデートを抑止する方法」しか引っかからず。
仕方がないので32bit版を一旦アンインストール
インターネット経由で Acrobat Reader のインストーラーを取得、
普通に起動して64bit版でのインストールを試みる。
(2024年5月現在、Adobe公式サイトからダウンロードできるAcrobat Reader のインストーラーは特別な指定をしない限り64bit版のオンラインインストーラーとなる)
順当にいけばこれで64bit版をインストールできるはず。
が。
「インターネットの場所に接続出来ません。」
いやいや・・・
今しがたインターネット経由でインストーラー落としてきたばっかりなんですけど?
こういうときは大抵、
アンインストール後に残ったレジストリのゴミが悪さをしているものである。
結局丸一日、レジストリを弄ってはインストール/アンインストールを繰り返して
見つけ出したのが以下の方法となります。
対処法
32bit版 Acrobat Reader がインストールされている前提です。
インターネット環境への接続が必要です。
レジストリの編集・削除は、操作を誤ると予期せぬ挙動を引き起こす恐れがあります。自己責任で実行してください。
1. 原因のレジストリを削除する
キー名:HKLM\SOFTWARE\Adobe\Installer
エントリ名:MigratedTo64
キー名:HKLM\SOFTWARE\Adobe\Installer
エントリ名:UWP_APP_PACKAGE_FULLNAME
以下削除コマンド
reg delete "HKLM\SOFTWARE\Adobe\Installer" /v "MigratedTo64" /f
reg delete "HKLM\SOFTWARE\Adobe\Installer" /v "UWP_APP_PACKAGE_FULLNAME" /f
2. Acrobat Reader のアップデート実行
Acrobat Readerを起動し、
「メニュー → ヘルプ → アップデートの有無をチェック」をクリック
この時点では64ビット版へのアップデートは実行されません。
アップデートの有無に関係なく、Acrobat Reader を閉じます。
3. タスクマネージャーをチェック
タスクマネージャーを起動し、
「Adobe Self Extractor」がタスクに上がってくるのを待ちます。
こちらが上がってきたら、
32bit版のアンインストールと64bit版のインストールが
バックグラウンドで進行していますので、
プロセスから Adobe Self Extractor が消えるのを待ちます。
4. アップデート完了
デスクトップを確認すると、
新たに「Adobe Acrobat」のショートカットがデスクトップに生成されています。
起動すると、
上記のポップアップが表示され、
無事に64bit版へのアップデートが完了したことが分かります。
なぜアップデートできなかったのか
■任意で抑止する場合
そもそも、64bit版へのアップデートを抑止する方法は Adobe 公式が公開しています。
Acrobat Reader 32 ビットアプリケーションが自動的に 64 ビットバージョンにアップグレードされないようにするには、アプリケーションを最初に起動する前に、次のレジストリキーを作成します。
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Adobe\Acrobat Reader\DC\FeatureLockDown に移動します。
以下のキーを作成します:
キー:bUpdateToSingleApp
データタイプ: REG_DWORD
デフォルト値:0
しかし、ここに書かれているレジストリ値は試験機では確認できませんでした。
■アップデートができなくなる条件
いちおう、以下の状況の再現性を取れたため記しておきます。
・32bit版をインストール
・前述の対処法を実施、64bit版に置き換える
→このタイミングで新たに「MigratedTo64」のエントリが生成される
・64bit版をアンインストール
→ MigratedTo64 のエントリは残ったまま
・32bit版をオフラインインストール(詳細略)
・MigratedTo64(とUWP_APP_PACKAGE_FULLNAME) がトリガーとなって
アップデートが抑止された状態になる
■原因
・前任者がはじめに64bit版をインストール
・しかし当時の要件は32bit版だったため、
64bit版をアンインストール → 32bit版で再インストール
おそらく、こういうことだったんじゃないかなあと思います。
まとめ
理屈としては納得できる挙動ではあるんですけどね。
64bit → 32bit とした後に、
また勝手に64bit版へのアップデートが走らないようにするのは合理的です。
でもなあ。
レジストリの操作を前提とするくらいだったら、
ここに挙げた仕様も公式に載っけておいてほしかったな~。
貴重な時間をこんなことで消費する僕みたいな人が
一人でもいなくなりますように。
以上。