Страница 1 из 4
ProgramFiles, UAC, права Администратора...
Добавлено: 10.03.2012 10:32:04
vitaly_l
При попытке инстолятора записать в ProgramFiles UAC требует права администратора...
Поискал код нашёл сделал. Теперь UAC спрашивает и затем устанавливает в ProgramFiles.
Но теперь возникла другая проблема.
Проинсталированная: программа - без прав администратора перестала работать (не может перезаписать обыкновенный ini),
а раньше если устанавливал в несистемную директорию, то работала....
Это как-то связано с ProgramFiles и правами администратора.
Однако, если принудительно, каждый раз при запуске спрашивать и давать права администратора, то работает...
Вопрос: Как, при создании директории: "NewDirectory", установить права (типа "для всех") на создаваемую в ProgramFiles директорию?.
Re: ProgramFiles, UAC, права Администратора...
Добавлено: 10.03.2012 11:05:13
Vadim
vitaly_l писал(а):Это как-то связано с ProgramFiles и правами администратора.
По ауре Вашего раздражения вижу, что Вы используете Windows 7 (или Vista, что ещё хуже).

Попробуйте на каталог с программой дать права обычного пользователя ручками, это Вас ненадолго успокоит. Программно этого делать не надо, просто категорически не надо, только ручками.
А вообще, с такими вопросами надо либо к Биллу Гейтсу обращаться, либо, если Вы живёте в России, сразу к президенту Путину.

Re: ProgramFiles, UAC, права Администратора...
Добавлено: 10.03.2012 11:19:58
NTFS
Решение:
В Program Files устанавливать только неизменяемые бинарные данные, а настройки и прочее хранить в каталогах пользователя (/home или C:Users).
Добавлено спустя 1 минуту 46 секунд:
И Билл Гейтс тут ни при чем, он наооборот наконец-то привел архитектуру в порядок. Проблема в том, что за два десятка лет выросло целое поколение, считающее, что хранить данные в Program Files - это нормально. В терминах Unix - никто не кладет настройки в /usr, для этого есть /var, на крайняк - /etc
Добавлено спустя 2 минуты 9 секунд:
В общем, изучайте Unix-системы, это очень полезно, даже если под них ничего не разрабатываете.
Re: ProgramFiles, UAC, права Администратора...
Добавлено: 10.03.2012 11:32:26
vitaly_l
Я так и думал...
Теперь понятно, спасибо...
Выросло целое поколение...
Интересная мысль....
А в чём разница между директориями?
Так вся информация ВИЗУАЛЬНО храниться в одном месте,
а по Вашему вся информация ВИЗУАЛЬНО хранится в разных местах...
А диск один и тот-же...
AppData - это для изменяемых файлов?
Или нужно в Мои документы?!...
А если крос-платформенная, то как разобраться?
А если БлинГейтс - название AppData поменяет??? Где искать???
Не вижу смысла... Зачем писать в разные директории????!
Вадим прав - это коварная политика... чуть неуследил за БлинГейтсом и всё твоя программа больше не ликвидна...
Может кто разумно объяснить?
Зачем писать в разные директории????!
В любом случае: Всем большое человеческое СПАСИБО!
.
Re: ProgramFiles, UAC, права Администратора...
Добавлено: 10.03.2012 11:56:55
Vadim
vitaly_l писал(а):Зачем писать в разные директории????
Два разных подхода к хранению - Windows и Unix. В Windows - всё в одном винигрете - и программа, и настройки, и данные, и временные файлы. В Unix - каждый сверчок знай свой шесток - в одном каталоге только программы, в другом только данные, а в третьем - только настройки.

А вообще, нужно в домашнем каталоге пользователя (каждого) хранить настройки програм, т.к. у разных людей - разные предпочтения. Всех под одну гребёнку не причешишь.
Re: ProgramFiles, UAC, права Администратора...
Добавлено: 10.03.2012 12:20:29
vitaly_l
УЖАС!!! 
Диск-то, один и тот же...
Этим перераспределением - только лишний мусор на диске создаётся.
Порядок - можно и в директории программы создать, а вот в головах создателей систем...
Вырасту - всем в глаз дам! Достали УЗУРПАТОРЫ! Я им устрою кузькину мать...
Почему всех сверчков-то "на знай свой шесток"??? Давайте, лучше, на шесток посадим создателей систем...
И что же, обойти этот ГЕНОЦИД по отношению к написанию свободных программ - никак нельзя???.
Re: ProgramFiles, UAC, права Администратора...
Добавлено: 10.03.2012 12:45:47
Mr.Smart
vitaly_lэто сугубо ваше мнение. Приучайтесь к стилю, который принят в системе и будет вам счастье

