При разработке выключаете ли вы UAC в Vista? - PullRequest
8 голосов
/ 24 сентября 2008

Я не обновлялся до Vista до мая или около того, и одна из вещей, которые я всегда слышал от разработчиков, которых я знаю в реальной жизни, это «первое, что вы должны сделать, это отключить эту чушь UAC»

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

Наконец, я полагаю, что это обеспечивает некоторые лучшие практики. Раньше я разрабатывал каждый веб-сайт в Windows непосредственно в inetpub \ wwwroot (Visual Studio .NET 2003 более или менее требовал этого), но сейчас я разрабатываю их где-то еще, потому что UAC clickfest - это кошмар. Я полагаю, что это способ Microsoft сказать: «Вы должны действительно делать это так».

В качестве другой аналогии - если вы написали веб-приложение, которое прекрасно работает на XP и 2000, но требует отключения 50 различных функций безопасности Server 2003, реальным решением может быть просто исправить приложение так, чтобы для этого не требуется отключать функции безопасности.

Но теперь мне приходится работать с приложением, которое действительно НЕ предназначено для разработки вне inetpub / wwwroot, и поэтому UAC - это действительно неприятность. Это выходит за рамки проекта, чтобы исправить это. Я хочу придерживаться своего оружия и оставить UAC включенным, но я также беспокоюсь о том, чтобы автопилот нажимал «Да» или «Разрешить» три раза каждый раз, когда мне нужно изменить файл.

Я просто нахальный? Большинство разработчиков на Vista оставляют UAC включенным или выключенным? А для описанного выше случая есть ли лучший / более простой способ?

Ответы [ 23 ]

12 голосов
/ 24 сентября 2008

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

(Надеюсь, ваш тестовый компьютер! = Ваш девайс, верно?)

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

8 голосов
/ 28 сентября 2008

Я кодирую в стандартной учетной записи пользователя с включенным UAC.

5 голосов
/ 24 сентября 2008

Нет, я не закрываю UAC.

Программирование на C # winform и web с IIS. База данных является progresql. Не нужно беспокоиться о UAC. Для некоторых программ требуется только 1 авторизация, а это не имеет большого значения.

3 голосов
/ 24 сентября 2008

Я продолжаю UAC. Я считаю полезным разрабатывать в среде, аналогичной моему конечному пользователю. Таким образом, если я напишу какой-либо код, который пытается читать / писать из ограниченных областей, я узнаю об этом быстрее.

2 голосов
/ 24 сентября 2008

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

Через некоторое время происходят две вещи:

  1. Вы не так много настраиваете.
  2. Вы немного привыкли к подсказке.

На этом этапе UAC уже не так уж плох. У меня включен UAC, и я видел только одну или две подсказки за последние пару недель. Это верно в отношении идеального: если я вижу подсказку, которую я не ожидал, я знаю, что я действительно хочу продолжить.

Я буду утверждать, что 2-й эффект побеждает цель. Что они должны сделать, так это отключить UAC по умолчанию, но только на первый месяц. После первого месяца вам предложат включить UAC, где по умолчанию для того, кто на самом деле ничего не читает, это включить его. Тогда люди не будут раздражены во время периода их установки, и легче будет сделать осознанный выбор относительно того, что вы хотите делать с UAC.

1 голос
/ 24 сентября 2008

Разработка или не разработка - это было первое, что я сделал после установки Vista. В лучшем случае это казалось неприятной неприятностью.

1 голос
/ 24 сентября 2008

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

Если все ваши пользователи используют Vista с отключенным UAC, я думаю, что вы можете отключить ее, но это, вероятно, нереально - или нецелесообразно. На другом конце спектра наши приложения используются огромным количеством людей с каждой возможной версией и конфигурацией Windows начиная с Win2k и, конечно, включая Vista и Server 2008. Поскольку мы являемся независимым поставщиком ПО, не контролирующим наших пользователей В средах или над политиками, управляющими их привилегиями и администрированием, я всегда оставляю UAC включенным - хотя иногда это раздражает меня без всяких оснований - потому что тогда я узнаю о любых возможных проблемах, которые могут возникнуть у людей, использующих наши приложения раньше, чем позже.

Отказ от ответственности: большая часть моего реального времени написания кода тратится на Windows XP, хотя у меня под столом стоит 64-битная тестовая машина Vista, которую я использую ежедневно для тестирования. Обычно я использую эту коробку примерно в 20-30% случаев.

1 голос
/ 24 сентября 2008

Я использую Windows 2008 на своей рабочей станции, следуя советам на http://www.win2008workstation.com/wordpress/, и она отлично работает для меня. Я не помню, чтобы отключил UAC, но, конечно, я не перенес его, поэтому я думаю, что он выключен.

Как уже говорили другие, вам необходимо иметь тестовые [виртуальные] машины, настроенные как можно ближе к тем, которые будут у ваших пользователей, чтобы у вас не было никаких сюрпризов при развертывании вашего приложения.

1 голос
/ 24 сентября 2008

Такие службы, как Microsoft SQL Server, работают с правами администратора. Visual Studio с другой стороны нет. Как и большинство инструментов разработчика.

Я интенсивно использую виртуальные машины, чтобы 1) убедиться, что моя среда разработки всегда безопасна, и 2) , чтобы протестировать программное обеспечение, которое может покинуть мою машину FUBAR. И 3) , чтобы ограничить время простоя, восстанавливая мою среду разработки, "на случай, если я сделаю что-то идиотское, например, на мгновение выйдет из строя и запустит вложение из письма" :)

1 голос
/ 24 сентября 2008

Я оставляю его включенным, но он настроен на автоматическое повышение привилегий при необходимости. Это тонкое различие, но, тем не менее, различие.

...