インストーラに引数を与えて実行することにより、インストール処理のログを出力したり、ダイアログが表示されないサイレントでのインストール、アンインストールを行うことができます。
エラー メッセージのMsiExec.exeとInstMsi.exe (開発者向け)
https://learn.microsoft.com/ja-jp/windows/win32/msi/error-codes
キー名:
LOCAL_MACHINE\SOFTWARE[\Wow6432Node]\Microsoft\VisualStudio\14.0\VC\Runtimes\{x86|x64|ARM}
値名:
Version
引数の種類は以下の通りです。
引数 |
内容 |
|
/VERYSILENT |
サイレントでインストール/アンインストールを行います。 サイレントでの実行時は指定が必須です。 |
|
/SUPPRESSMSGBOXES |
メッセージボックスを非表示にします。 サイレントでの実行時は指定が必須です。 |
|
IN”xxxxx” |
インストールフォルダを指定します。 (指定例)IN”C:\AHPDFDriver80” 存在しないフォルダパスが指定された場合はインストーラが作成します。 この引数が指定されなかった場合は 「{システムドライブ}:\Program Files\Antenna House\PDF Driver 8.0」 にインストールされます。 |
|
/OVERWRITE |
上書きインストールの動作を指定します。 比較するバージョンは「8.0」のみです。8.0.x.xの下2つの数字を比較して新旧を判定します。 この引数が指定されなかった場合、「/OVERWRITE”ON”」と同一の動作となります。 |
|
/OVERWRITE”ON” |
インストール先の環境に存在するPDF Driver V8.0が、インストールしようとしているバージョンと同じかより古い場合に上書きインストールを実行します。 |
|
/OVERWRITE”OFF” |
バージョンに関係なく上書きインストールは実行しません。 |
|
/OVERWRITE”FORCE” |
バージョンに関係なく上書きインストールを実行します。 |
|
/NORESTART |
この引数が指定されている場合、インストーラがシステムを再起動しないようにします。 この引数が指定されていない場合、インストール/アンインストール処理によりシステムの再起動が必要となったとき、インストーラが自動的にシステムを再起動します。 |
|
/registeraddin *1 |
この引数が指定されている場合、Offceアドインの登録処理が行われます。 指定されていない場合、登録は行われません。新規インストール時に指定されていないとき、アドイン登録が行われないためOfficeアプリケーション上でアドインボタンは表示されません。 |
|
/unregisteraddin *1 |
この引数が指定されている場合、Officeアドインの登録を解除します。 |
|
RES”xxxx” |
インストール/アンインストールの結果を出力します。 出力内容の詳細は後述を参照してください。 「RES」で指定されたログファイルが出力されたらインストール/アンインストール処理は終了しています。 (指定例)RES”C:\log\instresult.txt” |
|
/LOG=”xxxxxx” |
インストール/アンインストールの処理ログを出力します。 (指定例)/LOG=”C:\log\instlog.txt” |
*1
通常のOEMライセンス用PDF Driverは、Officeアドインは含まれていません。これらの引数を指定しても無視されます。
以下のセクションと値を持つログファイルです。
値名 |
値 |
意味 |
ReBoot |
インストール処理後のオペレーティングシステム再起動の要・不要 |
|
0 |
再起動が不要 |
|
1 |
再起動が必要 |
|
SetupError |
プリンタの追加/削除処理の結果 |
|
0 |
正常終了 |
|
-1 |
プリンタの追加に失敗(AddPrinterに失敗) |
|
-2 |
printui.dllがロードできない |
|
-3 |
プリンタの削除に失敗(DeletePrinterに失敗) |
|
-4 |
モニタのインストールに失敗(AddMonitorに失敗) |
|
-6 |
モニタの削除に失敗(DeleteMonitorに失敗) |
|
-7 |
ポートのインストールに失敗(AddPortExに失敗) |
|
-8 |
ポートを追加できない(AddportExがない)、 あるいは、指定されたポートが見つからない。 |
|
-9 |
ポートの削除に失敗(DeletePortに失敗) |
|
-10 |
プリンタドライバの追加に失敗(AddPrinterDriverExに失敗) |
|
-11 |
プリンタドライバが追加できない(AddPrinterDriverExがない) |
|
-12 |
プリンタドライバの削除に失敗(DeletePrinterDriverExに失敗) |
|
-13 |
プリンタを開けない(OpenPrinterに失敗) |
|
-14 |
プリンタドライバフォルダを特定できない(GetPrinterDriverDirectoryに失敗) |
|
-15 |
ドライバファイルのコピーに失敗(ドライバファイルをGetPrinterDriverDirectoryのフォルダにコピー失敗) |
|
-16 |
ドライバは削除されたが、まだ古いドライバがロードされている。 ※完了するにはコンピュータの再起動が必要 |
|
-17 |
Spoolerサービスが動作していない |
|
-64 |
di.dllをロードできません。 ※di.dll : セットアップ処理を補助する処理 |
|
-65 |
レジストリへのアクセスに失敗しました。 |
|
-67 |
デバイスの削除に失敗しました。 |
|
-202 |
指定のオブジェクトがありません。 ※「オブジェクト」とは、ファイル、プリンタ、ドライバ、ポート、モニタをさす。 |
|
-301 |
VC2015ランタイムがありません。 |
|
-100 |
その他のエラー |
|
-101 |
その他のエラー(ファイルアクセス拒否等インストールスクリプト上のエラー) |
|
SpoolError |
スプールサービス状態チェック |
|
1 |
正常終了 |
|
0 |
スプールサービスが停止中 |
|
-1 |
スプールサービス状態の取得に失敗 |
|
VCRuntimeError32 |
VC++再頒布パッケージ(x86用)セットアップの戻り値 |
|
-1 |
セットアップは行われなかった |
|
-1以外 |
セットアップのプロセスの戻り値 |
|
VCRuntimeError64 |
VC++再頒布パッケージ(x64用)セットアップの戻り値 |
|
-1 |
セットアップは行われなかった |
|
-1以外 |
セットアップのプロセスの戻り値 |
|
ErrorMessage1 |
デバッグ情報1 |
|
ErrorMessage2 |
デバッグ情報2 |
インストール後にOSの再起動が必要か否かについて、以下のレジストリキーの値に文字列が存在する場合、再起動が必要と判定し「ReBoot=1」となります。
キー名:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager
値名:
PendingFileRenameOperations
このレジストリには、コンピュータの再起動後に Windows が置換する対象としてマーク付けしたファイルに関する情報が含まれています。
このため、PDF Driver以外のインストーラが動作したときやWindows Update後などにも文字列が設定されることがあります。
コマンドプロンプトから実行する場合、コマンドプロンプトは「管理者として実行」してください。
コマンド例:
AHPDFDriver80_setup.exe /VERYSILENT /SUPPRESSMSGBOXES RES"c:\logt\inst.txt"
セットアップのプロセスが終了したら、インストール処理は終了しています。
下記のレジストリで確認できます。
キー名
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\ {2AF1AEDE-97AE-4C4D-893A-C3181210CBD6}_is1
値名
UninstallString : アンインストーラのフルパス
コマンドプロンプトから実行する場合、コマンドプロンプトは「管理者として実行」してください。
コマンド例:
{アンインストーラのフルパス} /VERYSILENT /SUPPRESSMSGBOXES /NORESTART RES"c:\log\uninst.txt"
アンインストールのプロセスが終了したら、アンインストール処理は終了しています。