我正在使用注册表来存储一些(20+)数据值,例如窗口位置和放大器。大小开始。我很好奇你是否应该从注册表中预加载所有键,而不是在变量上调用GET或SET时实时查询它们。是否有频繁查询或向注册表写入数据的风险?
代码示例:
internal int MainWindowHeight
{
get
{
try
{
using (RegistryKey mykey = Registry.CurrentUser.OpenSubKey("xxxxx"))
{
return Convert.ToInt32(mykey.GetValue("xxxx"));
}
}
catch
{ return 0; }
}
set
{
try
{
using (RegistryKey mykey = Registry.CurrentUser.OpenSubKey("xxxxx", true))
{
mykey.SetValue("xxxx", value, RegistryValueKind.DWord);
}
}
catch
{}
}
}