Example #1
0
        public bool InitFileWatch()
        {
            List <string> watches = new List <string>();

            fw = new OMLFileWatcher.OMLFileWatcher();
            using (RegistryKey rkOML = Registry.CurrentUser.OpenSubKey(@"Software"))
                watches.AddRange(rkOML.GetSubKeyNames());
            if (!watches.Contains(@"OpenMediaLibrary"))
            {
                return(false);
            }

            watches.Clear();
            watches.Add((string)"@OML.DAT");
            using (RegistryKey rkOML = Registry.CurrentUser.OpenSubKey(@"Software\OpenMediaLibrary"))
            {
                watches.AddRange((string[])rkOML.GetValue("Watches"));
            }

            foreach (string set in watches)
            {
                string[] watch = set.Split(';');
                switch (watch.Length)
                {
                case 1:
                    if (watch[0] == "@OML.DAT")
                    {
                        WatchOMLdat();
                        Utilities.DebugLine(String.Format("Dirs: {0}", DiskDirs.Count));
                    }
                    break;

                case 2:
                    fw.AddWatch(watch[0], watch[1]);
                    break;

                case 3:
                    if (!bool.TryParse(watch[2], out subdirs))
                    {
                        subdirs = false;
                    }
                    fw.AddWatch(watch[0], watch[1], subdirs);
                    break;

                default:
                    break;
                }
            }
            fw.Changed += new OMLFileWatcher.OMLFileWatcher.eChanged(fw_Changed);
            fw.Created += new OMLFileWatcher.OMLFileWatcher.eCreated(fw_Changed);
            fw.Deleted += new OMLFileWatcher.OMLFileWatcher.eDeleted(fw_Changed);
            fw.Renamed += new OMLFileWatcher.OMLFileWatcher.eRenamed(fw_Renamed);
            return(true);
        }
Example #2
0
        public bool InitFileWatch()
        {
            List<string> watches = new List<string>();

            fw = new OMLFileWatcher.OMLFileWatcher();
            using (RegistryKey rkOML = Registry.CurrentUser.OpenSubKey(@"Software"))
                watches.AddRange(rkOML.GetSubKeyNames());
            if (!watches.Contains(@"OpenMediaLibrary"))
                return false;

            watches.Clear();
            watches.Add((string)"@OML.DAT");
            using (RegistryKey rkOML = Registry.CurrentUser.OpenSubKey(@"Software\OpenMediaLibrary"))
            {
                watches.AddRange((string[])rkOML.GetValue("Watches"));
            }

            foreach (string set in watches)
            {
                string[] watch = set.Split(';');
                switch (watch.Length)
                {
                    case 1:
                        if (watch[0] == "@OML.DAT")
                        {
                            WatchOMLdat();
                            Utilities.DebugLine(String.Format("Dirs: {0}", DiskDirs.Count));
                        }
                        break;
                    case 2:
                        fw.AddWatch(watch[0], watch[1]);
                        break;
                    case 3:
                        if (!bool.TryParse(watch[2], out subdirs))
                        {
                            subdirs = false;
                        }
                        fw.AddWatch(watch[0], watch[1], subdirs);
                        break;
                    default:
                        break;
                }
            }
            fw.Changed += new OMLFileWatcher.OMLFileWatcher.eChanged(fw_Changed);
            fw.Created += new OMLFileWatcher.OMLFileWatcher.eCreated(fw_Changed);
            fw.Deleted += new OMLFileWatcher.OMLFileWatcher.eDeleted(fw_Changed);
            fw.Renamed += new OMLFileWatcher.OMLFileWatcher.eRenamed(fw_Renamed);
            return true;
        }