AVK>Значит надо такие права добавлять. Например при инсталляции — инсталлировать то будут все равно под админским аккаунтом. Или не ставить софт в Program Files.
Так все-таки правильно, что пользователям не дают менять исполняемые файлы, а также файлы конфигурации.
Это спасает от вирусов, да и от вредительских действий пользователей тоже.
Знаешь как народ очень сильно на ICQ-у ругается, которая как раз требует, чтобы была разрешена запись в Program Files...
А>>2. XML файл в каталоге со сборкой. Всё здорово, но на NT, 2000 и XP возникают проблемы с доступом к этому файлу на запись.
AVK>Какие проблемы? Вон в янусе вроде бы никаких проблем не наблюдается.
Еще одна есть проблема: усложняется работа нескольких пользователей с одной и той же программой, а также нет никакой защиты личных данных
Здравствуйте DarkGray, Вы писали:
TK>>Нет, не прав. Изолированное хранилище достаточно гибкий инструмент.
TK>>Данное хранилище будет завистить от имени файла приложения:
DG>А пользователь это настроить может? Или это делается только из самой программы?
Если только разработчик позаботится..
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
Здравствуйте DarkGray, Вы писали:
DG>Так все-таки правильно, что пользователям не дают менять исполняемые файлы, а также файлы конфигурации. DG>Это спасает от вирусов,
Не смеши
DG>да и от вредительских действий пользователей тоже.
Мда. Надо уж определиться — либо мы даем пользователю менять настройки, либо не даем. В крайнем случае при инсталляции спрашивать пароль админа.
DG>Знаешь как народ очень сильно на ICQ-у ругается, которая как раз требует, чтобы была разрешена запись в Program Files...
DG>>Так все-таки правильно, что пользователям не дают менять исполняемые файлы, а также файлы конфигурации. DG>>Это спасает от вирусов,
AVK>Не смеши
Ну и как по твоему вирус будет запускаться после перезагрузки компа? Если у него в предыдущую сессию не было прав ничего заразить?
DG>>да и от вредительских действий пользователей тоже.
AVK>Мда. Надо уж определиться — либо мы даем пользователю менять настройки, либо не даем. В крайнем случае при инсталляции спрашивать пароль админа.
Так данные для программы делятся на конфигурационные (напримет, это то, что в *.config) и на пользовательские (личные настройки пользователя).
По хорошему первые данные может менять только админ, а вторые, сам пользователь.
Здравствуйте DarkGray, Вы писали:
DG>Ну и как по твоему вирус будет запускаться после перезагрузки компа? Если у него в предыдущую сессию не было прав ничего заразить?
Вирус заражает конфигурационные файлы?
AVK>>Мда. Надо уж определиться — либо мы даем пользователю менять настройки, либо не даем. В крайнем случае при инсталляции спрашивать пароль админа.
DG>Так данные для программы делятся на конфигурационные (напримет, это то, что в *.config) и на пользовательские (личные настройки пользователя).
DG>По хорошему первые данные может менять только админ, а вторые, сам пользователь.
Здравствуйте DarkGray, Вы писали:
AVK>>Чем?
DG>А как у тебя будет называться файл в котором хранятся настройки пользователя?
Как захочу так и будет называться. В Янусе на каждого пользователя заводиться отдельный каталог. Ссылка на каталог храниться в HKCU.
AVK>>Это не зависит от того где хранишь.
DG>Почему это? Если личные данные хранятся в Documents And Settings, то разные пользователи не могут видеть данные друг друга
Невидимость настроек можно обеспечить и другими методами.
DG>>Ну и как по твоему вирус будет запускаться после перезагрузки компа? Если у него в предыдущую сессию не было прав ничего заразить?
AVK>Вирус заражает конфигурационные файлы?
Вирус заражает exe-шники, или ты хочешь сказать, что админ должен лезть в каждую папочку и смотреть каким файлам, какие права давать? Это реальный сценарий?
DG>>По хорошему первые данные может менять только админ, а вторые, сам пользователь.
AVK>Так в чем проблема то?
То, что ты заставляешь админа, явно руками для каждого файла прописывать настройки.
Здравствуйте DarkGray, Вы писали:
DG>>>Ну и как по твоему вирус будет запускаться после перезагрузки компа? Если у него в предыдущую сессию не было прав ничего заразить?
AVK>>Вирус заражает конфигурационные файлы?
DG>Вирус заражает exe-шники, или ты хочешь сказать, что админ должен лезть в каждую папочку и смотреть каким файлам, какие права давать? Это реальный сценарий?
В Современном Конфигурационном файле можно указать какие модули нужно загрузить при запуске приложения. Может это и не вирус, но червь — еще тот
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
DG>>А как у тебя будет называться файл в котором хранятся настройки пользователя?
AVK>Как захочу так и будет называться. В Янусе на каждого пользователя заводиться отдельный каталог.
Что должен сделать админ, если он хочет удалить юзера? Опять руками просмотреть все папки?
AVK> Ссылка на каталог храниться в HKCU.
А если пользователь ставит второй экземпляр программы? С другими настройками?
AVK>Невидимость настроек можно обеспечить и другими методами.
Здравствуйте DarkGray, Вы писали:
DG>Вирус заражает exe-шники, или ты хочешь сказать, что админ должен лезть в каждую папочку и смотреть каким файлам, какие права давать? Это реальный сценарий?
Зачем админ? При инсталляции у программы есть админские права — так пусть она и правит доступ к файлам.
AVK>>Так в чем проблема то?
DG>То, что ты заставляешь админа, явно руками для каждого файла прописывать настройки.
Здравствуйте AndrewVK, Вы писали:
AVK>Вирус заражает конфигурационные файлы?
Ты явно докапался до слов. Подумай если файл пользователя лежит в Програм Файлс, то как он будет уживаться со вторым пользовтелем на той же системе.
Если настройки лежать в файле, то путь к ним должен быть записан в реестре, а сам файл может при этом лежать где угодно. Личный каталог пользователя это не плохой быбор. Хотя я бы выбрал сетку.
Если в Янусе это пока не так, то все равно к инсталляции придется менять такое поведение.
Здравствуйте AndrewVK, Вы писали:
AVK>Как захочу так и будет называться. В Янусе на каждого пользователя заводиться отдельный каталог. Ссылка на каталог храниться в HKCU.
Во-во! Т.е. как раз в Янусе конфиг, то и не буедет валяться в прогам файласах. Зачем ты тогда другим это предлагаешь?
AVK>Невидимость настроек можно обеспечить и другими методами.
Дык он тебе и говрит, что влоб нельзя. Он же не знает как все в Янусе устроено...
Здравствуйте AndrewVK, Вы писали:
AVK>Ручками можно прямо на лету каталог вместе с настройками поменять.
Заметь! В инсталляторе! И заметь! Когда программа загрузится под новым пользователем, то ему нужно будет создать умолчальный файл с настройками. При этом админа рядом не будет. И самый простой способ запихнуть файл по умолчанию в пользовательский каталог. Если при этом еще предложить выбрать каталог, то будет вообще замечательно.
С твоими запросам лучше обойтись файлом и ссылкой на него.
То что ссылку из реестра или хранилица никто не удалит не страшно это ведь сотря байт максимум. Зато файл можно хоть на сети расположить, и каждый клиент сможет иметь свою копию (и не одну).
Зайди в ветку "Открытый проект..." там все это обсуждалось. Да и исходники работающие есть.
Здравствуйте, Аноним, Вы писали:
А>Куда в .NET модно сохранять пользовательские настройки? Есть три варианта:
А>Т. е., насколько я понимаю, Zero-Impact приложения вообще не должны сохранять пользовательские настройки? А MS рекомендует все сборки сделать такими... Где хранить?
Сохраняй в файл с именем Application.ExecutablePath + ":config".
Получиться название типа "prog.exe:config", если грохнуть "prog.exe" умрёт и "prog.exe:config".