using (RegistryKey key = Registry.CurrentUser)
{
key.OpenSubKey(@"Control Panel\Desktop", true).SetValue("ScreenSaveActive", 0, RegistryValueKind.String);
}
以上代码将屏幕保护禁用。
using保证了对应CurrentUser的注册表键实例得以Dispose,但OpenSubKey得到的注册表子键没有Dispose,如果SetValue方法发生异常,非托管对象会不会没有清理?
是否要用2个using嵌套分开写?有必要吗?
{
key.OpenSubKey(@"Control Panel\Desktop", true).SetValue("ScreenSaveActive", 0, RegistryValueKind.String);
}
以上代码将屏幕保护禁用。
using保证了对应CurrentUser的注册表键实例得以Dispose,但OpenSubKey得到的注册表子键没有Dispose,如果SetValue方法发生异常,非托管对象会不会没有清理?
是否要用2个using嵌套分开写?有必要吗?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货