/// <summary> /// Загрузить конфиг-файл. /// </summary> internal static void LoadXmlConfig() { string fileName = DefaultProgramFullFileName; bool create = false; if (File.Exists(fileName)) { try { localParams.Load(fileName); } catch (Exception) { create = true; } } if (create) { localParams = new ConfigXmlDocument(); XmlDeclaration declaration = localParams.CreateXmlDeclaration("1.0", "utf-8", "yes"); localParams.AppendChild(declaration); XmlNode root = localParams.CreateElement(ProgramConfiguraton.trainerRootNodeName); localParams.AppendChild(root); } }
/// <summary> /// Сохранить свободный параметр формы. /// </summary> /// <param name="form">Форма, которой принадлежит этот параметр.</param> /// <param name="paramName">Имя параметра.</param> /// <param name="paramValue">Значение параметра в виде строки.</param> internal static void SaveFormCustomParameter(Form form, string paramName, string paramValue) { // Форма не нуль, имя формы не нуль, имя параметра не нуль. if (!string.IsNullOrEmpty(paramName) && form != null && !string.IsNullOrEmpty(form.Name)) { // Корневой элемент конфигурации программы. XmlNode root = programParams[trainerRootNodeName]; if (root == null) { // Создаем корень, если его нет. root = programParams.CreateElement(trainerRootNodeName); programParams.AppendChild(root); } // Элемент формы. XmlNode formNode = root[form.Name]; if (formNode == null) { // Создаем его, если нет. formNode = programParams.CreateElement(form.Name); root.AppendChild(formNode); } // Элемент параметра. XmlNode formParamValue = formNode[paramName]; if (formParamValue == null) { // Создаем его, если нет. formParamValue = programParams.CreateElement(paramName); formNode.AppendChild(formParamValue); } // Сохраняем значение параметра. formParamValue.InnerText = paramValue; } }
/// <summary> /// 创建默认的配置文件 /// </summary> private static void CreateDefaultConfigFile() { // 创建文件,写入默认值 XmlDocument xmlDoc = new ConfigXmlDocument(); // 根节点添加默认参数集 XmlElement elemParams = xmlDoc.CreateElement(RootNodeName); elemParams.AppendChild(xmlDoc.CreateSingleElement(@"PhotoCacheDir", DefaultConfig.PhotoCacheDir)); // 本地照片缓存路径 elemParams.AppendChild(xmlDoc.CreateSingleElement(@"ServerPhotoDir", DefaultConfig.ServerPhotoDir)); // 服务器照片存储路径 elemParams.AppendChild(xmlDoc.CreateSingleElement(@"ThumbSize", DefaultConfig.ThumbSize)); // 照片缩略图尺寸 elemParams.AppendChild(xmlDoc.CreateSingleElement(@"LargeSize", DefaultConfig.LargeSize)); // 照片大图尺寸 elemParams.AppendChild(xmlDoc.CreateSingleElement(@"ThumbShowSize", DefaultConfig.ThumbShowSize)); // 照片缩略图展示尺寸 xmlDoc.AppendChild(xmlDoc.CreateXmlDeclaration(@"1.0", @"gb2312", null)); xmlDoc.AppendChild(elemParams); xmlDoc.Save(ConfigFilePath); }
/// <summary> /// プロパティを保存する処理 /// </summary> private void SaveProperties() { try { FileInfo fi = new System.IO.FileInfo(GetLocalConfigFilePath()); if (fi.Exists != true) { if (fi.Directory.Exists != true) { fi.Directory.Create(); } } ConfigXmlDocument cdoc = new ConfigXmlDocument(); var cfg = cdoc.CreateElement("configuration"); var apps = cdoc.CreateElement("settings"); Func <string, string, bool> addItem = (key, val) => { var node = cdoc.CreateElement("add"); var attrK = cdoc.CreateAttribute("key"); attrK.InnerText = key; var attrV = cdoc.CreateAttribute("value"); attrV.InnerText = string.IsNullOrWhiteSpace(val) ? string.Empty : val; node.Attributes.Append(attrK); node.Attributes.Append(attrV); apps.AppendChild(node); return(true); }; addItem("LoginCheck", this.ライセンス情報記憶.ToString()); addItem("TextUr", Utility.Encrypt(this.ユーザーID)); addItem("TextLr", Utility.Encrypt(this.パスワード)); cdoc.AppendChild(cfg); cfg.AppendChild(apps); cdoc.Save(fi.FullName); } catch (Exception) { } finally { } }