Предоставить версию только для Предварительных условий в clickonce - PullRequest
1 голос
/ 04 декабря 2008

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

Спасибо Сунил Чаудхари

1 Ответ

1 голос
/ 04 декабря 2008

Установка необходимых компонентов не является частью ClickOnce. ClickOnce - это развертывание приложения .NET в профиле пользователя. Он не может запускать MSI-файлы, редактировать реестр и т. Д.

Существует много путаницы по этому поводу из-за того, как процесс развертывания работает в Visual Studio. В VS вы можете выбрать свои предварительные условия, и он создаст загрузочную установку для вас. Однако вся эта функция на самом деле не имеет ничего общего с ClickOnce, это просто быстрый способ связать ваши предварительные условия. Он даже не делает ничего умного с версионированием. Все, что он делает, это говорит: «Пожалуйста, установите это, прежде чем запускать нашу установку ClickOnce для приложения .NET». Это полностью зависит от пользователя.

Один из вариантов - написать собственный код, чтобы получить желаемое поведение. Я сделал это с помощью стороннего инструмента отчетности, который должен был запустить MSI-файл. После того, как мое приложение запустилось, я проверил реестр, чтобы увидеть, было ли установлено приложение, запросил пользователя, загрузил необходимые файлы в фоновом режиме и запустил установку. Серьезная боль, но выполнимая, если ваше приложение может изначально запускаться без предварительных требований. Однако имейте в виду ограничения безопасности. Многие установки требуют, чтобы пользователи были администраторами. Одним из больших преимуществ ClickOnce является то, что пользователи не должны быть администраторами.

...