Как сделать «динамический» клик один раз предпосылкой - PullRequest
2 голосов
/ 14 октября 2010

В частности, SQL Express.У меня есть внутреннее приложение winform, которое, если у них есть ноутбук, должно установить SQL Express, чтобы включить определенные функции.Прямо сейчас я устанавливаю его для всех, так как он не «обижает» пользователей настольных систем вне времени, которое требуется.Я хотел бы, чтобы он установил SQL после того, как обнаружит, что они на ноутбуке.

С Click Once, какие у меня варианты?Из того, что я вижу, мне нужно снять флажок SQL Express в качестве предварительного условия и обработать его вручную в своем коде запуска.Как / Где бы я это сделал?

Есть ли лучший способ?Если я поменяю модели развертывания, не станет ли компромисс значительным увеличением усилий / времени для обновлений?

1 Ответ

4 голосов
/ 14 октября 2010

Предварительные условия являются наиболее неправильно понятой частью ClickOnce.ClickOnce - это просто технология, которая загружает и синхронизирует файлы между клиентом и сервером.Загрузчик (setup.exe), который создает Visual Studio, не имеет ничего общего с ClickOnce, кроме запуска приложения ClickOnce после его завершения.Это сбивает с толку, потому что Visual Studio объединяет все вместе, поэтому все думают, что они связаны.

Если вы не хотите, чтобы у всех был SQL Express, удалите его из своих предварительных требований Visual Studio.Оттуда вы можете обрабатывать это вручную в своем коде, пока ваше приложение может запускаться без установленного SQL Express.При запуске приложения вы можете проверить реестр, чтобы увидеть, установлен ли SQL Express, затем загрузить его и запустить установщик.Я сделал это с помощью установщика Crystal Reports, и все прошло хорошо.

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