diff --git a/DigitalPlatform.MessageServer/ServerInfo.cs b/DigitalPlatform.MessageServer/ServerInfo.cs index 0dba4ed2..ddd1e97b 100644 --- a/DigitalPlatform.MessageServer/ServerInfo.cs +++ b/DigitalPlatform.MessageServer/ServerInfo.cs @@ -79,7 +79,7 @@ public static void CreateCfgFile(string strCfgFileName, dom.Save(strCfgFileName); } - public static void Initial(InitialParam param) + public static void Initial(InitialParam param, bool bStartThread = true) { AutoTriggerUrl = param.AutoTriggerUrl; @@ -117,7 +117,8 @@ public static void Initial(InitialParam param) WriteErrorLog("装载配置文件 '" + strCfgFileName + "' 时出现异常: " + ExceptionUtil.GetExceptionText(ex)); } - BackThread.BeginThread(); + if (bStartThread) + BackThread.BeginThread(); } static string strMongoDbConnStr = ""; @@ -170,9 +171,9 @@ public static void CleanExpiredMessage() // 删除 1 天以前失效的消息 MessageDatabase.DeleteExpired(DateTime.Now - new TimeSpan(1, 0, 0, 0)).Wait(); // 删除一年前发布的消息 - MessageDatabase.DeleteByPublishTime(DateTime.Now - new TimeSpan(365,0,0,0)).Wait(); + MessageDatabase.DeleteByPublishTime(DateTime.Now - new TimeSpan(365, 0, 0, 0)).Wait(); } - catch(Exception ex) + catch (Exception ex) { WriteErrorLog("清理失效消息时出现异常: " + ExceptionUtil.GetDebugText(ex)); } diff --git a/Ionic.Zip.dll b/Ionic.Zip.dll new file mode 100644 index 00000000..95fa9288 Binary files /dev/null and b/Ionic.Zip.dll differ diff --git a/ZipUtil.exe b/ZipUtil.exe new file mode 100644 index 00000000..37417018 Binary files /dev/null and b/ZipUtil.exe differ diff --git a/dp2MServer/Program.cs b/dp2MServer/Program.cs index a67d6c3c..52c86ed6 100644 --- a/dp2MServer/Program.cs +++ b/dp2MServer/Program.cs @@ -3,6 +3,7 @@ using System.Threading.Tasks; using System.ServiceProcess; using System.Diagnostics; +using System.IO; using Owin; using Microsoft.Owin.Cors; @@ -12,7 +13,6 @@ using DigitalPlatform.MessageServer; using DigitalPlatform.ServiceProcess; -using System.IO; using DigitalPlatform.IO; namespace dp2MServer @@ -148,9 +148,11 @@ static void Main(string[] args) // 创建超级用户账户 if (args.Length == 1 && args[0].Equals("createuser")) { - if (Initial() == false) + if (Initial(false) == false) return; + ServerInfo.InitialMongoDb(true); + string strUserName = "supervisor"; string strPassword = ""; @@ -256,7 +258,7 @@ static void CreateSupervisor(string strUserName, string strPassword) // return: // true 初始化成功 // false 初始化失败 - static bool Initial() + static bool Initial(bool bStartThread = true) { try { @@ -266,7 +268,7 @@ static bool Initial() InitialParam param = new InitialParam(); param.DataDir = DataDir; param.AutoTriggerUrl = AutoTriggerUrl; - ServerInfo.Initial(param); + ServerInfo.Initial(param, bStartThread); return true; }