using System;
namespace Backend
{
public class RegistryStorage
{
public static PageVisibility OpenAfterStart()
{
Microsoft.Win32.RegistryKey registryKey;
PageVisibility visibility = PageVisibility.Visible;
// HKCUSoftwareRegeditStorage
registryKey = Microsoft.Win32.Registry.CurrentUser.OpenSubKey(@"SoftwareRegistryStorage");
if (registryKey != null)
{
visibility = (string)registryKey.GetValue("PageVisibility") == PageVisibility.Hide.ToString() ? PageVisibility.Hide : PageVisibility.Visible; registryKey.Close();
}
return visibility;
}
public static void SaveBeforeExit(PageVisibility visibility)
{
Microsoft.Win32.RegistryKey registryKey;
// HKCUSoftwareRegeditStorage registryKey = Microsoft.Win32.Registry.CurrentUser.CreateSubKey(@"SoftwareRegistryStorage"); registryKey.SetValue("PageVisibility", visibility.ToString());
registryKey.Close();
}
}
public enum PageVisibility { Visible, Hide } }
using System; using System.Diagnostics;
namespace Backend.Test
{
class Program
{
static void Main(string[] args)
{
// 存值 RegistryStorage.SaveBeforeExit(PageVisibility.Hide);
// 取值 PageVisibility visibility = RegistryStorage.OpenAfterStart();
// 验证 Debug.Assert(visibility == PageVisibility.Hide);
// 存值 RegistryStorage.SaveBeforeExit(PageVisibility.Visible);
// 取值 visibility = RegistryStorage.OpenAfterStart();
// 验证 Debug.Assert(visibility == PageVisibility.Visible);
Console.WriteLine("Press any key to exit.");
Console.ReadKey();
}
}
}