示例#1
0
        public bool saveSettingToFile()
        {
            string strAppDataPath     = Environment.GetEnvironmentVariable("APPDATA");
            string strSettingFilePath = Path.Combine(strAppDataPath, "DoSA-Open_2D");

            string strSettingFileFullName = Path.Combine(strSettingFilePath, "setting.ini");

            try
            {
                XmlSerializer xmlSerializer = new XmlSerializer(typeof(CSettingDataClone));
                StreamWriter  writer        = new StreamWriter(strSettingFileFullName);

                // Static 객체는 XML Serialize 가 불가능해서 일반 Clone 객체에 복사를 하고 Serialize 를 하고 있다.
                CSettingDataClone settingData = new CSettingDataClone();
                settingData.copySettingDataToClone();

                xmlSerializer.Serialize(writer, settingData);
                writer.Close();
            }
            catch (Exception ex)
            {
                CNotice.printTrace(ex.Message);
            }

            return(true);
        }
示例#2
0
        public bool loadSettingFromFile()
        {
            string strAppDataPath     = Environment.GetEnvironmentVariable("APPDATA");
            string strSettingFilePath = Path.Combine(strAppDataPath, "DoSA-Open_2D");

            string strSettingFileFullName = Path.Combine(strSettingFilePath, "setting.ini");


            // CSettingData.ProgramDirectory 가 초기화 되어 있어야 한다.
            if (m_manageFile.isExistFile(strSettingFileFullName) == false)
            {
                CNotice.noticeWarningID("TCFD");
                return(false);
            }

            try
            {
                XmlSerializer xmlSerializer = new XmlSerializer(typeof(CSettingDataClone));
                StreamReader  reader        = new StreamReader(strSettingFileFullName);

                CSettingDataClone settingDataClone = new CSettingDataClone();
                settingDataClone = (CSettingDataClone)xmlSerializer.Deserialize(reader);

                settingDataClone.copyCloneToSettingData();

                reader.Close();
            }
            catch (Exception ex)
            {
                CNotice.printTrace(ex.Message);
                CNotice.printTraceID("AEOW");
            }

            return(true);
        }
示例#3
0
        public bool loadSettingFromFile()
        {
            string strAppDataPath     = Environment.GetEnvironmentVariable("APPDATA");
            string strSettingFilePath = Path.Combine(strAppDataPath, "DoSA-2D");

            string strSettingFileFullName = Path.Combine(strSettingFilePath, "setting.ini");


            // CSettingData.ProgramDirectory 가 초기화 되어 있어야 한다.
            if (m_manageFile.isExistFile(strSettingFileFullName) == false)
            {
                CNotice.noticeWarningID("TCFD");
                return(false);
            }

            try
            {
                XmlSerializer xmlSerializer = new XmlSerializer(typeof(CSettingDataClone));
                StreamReader  reader        = new StreamReader(strSettingFileFullName);

                CSettingDataClone settingDataClone = new CSettingDataClone();
                settingDataClone = (CSettingDataClone)xmlSerializer.Deserialize(reader);

                settingDataClone.copyCloneToSettingData();

                reader.Close();

                // 혹시 데이터의 오류는 발생하더라도 하나만 오류가 발생한다.
                // 따라서 다른 항목까지 다시 설정하지 않도록 오류가 있는 데이터라도 파일에서 읽어드림과 동시에 창에 입력해 둔다.
                uploadSettingData();
            }
            catch (Exception ex)
            {
                CNotice.printLog(ex.Message);
                CNotice.printLogID("AEOW");
            }

            return(true);
        }