Re: ProgramFiles, UAC, права Администратора...
Добавлено: 10.03.2012 14:19:04
GAMER
vitaly_l писал(а):УЖАС!!!

Диск-то, один и тот же...
Этим перераспределением - только лишний мусор на диске создаётся.
Порядок - можно и в директории программы создать, а вот в головах создателей систем...
Диск один, вот только пользователей много может быть. И каждый работает по своему.
Не нравятся многопользовательские ОСи - используйте DOS.
Re: ProgramFiles, UAC, права Администратора...
Добавлено: 10.03.2012 14:42:50
alexey38
Если в командной строке вызвать команду "set", то увидите системные переменные, в том числе указываемые на нужные вам каталоги (папки). Именно так и нужно определять, где лежит пользовательская папка, а где папка с программами. Тем более, системным может быть не C:, а другой диск (редко, но бывает).
Re: ProgramFiles, UAC, права Администратора...
Добавлено: 10.03.2012 15:07:19
NTFS
Разделение на каталоги правильно и разумно. Это сразу дает кучу преимуществ:
1) Защита от случайных или намеренных изменений каталога Program Files
2) При резервном копировании, точно знаешь, что все данные находятся в каталоге Users (Document and Settings)
3) Защита между пользователями, домашние каталоги защищены, но все могут читать и выполнять программы из Program Files
4) Временные данные в одном месте, удобно чистить.
Реализация программы, когда все в Program Files, конечно, имеет право на существование, но выглядит очень непрофессионально и доставляет кучу проблем тем, кто эту программу сопровождает.
Re: ProgramFiles, UAC, права Администратора...
Добавлено: 10.03.2012 16:50:52
Vadim
vitaly_l писал(а):И что же, обойти этот ГЕНОЦИД по отношению к написанию свободных программ - никак нельзя???
Ну почему же нельзя? Можно. Но будет только хуже.

Re: ProgramFiles, UAC, права Администратора...
Добавлено: 10.03.2012 17:21:42
alexey38
vitaly_l писал(а):УЖАС!!! 
Диск-то, один и тот же...
Этим перераспределением - только лишний мусор на диске создаётся.
Порядок - можно и в директории программы создать, а вот в головах создателей систем...
Вырасту - всем в глаз дам! Достали УЗУРПАТОРЫ! Я им устрою кузькину мать...
Почему всех сверчков-то "на знай свой шесток"??? Давайте, лучше, на шесток посадим создателей систем...
И что же, обойти этот ГЕНОЦИД по отношению к написанию свободных программ - никак нельзя???.
Для особого мнения всегда можно работать под админом и отключать UAC. А для общего применения нужно использовать общепринятые подходы.
Re: ProgramFiles, UAC, права Администратора...
Добавлено: 10.03.2012 20:36:04
vitaly_l
Все правы... я злой...
Объясните мне, пожалуйста, неграмотному (почти программисту)...
Всё переделал, как требуется (для общего применения)...
Целый день... е...ё... - Работает!...
Однако, если даже в не системной папке - файл создан с правами админа, то его: без прав - обработать уже никак...
Суть в том что, если получил права администратора(для инсталяции), то как теперь их(права) отменить при перезапуске "рабочей" программы???
А то она после инсталяциии пересамозапускается с правами админа и естественно: пишет всё с правами админа,
а при нормальной работе запускается без прав админа,
работает, но изменить уже ничего не может...
Вопрос: Как перезапустить программу - без прав Администратора???.
Re: ProgramFiles, UAC, права Администратора...
Добавлено: 10.03.2012 20:44:45
alexs
А зачем при инсталяции программы запускать её?
Re: ProgramFiles, UAC, права Администратора...
Добавлено: 10.03.2012 20:50:02
Mr.Smart
vitaly_l какие действия производим для получения админа в первый раз (при установке)?