Работа без прав администратора: как пользователи, что мы можем сделать, чтобы приложения работали (которые требуют прав администратора)?

6428
Umber Ferrule

Мне было предложено задать это из-за следующего вопроса: почему большинство людей в мире Windows все еще не понимают, что работа с правами администратора глупа?

В глубине души мы все знаем, что работать в качестве администратора - безрассудно, но что мы можем сделать, чтобы смягчить боль (возможно, боль преувеличивает ее).

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

В приведенном выше вопросе было высказано предположение, что это не займет много времени:

... даже тогда 99% неправильно работающих приложений могут работать без прав администратора в течение не более 10 минут. - Оливер Гизен 20 июля в 15:28

Итак, что мы можем сделать или использовать для вовлечения в жизнь приложений с правами администратора? Существуют ли какие-либо конкретные приложения, которые просто отказываются? Буду признателен за любые конкретные примеры и опыт.

7

3 ответа на вопрос

6
Joey

Для приложений, которые прямо отказываются запускать Microsoft Application Compatibility Toolkit, может помочь, который позволяет вам определять исправления для отдельных приложений. Это включает в себя целый ряд прокладок, которые текущая база данных Compat уже использует (для Vista) для 5000 приложений. Мне удалось заставить одну программу работать с этим, но это было больше похоже на ковыряться в темноте, а не на защиту от ошибок.

Краткий взгляд на это предполагает, что это довольно много времени. Правильно ли я считаю, что стандартный анализатор пользователей (включенный в ACT) выглядит так, как если бы он был наиболее уместным для установления возражений приложений? Umber Ferrule 14 лет назад 0
Обычно это хорошее начало, да. Но, видимо, не улавливает всех причин. В одном случае, когда у меня была программа для работы с ACT, я в основном пробовал случайные прокладки, но, к сожалению, я нигде не получал большой помощи, что могло бы стать реальным решением. Joey 14 лет назад 0
5
Joel Coehoorn

Чаще всего «грех» совершается, когда приложение запускается от имени администратора, когда приложение хочет разрешения на запись в свою папку Program Files. Доступ для записи отключен в этой папке для стандартных пользователей по умолчанию.

Вы можете включить это в каждом конкретном случае с относительно простым изменением - просто щелкните правой кнопкой мыши по папке, выберите Properties, а затем на Securityвкладке щелкните Everyoneучетную запись и установите флажок, чтобы дать ей разрешения на запись. Но, конечно, это изменение также требует прав администратора (и файловой системы ntfs).

В качестве примечания: Starcraft делает это (либо с установкой, либо в более позднем патче) и временное решение на стороне пользователя, вероятно, совсем не так, как приложения должны это обрабатывать :-) Joey 14 лет назад 1
Однозначно: лучше всего написать приложение для игры по правилам, в первую очередь. Но, учитывая двоичные файлы приложений, которые нарушают правило, это лучшее решение, чем всегда работать в качестве администратора для всего. Joel Coehoorn 14 лет назад 2
4
GAThrawn

Второй наиболее совершенный грех - приложения, которые пишут в раздел LOCAL_MACHINE реестра Windows. Любое приложение может читать здесь, но для записи здесь нужны права администратора. Приложения должны сохранять свои пользовательские настройки только в разделе реестра CURRENT_USER, как обычный пользователь может написать здесь.

Если он записывает свои собственные данные конфигурации в LOCAL_MACHINE, то он, вероятно, делает это под записью с именем (или компанией) в HKEY_LOCAL_MACHINE \ Software \ AppName

Чтобы это исправить, вы можете щелкнуть правой кнопкой мыши раздел реестра (папку) с именем программного обеспечения и выбрать защиту, а затем назначить разрешения для вашей учетной записи пользователя или учетной записи «Все».

Для устранения проблем с приложениями, работающими от имени обычного пользователя, Sysinternals (теперь Microsoft) Process Monitor неоценим, это невероятно мощный инструмент, который позволяет вам отслеживать абсолютно все, что происходит на вашем ПК. Учебник по его использованию здесь не подходит, но вы захотите установить фильтр для интересующего вас приложения, а затем фильтр разрешения и доступа к ошибкам.

Отредактировано для исправления путаницы Process Monitor / Process Explorer

Я думаю, что вы имеете в виду Process Monitor - http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx Kevin Panko 14 лет назад 2
Вы абсолютно правы, не знаете, что там произошло, можете обвинить только в ошибке транспорта между мозгом и клавиатурой! GAThrawn 14 лет назад 0