Пользователь
Сообщения: 92
Благодарности: 21
|
Профиль
|
Отправить PM
| Цитировать
Это можно реализовать средствами msi.
То-есть, в рамках процесса установки, запустить программу. Это сделает работу программы не самостоятельной, а частью процесса установки. Естественно инсталлятор в данном случае будет находиться в состоянии ожидания успешного завершения. Следующим шагом завершения работы инсталлятора необходимо сделать отмену, то-есть деинсталл.
В теории (зависит от программы и того, как сделан ее родной инсталлятор), довольно легко сделать msi, который будет молча все это проделывать, а соответственно для пользователя это выглядит как обычный файл, на который можно 2 раза мышкой щелкнуть и после некоторого ожидания получить работающую программу.
Естественно, все это подразумевает в перую очередь наличие msi, а не exe, а значить, если его нет, дополнительные телодвижение по его созданию.
Можно сделать легче и не редактировать msi вручную. Если родной инсталлятор не msi, но поддерживает комманды де инсталляции, то сгодиться любой способ вроде nsis`а или того же AutoIT (не уверен, но в теории они должны иметь функцию ожидания выполнения), тогда все выглядет просто: инталл-запуск_с_ожиданием_деинсталл. И ты получишь exe.
Вообще-то, если уж на то пошло, деинсталяцию с коммандной строки поддерживает любая программа, которая кошерно устанавливается на операционных системах, веть ты же ее видешь в оснастке установка\удаление программ.... другое дело, что тут еще надо разбираться как это делается... например wmic... (*шепчет на ушко*: можешь подсмотреть унинсталл стриг в реестре)
Если нет прав локального админа, можно слелать коммандный сценарий с ранасом, но придеться его зашифровать, чтоб пользователь не подсмотрел пароль, опять же 3 комманды.
Но все же странная необходимость, установка, только для того, чтобы немножко поработать. Долго ждать начала работы, долго ждать ее завершения (все относительно конечно, разные программы делают инсталл\деинстал и по 1 мин и по 30 мин). Кроме того, то что ты хочешь, подразумевает наличия у пользователя прав локального админа, а это уже совсем не по феншую. Крайне не рекомендую.
Если ты опишешь ситуацию... для чего все это, то возможно тебе подскажут как это реализовать более правильно....
|