Инсталл/Деинсталл

Здесь можно оставить пожелание относительно функций, которых в программе нет, но которые вам хотелось бы в ней видеть.

Модератор: motyara

Аватара пользователя
Qwertiy
Охотник за багами
Сообщения: 1199
Зарегистрирован: Вс янв 31, 2010 12:12 am

Сообщение Qwertiy »

Max Diesel писал(а):Кнопку там я такую добавить не могу (окно выводится средствами инсталлятора InnoSetup), а вот реализовать в программе "невидимость" для инсталлятора можно, но такая ситуация сулит проблемы в случае попытки обновления-таки запущенной копии... а потому смысл данной модификации мне представляется туманным.
Жаль. Смысл был именно в осознанном игнорировании, а не в отсутствии проверки. А то такого можно наделать...

А что-нибудь типа вызова

Код: Выделить всё

uncomsetup0.96(build773).exe /ignorerunninguncom
добавить тоже не получится?
Аватара пользователя
Max Diesel
Автор программы
Сообщения: 3431
Зарегистрирован: Пт окт 12, 2007 3:26 pm
Контактная информация:

Сообщение Max Diesel »

Qwertiy писал(а):А что-нибудь типа вызова

Код: Выделить всё

uncomsetup0.96(build773).exe /ignorerunninguncom
добавить тоже не получится?
Как я уже сказал, окно (и запрос и обработка запроса) выводится средствами InnoSetup. Можете написать автору InnoSetup...
Аватара пользователя
Qwertiy
Охотник за багами
Сообщения: 1199
Зарегистрирован: Вс янв 31, 2010 12:12 am

Ярлык на рабочем столе

Сообщение Qwertiy »

При автоматическом обновлении программы ярлык перезаписывается и его положение на рабочем столе изменяется. Можно это как-то поправить?
avmaksimov
Сообщения: 405
Зарегистрирован: Чт ноя 08, 2007 9:29 am
Откуда: Москва
Контактная информация:

Re: Инсталл/Деинсталл

Сообщение avmaksimov »

А у меня вот какой вопрос на эту тему. На флешке есть портабельная версия. Так вот, при обновлении, UC установился на компьютер, с которого запускал (пути ярлыка указывали на флешку). Кроме того, при портабельной версии по идее не нужно делать повышение прав для установщика (в идеале что-то типа распаковки).
С уважением, Андрей.
Аватара пользователя
Max Diesel
Автор программы
Сообщения: 3431
Зарегистрирован: Пт окт 12, 2007 3:26 pm
Контактная информация:

Сообщение Max Diesel »

Qwertiy писал(а):При автоматическом обновлении программы ярлык перезаписывается и его положение на рабочем столе изменяется. Можно это как-то поправить?
Полагаю, что InnoSetup удаляет старый ярлык и создает новый (причем такой же)... единственный вариант - сделать так, чтобы InnoSetup при определенном параметре командной строки позволял снять флажок создания ярлыка. Однако я попробовал, но не смог убедить его действовать именно так. Если есть идеи относительно того, как это растолковать инсталлятору InnoSetup, то я с радостью их добавлю в код.
avmaksimov писал(а):А у меня вот какой вопрос на эту тему. На флешке есть портабельная версия. Так вот, при обновлении, UC установился на компьютер, с которого запускал (пути ярлыка указывали на флешку).
И в этом плане та же проблема, что и в комментарии, расположенном тремя строками выше - нужно передать в инсталлятор параметр, который бы позволил по умолчанию снять флажок создания ярлыка. Если есть идеи относительно того, как это растолковать инсталлятору InnoSetup, то я с радостью их добавлю в код.
avmaksimov писал(а):Кроме того, при портабельной версии по идее не нужно делать повышение прав для установщика (в идеале что-то типа распаковки).
А разве запрашивается повышение прав? Если не ошибаюсь, оно уже лет пять как отключено...
Аватара пользователя
Qwertiy
Охотник за багами
Сообщения: 1199
Зарегистрирован: Вс янв 31, 2010 12:12 am

Сообщение Qwertiy »

Max Diesel писал(а):А разве запрашивается повышение прав? Если не ошибаюсь, оно уже лет пять как отключено...
В Windows 7 запрашивается, в XP - нет. Вероятно причина в том, что манифест содержит это требование, соответственно до Висты оно игнорируется...
Аватара пользователя
Max Diesel
Автор программы
Сообщения: 3431
Зарегистрирован: Пт окт 12, 2007 3:26 pm
Контактная информация:

Сообщение Max Diesel »

Qwertiy писал(а):
Max Diesel писал(а):А разве запрашивается повышение прав? Если не ошибаюсь, оно уже лет пять как отключено...
В Windows 7 запрашивается, в XP - нет. Вероятно причина в том, что манифест содержит это требование, соответственно до Висты оно игнорируется...
В Windows 8 запрос о повышении тоже отсутствует (проверено из-под пользовательской учетной записи, но при отключенном UAC)...
Аватара пользователя
Qwertiy
Охотник за багами
Сообщения: 1199
Зарегистрирован: Вс янв 31, 2010 12:12 am

Сообщение Qwertiy »

Max Diesel писал(а):В Windows 8 запрос о повышении тоже отсутствует (проверено из-под пользовательской учетной записи, но при отключенном UAC)...
А при админской и включенном? Кажется, один из уровней позволяет требовать привилегии только если они доступны...
Аватара пользователя
Max Diesel
Автор программы
Сообщения: 3431
Зарегистрирован: Пт окт 12, 2007 3:26 pm
Контактная информация:

