metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2010-09-29 05:00 pm

Инсталляция окамла под виндой

Занимаюсь типичным местным вудуизмом - ставлю прогу из инсталлятора в виртуальной машине, проверяю, что она вообще работает, а потом пытаюсь ее запустить в стиле "xcopy deployment", т.е. копирую инсталлированную папку программы на другой комп и изучаю, что нужно для запуска.

Вообще подобная практика, конечно, сомнительна, особенно в свете толкаемых [livejournal.com profile] zelanton уверений, что во низкоуровневых внутренностях прикладным программистам разбираться запрещено. Но таким образом я набрал уже приличную коллекцию виндовых (а особенно портированных с линукса) программ, которые переживают без переинсталляций любые пертурбации с компами, переустановку виндов и железа, переезды между разными рабочими местами, носимые винты, итд

Так вот в окамле в таком случае оказалось, что там, мало того что пути пишутся в реестр, так еще и переменная окружения используется для поиска либ. С ходу не вижу, почему бы не сделать при отсутствии оных переменных и ключей реестра использование дефолтных значений вроде "папка_с_exe\..\lib\".
Т.е. что под виндами, что в линуксе авторы софта как-то очень уж надеются на стандартную инсталляцию. В некоторых особо сложных случаях это допустимо, но я обычно стараюсь делать прогу запускаемой, даже если психи ее просто скопировали, так проще жить как самому, так и пользователям.

[identity profile] vp.livejournal.com 2010-09-29 06:05 pm (UTC)(link)
инсталятор совершенно не обязан вам что-то сообщать :)

[personal profile] alll 2010-09-29 06:08 pm (UTC)(link)
но uninstall-manager категорически обязан это знать ;)

[identity profile] oldmann.livejournal.com 2010-09-29 06:25 pm (UTC)(link)
ребе, читайте внимательнее - дополнительное ПО uninstall manager фиксирует, что и куда программа копирует, что она пишет в реестр, как меняет переменные окружения. и проще единожды прогнать инсталлятор в ней, чем потом руками все недостающее копировать.