рекомендации по выпуску библиотеки DLL Microsoft в программе установки

StackOverflow https://stackoverflow.com/questions/17825

Вопрос

Я работаю над установкой, которая хочет включить библиотеку DLL Microsoft.Web.Services3 (WSE 3.0).Однако мне обычно не нравится включать библиотеки DLL Microsoft в наши установки, за исключением распространяемых файлов Microsoft.От Microsoft доступен как установочный пакет разработчика, так и повторный список.

Итак, в качестве наилучшей практики, должен ли я включить единственную библиотеку DLL в свою установку или направить их к одной из установок WSE 3.0 (при условии, что она еще не установлена)?

Это было полезно?

Решение

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

Как правило, я бы предпочел пакет redist, поскольку это гарантирует, что он правильно "зарегистрирован" в системе, т.е.если вы устанавливаете более новую версию redist, она обновляется (например, DirectX) или не перезаписывается, если это более старая версия (также как DirectX).

Другие советы

Проверьте в программе установки, установлен ли WSE 3.0, и если это не так, предупредите пользователя и отмените установку, если она продолжается в обычном режиме.Я бы не включал библиотеку DLL в ваш установочный пакет, потому что она может довольно быстро устареть, и я не знаю, позволит ли это лицензионное соглашение.

Я полагаю, что лицензионное соглашение MS запрещает вам распространять MS-код, если только он не находится в распространяемом пакете.

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

Если вы не включаете его, вам следует, по крайней мере, дать на него ссылку непосредственно на вашем сайте или попросить вашего установщика открыть для него веб-браузер (или даже загрузить его автоматически).Или, еще лучше, включите распространяемый файл в свой пакет программного обеспечения.

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

Спасибо за предложения / комментарии!После борьбы с настройкой установщика Windows я нашел лучший способ включить повторный список WSE30 и открыть диалоговое окно, если он не установлен.

Я знаю, что это не лучшая практика (и противоречит лицензионному соглашению Microsoft, как упоминалось) - просто включать DLL, поэтому мне показалось странным, что он пытался включить WSE DLL вне redist, особенно когда redist зарегистрирован в программе установки (он отображается как предварительный запрос в разделе свойства).

Еще раз спасибо.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top