У меня есть приложение, которое обращается к различным сторонним библиотекам. Первоначально, когда я выпустил свое приложение через ClickOnce, оно было размером около 22 МБ, и, поскольку это был первый выпуск, мне пришлось публиковать довольно много обновлений в течение первых нескольких месяцев, когда оно использовалось моей базой пользователей.
Это было слишком много данных для некоторых из моих пользователей, у которых в то время были довольно медленные соединения для передачи данных. Я должен был найти лучшее решение.
В итоге я создал фиктивное решение Visual Studio с именем My ClickOnce Application - Prerequisites . Из этого проекта я добавил все сторонние зависимости, необходимые для моего приложения, и добавил проект установщика MSI, который установил библиотеки в Windows GAC. После сборки установщика MSI я создал загрузчик и добавил его в Visual Studio для ClickOnce
В моем проекте приложения ClickOnce все, что мне нужно было сделать, это выбрать свой новый предварительный компонент в Visual Studio и установить для каждого из связанных dll-компонентов «Предварительные условия» в диалоговом окне «Файлы приложения» в VS.
Я думаю, что такая установка может работать для вас. Для более подробной информации по этому типу установки, проверьте ссылки, перечисленные ниже. Единственным серьезным недостатком этого подхода является то, что если вам нужно обновить стороннюю библиотеку, вам нужно будет распространить обновленную версию обязательного компонента. Скорее всего, это будет означать и удаление, и переустановку приложения ClickOnce, поскольку файлы библиотеки устанавливаются в качестве предварительных условий.
Дополнительная литература