1

C++ アプリケーションから他のアプリケーションの修復を実行したい- でプログラムの修復オプションを手動で選択すると何が起こるかをプログラムで実行しWindows->Control Panel->Programます。

削除オプションについては、次のレジストリを検索できます。

  • KEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
  • HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall 64 ビット マシン上)

そして、を使用して、関数UninstallStringで実行する必要があるコマンドを見つけSystem()ます。

しかし、同様の方法で修復を実行するにはどうすればよいでしょうか? のようなプログラムのレジストリには、そのような位置はありませんRepairString

すべてのプログラムの一般的な方法を見つけたいです (もちろん、レジストリに情報を残したプログラムを意味します)。

追加の質問:たとえば、リストにあるアプリケーションにレジストリ エントリMsiEnumProductsExがない可能性はありますか?UninstallString

ps私が偉大なパットの投稿から取った削除オプションのレジストリ全体に関する情報:

Windows 用のプログラム バッチのアンインストールはありますか?

4

2 に答える 2

0

通常、インストール パッケージは MSI API http://msdn.microsoft.com/en-us/library/windows/desktop/aa372860(v=vs.85).aspxを使用して作成されます。

WIXは、MSI パッケージの作成に使用されます。http://wix.tramontana.co.hu/tutorial/getting-started から始めます

于 2013-10-21T18:48:11.097 に答える