/// <summary> /// Stop the watcher and prevent further notifications from being received. /// <remarks>If the watcher is not running, this has no effect.</remarks> /// </summary> public void Stop() { if (!Running) { return; } if (_registrationId > 0) { ShellNativeMethods.SHChangeNotifyDeregister(_registrationId); _registrationId = 0; } Running = false; }