NSIS-загрузка и распаковка zip-файла из интернета
Я хотел бы создать установщик NSIS, который во время процесса установки проверяет на www, есть ли более новая версия приложения (номер). Если в сети существует более новая версия, чем версия, предоставленная установщиком witch, установщик должен загрузить zip-файл приложения, распаковать его и установить загруженное приложение вместо приложения, предоставленного установщиком.
вопросы:
- как загрузить файл из интернета (www)?
- как распаковать загруженный zip-файл?
3 ответов
в качестве дополнения к ответу Стью очень важно отметить, что ZipDLL, в то время как отличный плагин, выпущен под GPL. Если вы выпускаете коммерческий продукт, вы не можете легально включить его в свой продукт. Кроме того, единственная доступная копия требует что вы изменяете источник, который включает разделы "модификация" GPL.
Nsisunz выпускается под чрезвычайно открытой лицензией - просто включите текст лицензии, показанный на странице источника, чтобы распространить его, и не забудьте отметить любую прямую модификацию в источнике.
немного поздно на вечеринку, но теперь (с новыми окнами) в PowerShell есть много полезных функций. Один из них делает не-хлопотную распрессовку .сжатый файл. Единственным недостатком (для меня, по крайней мере) является то, что невозможно избежать извлечения структуры каталогов (сгладить файлы). В противном случае это легко:
powershell.exe Expand-Archive <filename> <target_dir>