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;
}
}
}
}