2008-09-06 2 views
18

Я только что заметил, что Chromium был установлен в AppData как в Vista, так и в XP. Если Google это делает, и если другие приложения делают это, это связано с тем, что существует некоторая форма защиты? Должны ли мы писать установщики, которые делают то же самое, что и Google?Каковы преимущества установки программ в AppData, например Google Chrome?

ответ

21

В Windows по-прежнему отсутствует соглашение для установки для каждого пользователя.

  • Когда установщик спрашивает, следует ли устанавливать для текущего пользователя или всех пользователей, он действительно относится только к размещению ярлыков (меню «Пуск», «Рабочий стол»). Фактические файлы приложений по-прежнему идут в общесистемном %PROGRAMFILES%.
  • Собственный ClickOnce от Microsoft работает вокруг этого, создавая полностью нестандартный каталог %USERPROFILE%\Local Settings\Apps (%USERPROFILE%\AppData\Roaming в Vista/Server 2008) с файлами программ и данными конфигурации.

(я в недоумении, почему Microsoft не может добавить программу каталога для каждого пользователя файлов в Vista. Например, в OS X, вы можете создать ~/Applications и Finder даст соответствующую . значок приложения, как CrossOver и Adobe AIR автоматически использовать, что, по умолчанию на пользователя приложений Таким образом, никаких разрешений вопросы)

То, что вы, вероятно, должны делать:.. если пользователь не является администратором, установить в потребителе каталог; если они это сделают, дайте им оба варианта.

+0

Забавно, что вы должны упомянуть Adobe AIR, поскольку его система установки приложений повреждена в Windows, но не OSX и Linux. В Windows установщик AIR заблокирован для «установки для всех пользователей», что требует прав администратора для установки и обновления приложений AIR. – bzlm 2009-05-06 15:17:51

5

Насколько я могу судить, единственная причина, по которой Chrome устанавливается в папку «Данные приложения», заключается в том, что пользователи, не являющиеся администраторами, могут ее установить.

Установщик Chrome в настоящее время не позволяет пользователю выбирать, где приложение должно быть установлено. Не делайте этого - вместо этого дайте пользователю возможность выбора между пользовательским (где-то вроде App Data) и общесистемной (Program Files) установкой.

+2

Я согласен - дайте пользователям выбор. Из-за этого Chrome запрещен в нашей компании. – 2008-10-26 05:22:53

1

Установщик Chrome действительно должен разрешить глобальную установку (с возвышением) в дополнение к каждому пользователю. Я не хочу поддерживать установку для каждого пользователя; Я хочу иметь возможность централизованно управлять обновлениями и так далее. Chrome не позволяет этого.

При этом вариант установки для каждого пользователя довольно хорош, так как это означает отсутствие разрешений.

2

Откровенно говоря, мне еще предстоит увидеть первый установщик, который действительно позволяет устанавливать как для каждого пользователя, так и для каждой машины. Многие инсталляторы предлагают этот вариант в своем графическом интерфейсе, но параметр влияет только на то, где находятся ярлыки и т. Д. - бинарные файлы всегда для% ProgramFiles%.

На самом деле, довольно сложно создать пакеты установщика Windows, которые позволяют, по меньшей мере, использовать оба вида установки. С появлением UAC я бы сказал, что это невозможно: для пользовательских установок не требуется высота, для каждой установки машины. Но нужен ли пакет MSI для подъема, контролируется через бит в сводном информационном потоке - нет способа повлиять на ввод данных пользователя.

Независимо от того, подходит ли для пользователя или на машине лучший выбор для приложения. Однако для небольших пакетов я предпочитаю индивидуальные установки. Кроме того, что они немного удобны для пользователя, не требуя приглашения UAC или runas, они также сигнализируют пользователю о том, что установка не наносит большого вреда компьютеру (если он не является администратором).

4

Windows 7 и Windows Installer 5.0 теперь предоставляют реальные возможности установки для каждого пользователя.

http://msdn.microsoft.com/en-us/library/dd408068%28VS.85%29.aspx

Вы вроде может фальсифицировать его в Vista, и XP с помощью ~/AppData/Local или эквивалент, как Chrome делает. Сама Microsoft использует это для установщиков ClickOnce.

Так что, по крайней мере, на Windows 7 и за ее пределами это просто.

6

Одним из преимуществ, о которых никто не упоминал, являются автоматические обновления. У Chrome есть процесс обновления, который работает все время и сразу же обновляет вашу хромированную установку.

Я думаю, что их прецедент нестандартен. Им необходимо как можно скорее исправить проблемы с уязвимостью (так как это браузер). Ожидание админов, одобряющих каждое обновление по всей компании, просто недостаточно.

0

Я не вижу ничего в% ProgramFiles% на Win7. Похоже, Chrome должен быть установлен для каждого пользователя на машине.

Возможно, истинная причина этого - подделка нескольких установок Chrome несколькими раз! Таким образом, это первый браузер в мире!

Смежные вопросы