0

all/ アプリがあります。アプリのインストーラーは InstallShield ( msi プロジェクトではありません) によって作成されます。アプリをアンインストールする必要があり、アンインストーラーが終了するまで待ちます。

レジストリ キー HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall{MyAppGuid}, UninstallString を読み取り、アンインストーラーの起動を試みます

私の場合、UninstallString = "C:\Program Files\InstallShield Installation Information{9F2A3D76-7785-492F-89E5-3F0FE2D205DC}\setup.exe" -runfromtemp -l0x0419 -removeonly

ただし、cmd.exe「start /wait {UninstallerString}」では、アンインストーラーが終了するまで待機しません。アンインストーラーは同じ一時的なexeを実行し、すぐに終了したと思います。しかし、どうすれば問題を解決できますか? 何か案が??

4

1 に答える 1

1

ここ/clone_waitに見られるように、Installshield は問題を解決するスイッチをある時点で追加しました:

This parameter indicates that the original setup should wait for the cloned setup process to complete before exiting.

アンインストール文字列は次のようになります。

UninstallString = "C:\Program Files\...\setup.exe" -runfromtemp -l0x0419 -removeonly /clone_wait

-clone_waitおそらく動作しますが、私はそれをテストして使用しました/clone_wait

于 2015-07-27T20:30:36.160 に答える