コード例 #1
0
ファイル: Error.cs プロジェクト: ruo2012/DataSmart.MailServer
 public static void DumpError(string virtualServer, string errorText)
 {
     try
     {
         DataSet dataSet = new DataSet("dsEvents");
         dataSet.Tables.Add("Events");
         dataSet.Tables["Events"].Columns.Add("ID");
         dataSet.Tables["Events"].Columns.Add("VirtualServer");
         dataSet.Tables["Events"].Columns.Add("CreateDate", typeof(DateTime));
         dataSet.Tables["Events"].Columns.Add("Type");
         dataSet.Tables["Events"].Columns.Add("Text");
         if (File.Exists(SCore.PathFix(Error.m_Path + "Settings\\Events.xml")))
         {
             dataSet.ReadXml(SCore.PathFix(Error.m_Path + "Settings\\Events.xml"));
         }
         DataRow dataRow = dataSet.Tables["Events"].NewRow();
         dataRow["ID"]            = Guid.NewGuid().ToString();
         dataRow["VirtualServer"] = virtualServer;
         dataRow["CreateDate"]    = DateTime.Now;
         dataRow["Type"]          = 0;
         dataRow["Text"]          = errorText;
         dataSet.Tables["Events"].Rows.Add(dataRow);
         dataSet.WriteXml(SCore.PathFix(Error.m_Path + "Settings\\Events.xml"));
     }
     catch
     {
     }
 }
コード例 #2
0
 public static void WriteLog(string fileName, string text)
 {
     try
     {
         fileName = SCore.PathFix(fileName);
         if (!Directory.Exists(Path.GetDirectoryName(fileName)))
         {
             Directory.CreateDirectory(Path.GetDirectoryName(fileName));
         }
         using (FileStream fileStream = new FileStream(fileName, FileMode.OpenOrCreate, FileAccess.Write))
         {
             StreamWriter streamWriter = new StreamWriter(fileStream);
             streamWriter.BaseStream.Seek(0L, SeekOrigin.End);
             streamWriter.Write(text + "\r\n");
             streamWriter.Flush();
         }
     }
     catch
     {
     }
 }
コード例 #3
0
        internal IMailServerManagementApi LoadApi(string assembly, string typeName, string initString)
        {
            string path;

            if (File.Exists(SCore.PathFix(this.m_StartupPath + "\\" + assembly)))
            {
                path = SCore.PathFix(this.m_StartupPath + "\\" + assembly);
            }
            else
            {
                path = SCore.PathFix(assembly);
            }
            Assembly assembly2 = Assembly.LoadFile(path);
            Type     type      = assembly2.ExportedTypes.FirstOrDefault((Type x) => x.FullName == typeName && typeof(IMailServerManagementApi).IsAssignableFrom(x));

            if (type == null)
            {
                throw new Exception("cannot load type with name " + typeName);
            }
            return((IMailServerManagementApi)Activator.CreateInstance(type, new object[]
            {
                initString
            }));
        }