2009-02-06 2 views
0

У меня есть программа, которую я хочу использовать как автозапуск. Я хочу, чтобы он мог делать три вещи. Чтобы проверить, установлена ​​ли какая-либо конкретная программа, если это не так, нужно проверить, есть ли у пользователя возможность ее установить. Во-вторых, если программа установлена, представите пользователю возможность запускать ее и деинсталлировать, в-третьих, предоставить пользователю возможность просмотреть readme.Запуск установщика или проверка наличия программы

Как я могу получить программу для проверки и проверить, установлена ​​ли еще одна программа? Как запустить программу установки/удаления из другой программы?

Спасибо.

P.S. Я могу изменить установщик.

ответ

1

Предполагая, что ваша программа и вы строите установку, я просто хочу, чтобы ваш установщик запишился в раздел реестра, а затем проверьте этот ключ в своей программе автозапуска.

Для запуска программы установки из программы автозапуска просто запустите файл setup.exe или используйте MSIEXEC для MSI.

+0

Это просто изобретает колесо. Почему бы не использовать существующий поддерживаемый механизм? –

+0

Это проще, работает для инсталляторов, отличных от MSI, и я бы не стал рассматривать раздел реестра «неподдерживаемый»;) – saschabeaumont

0

Предполагая, что ваша установка основана на Windows Installer, все, что вам нужно, это here.

+0

Я понятия не имею, как использовать это, чтобы узнать, установлена ​​ли программа или нет. – Malfist

+0

Вы можете использовать функцию MsiEnumProductsEx и передать ей код продукта для интересующей вас программы. –

+0

MsiQueryProductState также, похоже, делает трюк –