Установка программ?

Mixon

День добрый, возникла вот такая задача:написать оболочку для установки\обновления программ на компе пользователя, программы(зоопарк, от аксеса до приложений).Вопрос вот в чем есть ли способ сделать следующее:1) запустить установку приложения (открыто\тихо)2) дождаться окончания установки3) понять в куда была установлена программа(путь к папке)ЗЫ вижу только один вариант, установить программу, после чего пойти искать ее в системе :(ЗЫЫ может от установщика можно получить данные о процессе инсталляции. Заранее спасибо!
4 ответа

Mixon

Нет никакого единого механизма, только разбираться со своим зоопарком программ, конкретизировать ТЗ и делать.1. Да хоть Process.Start может подойти, но нужно разбираться умеет ли инсталлятор тихую установку, какие аргументы принимает,...2. Опять же следить за процессом и ждать когда он завершится3. Тут где-то человек уже искал в реестре путь установки, часть приложений так можно найти. В целом можно действовать по принципу программы Process Monitor. Следить в какие папки чего пишется инсталлятором и так определять путь установки. Части программ могут раскидываться по разным папкам, некоторые с собой ставят сторонние компоненты, так что не совсем понятно что тут подразумевать под путём установки.Возможно стоит посмотреть в сторону настройки локального WSUS и устанавливать/обновлять при помощи Local Update Publisher какого-нибудь.


Mixon

Mixon, у вас виндовый домен? Если да, то копать нужно в сторону групповых политик.


Mixon

зачем нужен искать путь установки, когда его можно предопределить. в 99% случаев в MSI пакете путь задается переменной INSTALLDIRесли запустить установки MSI пакета командой
>msiexec.exe /i "myprogram.msi" INSTALLDIR="C:\******************" /q
то программа тихо установится в заданную папку, о которой вам будет всё известно.можно и получить значение этой переменной из MSI пакета, как это сделать программно я хз, но такие утилиты как orca это делают. Значение будет не абсолютным, по этому нужно это учитывать.


Mixon

Mixon,Ты админ? Зачем программисту такие задачи?У дмина ести питон, батники и AD.