Войти
ПрограммированиеФорумОбщее

Как правильно прописать свою программу в реестр?

Страницы: 1 2 Следующая »
#0
17:33, 14 мар. 2012

Во время установки, куда писать данные о своей программе? LOCAL_MACHINE/Software? CURRENT_USER? А если с per-user лицензиями, а пользователей на компе может быть несколько?

Не нагуглил ничего толкового.


#1
17:39, 14 мар. 2012

Реестр - зло, программы пишущие туда - поборники зла.

#2
18:07, 14 мар. 2012

происки сатаны

#3
18:09, 14 мар. 2012

Nomad
> А если с per-user лицензиями, а пользователей на компе может быть несколько?
Что за программа такая? Ну, пиши в CURRENT_USER, пусть каждый пользователь себе сам лицензию ставит.

#4
18:25, 14 мар. 2012

Если нет админовских прав, только в CURRENT_USER и позволено будет писать.
А в принципе, писать можно куда угодно, чем и пользуются всякие злостные програмулины. Зафигачат свои параметры в такое место, где их хрен найдешь, если не позаботиться о мониторинге изменений реестра в процессе их установки.

#5
6:03, 15 мар. 2012

Zab
Просто было бы логично, если бы для разных нужд были бы разные разделы в реестре.
Хотя бы общие рекомендации есть, или все действительно пишут куда попало?

nes
Каковы альтернативы?

kipar
Тулзы для девелоперских контор.

#6
6:07, 15 мар. 2012

что мешает хранить базу данных с настройками и всей нужной инфой, как делает, например, AIMP? преимущества очевидны - portable'ность программы.

#7
8:11, 15 мар. 2012

Nomad
> А если с per-user лицензиями, а пользователей на компе может быть несколько?
  Ты реально хочешь найти на этом форуме ответ на такой серьёзный вопрос? Обычно когда возникают такие проблемы люди начинают гуглить в поисках серьёзных ответов. MSDN пока что не закрыли, опять же.

#8
12:36, 15 мар. 2012

Реестр - зло.

#9
12:45, 15 мар. 2012

Nomad
>Каковы альтернативы?
Не писать ничего в реестр - очевидно же )

#10
13:13, 15 мар. 2012

Nomad
> Во время установки, куда писать данные о своей программе?
это какие данные?
это те, благодаря которым, программа появляется в списке "Установка и удаление программ"?

вообще для простейших случаев лучше использовать NSIS
насколько помню в комплекте есть готовые примеры

Nomad
> А если с per-user лицензиями, а пользователей на компе может быть несколько?
Обычно для игр используют Per Device

И вообще, сели программа умеет отличать пользователей, то собственно какая разница куда сохранять?

То есть просто создать для каждого пользователя отдельный файл лицензии.
Эти файлы положить в папку программы.

Тогда в реестр ничего писать не надо будет.

#11
13:26, 15 мар. 2012

daemolisher
> Эти файлы положить в папку программы.
  Фейл. Для подобных вещей предусмотрены папки AppData в пользовательском каталоге. А в папку программы писать будет запрещено.
  Вот о таком я и хотел донести, когда писал, что здесь на такие вопросы по-нормальному не ответят.

#12
20:07, 15 мар. 2012

daemolisher
> Фейл. Для подобных вещей предусмотрены папки AppData
наоборот всё)))
писать в папку AppData - это и есть фейл, так как неизвестно есть ли права на это у пользователя

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

исключения правда есть, например папка Program Files в Windows Vista/7
лучше избегать установки игры в эту папку
ставить например в C:\Games\

#13
21:04, 15 мар. 2012

Nomad
> CURRENT_USER?
по идее да.

Nomad
> лицензиями
я бы не стал пользоваться реестром для решения данной проблемы, и... да..  прислушайтесь к остальным

#14
21:13, 15 мар. 2012

daemolisher
> писать в папку AppData - это и есть фейл, так как неизвестно есть ли права на
> это у пользователя
У пользователя может не быть прав писать в СВОЮ AppData?~ Мда.
Дальше вообще ерунда написана.

Страницы: 1 2 Следующая »
ПрограммированиеФорумОбщее

Тема в архиве.