Пропустить установку определенных действий на основе условий - PullRequest
2 голосов
/ 22 февраля 2011

Я совершенно новичок в установщике Windows, поэтому, пожалуйста, будьте осторожны!

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

Я попытался добавить условие запуска установщика Windows, при котором выполняется поиск определенного идентификатора компонента. Однако, когда я пытаюсь установить, появляется сообщение об ошибке и программа установки завершает работу - ничего не устанавливается. Неважно, установлен драйвер или нет - я получаю тот же результат.

Есть какие-нибудь подсказки?

Заранее спасибо!

1 Ответ

1 голос
/ 22 февраля 2011

Условие запуска останавливает установку, если условие не выполняется.Это не решение для того, что вам нужно.

Вы можете попытаться определить, установлен ли драйвер, с помощью поиска: http://msdn.microsoft.com/en-us/library/aa367579(VS.85).aspx

Вы также можете использовать немедленное настраиваемое действие, которое выполняет это.поиск и устанавливает свойство установщика на основе результатов поиска.Это настраиваемое действие требует написанного вами кода.Это может быть Win32 DLL:

http://msdn.microsoft.com/en-us/library/aa368338(VS.85).aspx

http://msdn.microsoft.com/en-us/library/aa367457(VS.85).aspx

http://www.advancedinstaller.com/user-guide/serial-number-validation-dll.html (пример DLL C ++)

илиVBScript: http://msdn.microsoft.com/en-us/library/sx7b3k7y(VS.85).aspx

Таким образом, вы можете использовать пользовательское свойство, чтобы обусловить свое настраиваемое действие.Например, если свойство пустое, драйвер должен быть установлен.Таким образом, ваше пользовательское действие может использовать условие:

NOT MY_CUSTOM_PROPERTY

, где "MY_CUSTOM_PROPERTY" - это свойство, которое вы устанавливаете на основе поиска.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...