【Windows】【IT管理者向け】「Adobe Reader XI」へのバージョンアップ
2015/11/07
エンドユーザーの手を煩わせない
「Adobe Reader」をバージョンアップしたときに困るのが、エンドユーザーが初回起動したときに発生するオペレーションだと思います。
手順書を配布して周知したとしても、ヘルプデスクに問い合わせが少なからず来るため、なるべくエンドユーザーにオペレーションが発生しないようにしなければなりません。
ほとんどのソフトウェアは、サイレントインストール用のコマンドラインオプションが用意されているので、それを使えばユーザー操作なしにインストールができます。
また、「Adobe Reader」の場合、「Customization Wizard」というツールでインストーラーをカスタマイズして、 [インストール時の選択] ・ [使用許諾契約書(EULA)] ・ [デスクトップショートカット] などを非表示にしたりできます。
今回のインストールでやりたいこと
- ユーザー操作なしにインストール(サイレントインストール)(プログレスバーあり)
- インストール後、「Adobe Reader」を起動させない
- [使用許諾契約書(EULA)] を表示させない
- デスクトップにショートカットを作らない
今回は、「Customization Wizard」ツールを使用せず、コマンドラインオプションで行います。
「setup」のインストールオプションを調べる
コマンドプロンプトから以下のコマンドでインストールオプションを調べられます。
1 2 3 |
> AdbeRdr11000_ja_JP.exe /? |
※バージョン「11.000」を使用しています。ダウンロードしてきたファイル名に変更して下さい。
上記コマンドを実行すると以下の画面が出ます。
「MSIEXEC」のパラメーターを付加する
先ほどの「setup」から「MSIEXEC」にパラメーターを渡せるので、以下のパラメータを付加します。
- EULA_ACCEPT=YES
- SUPPRESS_APP_LAUNCH=YES
「EULA_ACCEPT」は、使用許諾契約書(EULA)の表示を抑制。
「SUPPRESS_APP_LAUNCH=YES」はインストール後にAdobe Readerがすぐ起動されるのを防ぐ。
念のため、「MSIEXEC」の再起動抑制パラメーターも入れます。
- /norestart
コマンドを書いてみる
上記のオプションを付加してコマンドを書いていきます。
1 2 3 |
> AdbeRdr11000_ja_JP.exe /sPB /rs /msi EULA_ACCEPT=YES SUPPRESS_APP_LAUNCH=YES /norestart |
デスクトップショートカットを削除する
上記コマンドで、やりたいことの「1.2.3.」が実現できますが、デスクトップにショートカットが出来てしまいます。
そこで、コマンドでショートカットを削除します。
ショートカットの場所は以下。
[ C:\Users\Public\Desktop\ ]
1 2 3 |
> erase /f "C:\Users\Public\Desktop\Adobe Reader XI.lnk" |
バッチを作る
あとは、バッチを作って対象のPCで実行してインストールするようにします。
【バッチ例1】
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
@echo off setlocal rem =================================================== rem 「Adobe Reader XI」サイレントインストールバッチ rem =================================================== rem インストーラーの保存先パスを入力する set INSTALLER_PATH=C:\ rem インストーラー名を入力する set INSTALLER_NAME=AdbeRdr11000_ja_JP.exe rem ショートカットのパスを入力する set SHORTCUT_PATH=C:\Users\Public\Desktop\Adobe Reader XI.lnk start "" /wait "%INSTALLER_PATH%%INSTALLER_NAME%" /sPB /rs /msi EULA_ACCEPT=YES SUPPRESS_APP_LAUNCH=YES /norestart erase /f "%SHORTCUT_PATH%" endlocal exit |
「インストーラーの保存場所」と「インストーラー名」と「ショートカットのパス」は環境に合わせて変更して下さい。
「以前のバージョンの Adobe Reader の信頼済み証明書が見つかりました。取り込みますか?」が表示される場合
以前のバージョンの「Adobe Reader」を使用していた場合、以下のようなメッセージが表示されることがあります。
「取り込み」をクリックすると、前のバージョンで使用していた信頼済み証明書が引き続き使用されます。「デフォルトを使用」をクリックすると、Adobe Reader の初期設定の信頼済み証明書のみを使用します。
これが表示されては、「エンドユーザーの手を煩わせない」が、成り立ちません。
そこで、レジストリに追加して回避します。
以下引用
Addressbook Import
The address book stores data for certificates used in digital signature and certificate encryption workflows. During a major upgrade (e.g. 10.x to 11.x), the product looks for existing address books on each user machine. Prior to install, you should decide whether to deploy a generic, enterprise address book or let the existing address book on each machine be imported into the new product. By default, when end users first launch the product, the application prompts them to import any discovered address book. The application looks for existing addressbooks from previous product versions by searching directories in this order.
- (root)\AppData\Roaming\Adobe\Acrobat\11.0\addressbook.acrodata
- (root)\AppData\Roaming\Adobe\Acrobat\10.0\addressbook.acrodata
- (root)\AppData\Roaming\Adobe\Acrobat\9.0\addressbook.acrodata
- (root)\Program Files (x86)\Adobe\Acrobat {current version such as 11.0}\Acrobat\Replicate
Summary table
iImportAddressBook Specifies whether the addressbook.acrodata file should be imported during a new install. iImportAddressBook
Data type integer: DWORD value > REG_DWORD Default 1 Version # 11.0.06+ HKCU Path Security\cDigSig HKLM Path Not lockable Summary Specifies whether the addressbook.acrodata file should be imported during a new install. Details Many admins set a value of 2 so that the import dialog does not appear for end users. Possible values include:
- 0: Do not copy the old address book. The user is NOT prompted and the address book should NOT be installed.
- 1 or null: Default: The user is asked whether the address book should either be installed or not.
- 2: Import the address book silently.
【機械翻訳】
住所録を読み込む
アドレス帳では、電子署名や証明書の暗号化のワークフローで使用される証明書のデータが保存されます。 主要なアップグレード時(11.x)への例:10.xは、商品に各ユーザーコンピューター上の既存のアドレス帳を検索します。 前にインストールする汎用、企業のアドレス帳をデプロイするかどうかを決定するか、各コンピューター上で既存のアドレス帳を読み込む新しい製品に許可します。 デフォルトでは、エンドユーザーが製品を初めて起動するときは、アプリケーションは、検出されたアドレス帳を読み込むように求められます。 アプリケーションは、次の順序でディレクトリを検索することによって、前の製品バージョンから既存の住所録を検索します。
- (ルート)<ユーザー名>¥AppData¥Roaming¥Adobe¥Acrobat¥11.0¥Roamingacrodataaddressbook.
- (ルート)<ユーザー名>¥AppData¥Roaming¥Adobe¥Acrobat¥10.0¥Roamingacrodataaddressbook.
- (ルート)<ユーザー名>¥AppData¥Roaming¥Adobe¥Acrobat¥9.0¥Roamingacrodataaddressbook.
- (ルート)\ProgramFiles(x86)¥Adobe¥Acrobat\{11.0}\Acrobat\複製などの現在のバージョン
サマリテーブル
iImportAddressBook ファイルが新しいacrodataaddressbook.中にインストールするインポートされる必要があるかどうかを指定します。 iImportAddressBook
データ型 整数です。 DWORD値/REG_DWORD デフォルト 1 バージョン# 11.0.06+ HKCUのパス セキュリティ\cDigSig パスのHKLM ロックできません 概要 ファイルが新しいacrodataaddressbook.中にインストールするインポートされる必要があるかどうかを指定します。 詳細 多くの管理は、読み込みダイアログボックスがエンドユーザーには表示されないようにするには値を2に設定します。 有効な値は次のとおりです。 0: 古いアドレス帳をコピーしないでください。 ユーザーは求められず、アドレス帳がインストールされている必要があります。
1またはnull。 デフォルト: ユーザーは、アドレス帳がインストールされている必要があるかどうかを確認するメッセージが表示されます。
2: アドレス帳を自動的に読み込みます。
【引用元】
http://www.adobe.com/devnet-docs/acrobatetk/tools/PrefRef/Windows/Security.html#AddressbookImport
要約すると以下のレジストリに「DWORD値」で「2」を設定すれば、自動で「取り込み」となります。
[HKEY_CURRENT_USER\Software\Adobe\Acrobat Reader\11.0\Security\DigSig]“iImportAddressBook”=dword:00000002
コマンドでレジストリを追加します。
1 2 3 |
> reg add "HKEY_CURRENT_USER\Software\Adobe\Acrobat Reader\11.0\Security\cDigSig" /v iImportAddressBook /t REG_DWORD /d 2 /f |
※キーのパスは、環境に合わせて変更して下さい。
信頼済み証明書取り込み対応版バッチ
信頼済み証明書取り込み対応版バッチ例を以下に記載します。
【バッチ例2】
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
@echo off setlocal rem =================================================== rem 「Adobe Reader XI」サイレントインストールバッチ rem =================================================== rem インストーラーの保存先パスを入力する set INSTALLER_PATH=C:\ rem インストーラー名を入力する set INSTALLER_NAME=AdbeRdr11000_ja_JP.exe rem ショートカットのパスを入力する set SHORTCUT_PATH=C:\Users\Public\Desktop\Adobe Reader XI.lnk start "" /wait "%INSTALLER_PATH%%INSTALLER_NAME%" /sPB /rs /msi EULA_ACCEPT=YES SUPPRESS_APP_LAUNCH=YES /norestart erase /f "%SHORTCUT_PATH%" rem 信頼済み証明書の取り込み用レジストリ reg add "HKEY_CURRENT_USER\Software\Adobe\Acrobat Reader\11.0\Security\cDigSig" /v iImportAddressBook /t REG_DWORD /d 2 /f endlocal exit |
まとめ
今回は、「信頼済み証明書の取り込み」のところが、はまりました。
調べても日本語のサイトでは発見できず、英語サイトでそれっぽいのを発見し、メイク&トライでした。
※確認OS:Win7(32bit)