Настройки приложения с WinAPI - PullRequest
0 голосов
/ 19 июня 2010

Есть ли стандартный способ работы с настройками приложения в WinAPI?В данный момент я делаю следующее:

if(!ReadKey(some_setting))
    WriteKey(some_setting, some_setting_setting_default_value)

при инициализации диалога настроек.Затем я устанавливаю состояния виджета на соответствующие значения, считанные из реестра.Проблема заключается в том, что если приложение запускается впервые, настройки по умолчанию не могут быть прочитаны в соответствии с приведенным выше шаблоном кода.Еще одна ReadKey() необходима для считывания только что записанных настроек по умолчанию в переменную настроек в моей программе.Это выглядит немного неуклюже для меня.Итак, вопрос в основном таков:

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

Опять же, это должен быть чистый Win32, MFC не разрешен.это домашнее задание?Это вопрос о том, существует ли устоявшаяся практика ведения дел, а не просьба выполнять мою работу за меня.Теперь мне лучше убрать оттуда фразу "университетский проект".

1 Ответ

1 голос
/ 19 июня 2010

Можно избежать записи жестко заданных значений по умолчанию в реестр и оставить реестр пустым, кроме случаев, когда он содержит значение, отличное от значения по умолчанию:

string ReadRegistry(
  const string& some_setting,
  const string& some_setting_default_value
  )
{
  //try to read user-specified setting from registry
  string rc;
  if (ReadKey(some_setting, rc))
  {
    return rc;
  }
  //else return hard-coded default value, not from registry
  return some_setting_default_value;
}

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

Есть ли стандартный способ работы с настройками в Win32?

Номер

Есть ли способ установить настройки приложения по умолчанию во время установки

Да, программа установки может записывать в реестр.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...