Сообщение Max Diesel »

Qwertiy писал(а):А при админской и включенном? Кажется, один из уровней позволяет требовать привилегии только если они доступны...
Действительно, администраторская учетная запись при UAC выдает запрос, и это несмотря на то, что пользовательская при UAC запускает инсталлятор без запроса.
Аватара пользователя
Qwertiy
Охотник за багами
Сообщения: 1199
Зарегистрирован: Вс янв 31, 2010 12:12 am

Сообщение Qwertiy »

Max Diesel писал(а):Действительно, администраторская учетная запись при UAC выдает запрос, и это несмотря на то, что пользовательская при UAC запускает инсталлятор без запроса.
Я думаю, пусть так и остаётся, это вроде не должно никому мешать :)
avmaksimov
Сообщения: 405
Зарегистрирован: Чт ноя 08, 2007 9:29 am
Откуда: Москва
Контактная информация:

Re:

Сообщение avmaksimov »

Max Diesel писал(а):
Qwertiy писал(а):При автоматическом обновлении программы ярлык перезаписывается и его положение на рабочем столе изменяется. Можно это как-то поправить?
Полагаю, что InnoSetup удаляет старый ярлык и создает новый (причем такой же)... единственный вариант - сделать так, чтобы InnoSetup при определенном параметре командной строки позволял снять флажок создания ярлыка. Однако я попробовал, но не смог убедить его действовать именно так. Если есть идеи относительно того, как это растолковать инсталлятору InnoSetup, то я с радостью их добавлю в код.
avmaksimov писал(а):А у меня вот какой вопрос на эту тему. На флешке есть портабельная версия. Так вот, при обновлении, UC установился на компьютер, с которого запускал (пути ярлыка указывали на флешку).
И в этом плане та же проблема, что и в комментарии, расположенном тремя строками выше - нужно передать в инсталлятор параметр, который бы позволил по умолчанию снять флажок создания ярлыка. Если есть идеи относительно того, как это растолковать инсталлятору InnoSetup, то я с радостью их добавлю в код.
avmaksimov писал(а):Кроме того, при портабельной версии по идее не нужно делать повышение прав для установщика (в идеале что-то типа распаковки).
А разве запрашивается повышение прав? Если не ошибаюсь, оно уже лет пять как отключено...
Идея есть: заключается она к сожалению в дублировании кода Inno Setup. По работе тоже активно используем и без него никак. Итак для параметра есть Check - это функция (хотя вроде бы и переменную можно подсунуть), которая определяет, должна ли данная строка выполняться.
Соответственно, можно сделать две строки, где прописать CheckABC и not CheckABC, где и учитывать, портабельная версия или нет.
С ярлыком сложнее... кроме ручной проверки из dll ничего не приходит на ум... Но я бы предложил Qwertiy лучше создать свой ярлык, а при установке (специально сделать ее) снять галочку с установки ярлыка на рабочем столе или где-то еще. Тогда при автообновлении (тихой установке) инсталлятор не будет спрашивать ничего и оставит старые параметры, т.е. без ярлыка. Тогда и ярлык сохранится.
Касательно админ.записи - вроде бы не критично лично для меня и надеюсь для остальных... Но ради перфекционизма...
С уважением, Андрей.
Аватара пользователя
Max Diesel
Автор программы
Сообщения: 3431
Зарегистрирован: Пт окт 12, 2007 3:26 pm
Контактная информация:

Сообщение Max Diesel »

avmaksimov писал(а):Идея есть: заключается она к сожалению в дублировании кода Inno Setup. По работе тоже активно используем и без него никак. Итак для параметра есть Check - это функция (хотя вроде бы и переменную можно подсунуть), которая определяет, должна ли данная строка выполняться.
Соответственно, можно сделать две строки, где прописать CheckABC и not CheckABC, где и учитывать, портабельная версия или нет.
Благодарю за информацию, я как раз тоже этот параметр обнаружил. Предположительно в следующих билдах ситуация будет обрабатываться корректно (но не раньше чем через один, так как запуск с ключом "portable" будет лишь в следующем билде).
avmaksimov писал(а):С ярлыком сложнее... кроме ручной проверки из dll ничего не приходит на ум... Но я бы предложил Qwertiy лучше создать свой ярлык, а при установке (специально сделать ее) снять галочку с установки ярлыка на рабочем столе или где-то еще. Тогда при автообновлении (тихой установке) инсталлятор не будет спрашивать ничего и оставит старые параметры, т.е. без ярлыка. Тогда и ярлык сохранится.
Касательно админ.записи - вроде бы не критично лично для меня и надеюсь для остальных... Но ради перфекционизма...
В этом плане все оказалось проще, чем по первому пункту. Проблему решает использование флага "checkedonce". Теперь (на этот раз уже со следующего билда, а не с послеследующего) создание ярлыка повторно производиться не будет.
avmaksimov
Сообщения: 405
Зарегистрирован: Чт ноя 08, 2007 9:29 am
Откуда: Москва
Контактная информация:

Re: Инсталл/Деинсталл

Сообщение avmaksimov »

Про "checkedonce" я и имел в виду, что ставит пользователь один раз)) Забыл, что это отдельный флаг.
С уважением, Андрей.
Ответить