using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using Dongke.IBOSS.PRD.Basics.BaseResources; using Dongke.IBOSS.PRD.Basics.Library; using Microsoft.Win32; namespace Dongke.IBOSS.PRD.WCF.WindowsService { public static class ConfigConst { private static string m_StartupPath; //文件安装路径 private static bool m_LogControl; //日志文件软开关控制 True进行记录 False不进行记录 private static string m_LogFileName; //记录日志信息的文件名 private static string m_ConfigFileName; //配置文件名称 static ConfigConst() { ConfigConst.StartupPath = System.AppDomain.CurrentDomain.BaseDirectory; ConfigConst.ConfigFile = ConfigConst.StartupPath + "Config.ini"; } /// /// 系统安装目录 /// public static string StartupPath { get { return m_StartupPath; } set { m_StartupPath = value; } } /// /// 日志文件软开关控制 True进行记录 False不进行记录 /// public static bool LogControl { get { return m_LogControl; } set { m_LogControl = value; } } /// /// 记录日志信息的文件名称 /// public static string LogFileName { get { return m_LogFileName; } set { m_LogFileName = value; } } /// /// 配置文件名称 /// public static string ConfigFileName { get { return m_ConfigFileName; } set { m_ConfigFileName = value; } } public static string ConfigFile { get; set; } public static string WCFIP { get; set; } public static string WCFPort { get; set; } public static string WindowsServiceName { get; set; } public static string WindowsDescription { get; set; } public static string ClientVersion { get; set; } public static string DBIP { get; set; } public static string DBPort { get; set; } public static string DBServerName { get; set; } public static string DBUser { get; set; } public static string DBPassword { get; set; } public static string GetWindowsServiceInstallPath(string ServiceName) { string key = @"SYSTEM\CurrentControlSet\Services\" + ServiceName; string path = Registry.LocalMachine.OpenSubKey(key).GetValue("ImagePath").ToString(); //替换掉双引号 path = path.Replace("\"", string.Empty); FileInfo fi = new FileInfo(path); return fi.Directory.ToString() + ""; } public static void GetConfigData(string ServiceName) { try { //System.Environment.CurrentDirectory; //ConfigConst.StartupPath = System.AppDomain.CurrentDomain.BaseDirectory; //ConfigConst.StartupPath = GetWindowsServiceInstallPath(ServiceName); //LogFileOperation.ErrorFile("D:\\sss.log", ConfigConst.StartupPath); //ConfigConst.ConfigFile = ConfigConst.StartupPath + "\\Config.ini"; #region 获取对应的配置信息 ConfigConst.LogControl = false; ConfigConst.LogControl = INIUtility.ReadIniData(ConfigConst.ConfigFile, "LogSetting", "LogControl").ToUpper().Equals("TRUE") ? true : false; ConfigConst.LogFileName = INIUtility.ReadIniData(ConfigConst.ConfigFile, "LogSetting", "LogFileName"); ConfigConst.WCFIP = INIUtility.ReadIniData(ConfigConst.ConfigFile, "WCFSetting", "WCFIP"); ConfigConst.WCFPort = INIUtility.ReadIniData(ConfigConst.ConfigFile, "WCFSetting", "WCFPort"); //ConfigConst.WindowsServiceName = INIUtility.ReadIniData(ConfigConst.ConfigFile, "WCFSetting", "ServerName"); ConfigConst.ClientVersion = INIUtility.ReadIniData(ConfigConst.ConfigFile, "VersionSetting", "ClientVersion"); ConfigConst.DBIP = INIUtility.ReadIniData(ConfigConst.ConfigFile, "DBSetting", "DBIP"); ConfigConst.DBPort = INIUtility.ReadIniData(ConfigConst.ConfigFile, "DBSetting", "DBPort"); ConfigConst.DBServerName = INIUtility.ReadIniData(ConfigConst.ConfigFile, "DBSetting", "SID"); ConfigConst.DBUser = INIUtility.ReadIniData(ConfigConst.ConfigFile, "DBSetting", "DBUser"); string password = INIUtility.ReadIniData(ConfigConst.ConfigFile, "DBSetting", "DBPassword"); ConfigConst.DBPassword = Encryption.DecryptDES(password, Constant.S_ENCRYPTION_KEY); ConfigConst.WindowsServiceName = INIUtility.ReadIniData(ConfigConst.ConfigFile, "WSSetting", "ServiceName"); ConfigConst.WindowsDescription = INIUtility.ReadIniData(ConfigConst.ConfigFile, "WSSetting", "Description"); #endregion } catch (Exception ex) { throw ex; } } } }