public bool IsEnabled(AutoStartEntry autoStart) { if (RegistryDisableService == null) { return(true); } return(RegistryDisableService.CanBeDisabled(autoStart)); }
public void DisableAutoStart(AutoStartEntry autoStart) { if (RegistryDisableService == null) { throw new NotImplementedException(); } RegistryDisableService.DisableAutoStart(autoStart); }
public void StopWatcher() { Logger.Trace("StopWatcher called for {BasePath}", BasePath); RegistryDisableService?.StopWatcher(); if (monitor == null) { Logger.Trace("No watcher running"); return; } monitor.Changed -= ChangeHandler; monitor.Error -= ErrorHandler; monitor.Stop(); monitor.Dispose(); monitor = null; Logger.Trace("Stopped watcher"); }
public void StopWatcher() { Logger.Trace("StopWatcher called for {BasePath}", BasePath); RegistryDisableService.StopWatcher(); if (monitor == null) { Logger.Trace("No watcher running"); return; } monitor.Add -= AddHandler; monitor.Remove -= RemoveHandler; monitor.Stop(); monitor.Dispose(); monitor = null; Logger.Trace("Watcher stopped"); }
public void StartWatcher() { Logger.Trace("StartWatcher called for {BasePath}", BasePath); RegistryDisableService.StartWatcher(); if (monitor != null) { Logger.Trace("Watcher already started"); return; } monitor = new FolderChangeMonitor() { BasePath = BasePath, Category = Category, }; monitor.Add += AddHandler; monitor.Remove += RemoveHandler; Logger.Trace("Watcher started"); }
/// <summary> /// Watches the assigned registry keys /// </summary> /// <remarks> /// Because of API limitations no all changes are monitored. /// See https://docs.microsoft.com/en-us/windows/win32/api/winreg/nf-winreg-regnotifychangekeyvalue /// Not monitored are changes via RegRestoreKey https://docs.microsoft.com/en-us/windows/win32/api/winreg/nf-winreg-regrestorekeya /// </remarks> public void StartWatcher() { Logger.Trace("StartWatcher called for {BasePath}", BasePath); RegistryDisableService?.StartWatcher(); if (monitor != null) { Logger.Trace("Watcher already started"); return; } var currentAutoStarts = (List <AutoStartEntry>)GetCurrentAutoStarts(); lastAutostarts = new List <RegistryAutoStartEntry>(); foreach (var currentAutoStart in currentAutoStarts) { lastAutostarts.Add((RegistryAutoStartEntry)currentAutoStart); } monitor = new RegistryChangeMonitor(BasePath); monitor.Changed += ChangeHandler; monitor.Error += ErrorHandler; monitor.Start(); Logger.Trace("Watcher started"); }
public bool IsEnabled(AutoStartEntry autoStart) { return(RegistryDisableService.CanBeDisabled(autoStart)); }
public void DisableAutoStart(AutoStartEntry autoStart) { RegistryDisableService.DisableAutoStart(autoStart); }