// Загрузка данные из ini файла static void loadFromIni(string[] args, cParam param, tProgramData programData) { IniFiles ini = new IniFiles("param.ini"); string iniSection = "Основные настройки"; string iniSmtpServer = "smtpserver"; string iniUsername = "******"; string iniPassword = "******"; string iniMailto = "mailto"; string iniSubject = "subject"; string iniPathbackup = "pathbackup"; if (args.Count() == 0) { // Создадим INI файл с настройками ini.Write(iniSection, iniSmtpServer, ""); ini.Write(iniSection, iniUsername, ""); ini.Write(iniSection, iniPassword, ""); ini.Write(iniSection, iniMailto, ""); ini.Write(iniSection, iniSubject, ""); ini.Write(iniSection, iniPathbackup, ""); Console.WriteLine("17/08/2018 [email protected]"); Console.WriteLine("Программа контроля создания архивов."); Console.WriteLine("При запуске с параметрами контролирует каталог из параметра -pb"); Console.WriteLine("Если в каталоге сегодня не было свежего файла, значит архив не сделан"); Console.WriteLine("отправляет письмо на почту. Также если размер архива меньше чем прошлый"); Console.WriteLine("то также отправляет письмо на почту."); Console.WriteLine("Парамтеры: "); foreach (cParamData item in param) { Console.WriteLine("\t{0} {1}", item.command, item.descript); } } // Если в параметрах указано что брать данные из файла настроек, то // попробует получить из него данные if (param.Get("-f").data != "") { // читаем данные из файла programData.smtpServer = ini.Read(iniSection, iniSmtpServer); programData.userName = ini.Read(iniSection, iniUsername); programData.password = ini.Read(iniSection, iniPassword); programData.mailto = ini.Read(iniSection, iniMailto); programData.subject = ini.Read(iniSection, iniSubject); programData.pathBackup = ini.Read(iniSection, iniPathbackup); } }
static void ParseParam(string[] args, cParam param, tProgramData programData) { param.Add("-f", tParamData.tBoll, "", "Если указан, то настройки берутся из param.ini файла. Файл с пустыми настройками создан."); param.Add("-s", tParamData.tString, "smtp.yandex.ru:25", "адрес smtp сервера, например smtp.yandex.ru"); param.Add("-u", tParamData.tString, "", "почта под который делать отправку писем"); param.Add("-p", tParamData.tString, "", "пароль"); param.Add("-t", tParamData.tString, "", "адрес почты на который нужно отправлять письма, например [email protected]"); param.Add("-su", tParamData.tString, "", "тема письма"); param.Add("-pb", tParamData.tString, "", "контролируемый каталог с архивами"); param.Parse(args); programData.smtpServer = param.Get("-s").data; programData.userName = param.Get("-u").data; programData.password = param.Get("-p").data; programData.mailto = param.Get("-t").data; programData.subject = param.Get("-su").data; programData.pathBackup = param.Get("-pb").data; loadFromIni(args, param, programData); }