public AppContext(string appData, string vendorName, string productName, string[] args) { ShutdownMode = ShutdownMode.OnExplicitShutdown; Logger = LogManager.GetLogger(GetType()); _AppDataPath = appData; Directory.CreateDirectory(_AppDataPath); _CloseTimer = new Timer((state) => _TaskbarIcon.CloseBalloon()); var settingsProvider = new RegistrySettingsProvider(vendorName, productName); Settings.Default.Providers.Add(settingsProvider); foreach (SettingsProperty prop in Settings.Default.Properties) { prop.Provider = settingsProvider; } Settings.Default.Reload(); Settings.Default.PropertyChanged += (sender, e) => Settings.Default.Save(); var opts = new OptionSet() { { "startup", (opt) => _OnStartShowOptionsWindow = false } }; opts.Parse(args); }
public static WirelessNetworkAddress GetNextFreeAddress() { int lastAddressUsed = RegistrySettingsProvider.GetLastUsedAddress(); lastAddressUsed++; RegistrySettingsProvider.SaveLastUsedAddress(lastAddressUsed); string address = $"{lastAddressUsed:X6}"; return(new WirelessNetworkAddress(address)); }