Exemplo n.º 1
0
        public static FractronConfig Load()
        {
            FileStream     fs   = null;
            FractronConfig conf = new FractronConfig();

            try{
                fs = File.Open(FractronConfigFileName, FileMode.Open, FileAccess.Read, FileShare.None);
            }
            catch (DirectoryNotFoundException) {
                return(conf);
            }
            catch (FileNotFoundException) {
                return(conf);
            }

            try{
                XmlReaderSettings settings = new XmlReaderSettings();
                settings.CheckCharacters  = false;
                settings.CloseInput       = true;
                settings.ConformanceLevel = ConformanceLevel.Fragment;
                settings.IgnoreComments   = false;
                settings.IgnoreWhitespace = false;
                settings.ValidationType   = ValidationType.None;

                XmlReader reader = XmlReader.Create(fs, settings);

                XmlDocument doc = new XmlDocument();

                doc.Load(reader);

                conf.LoadFromXmlDoc(doc);
            }
            finally{
                if (fs != null)
                {
                    fs.Close();
                }
            }
            conf.Valid = false;
            return(conf);
        }