River 发表于 2009-3-14 23:35:47

一个crash后自动恢复nwn server的办法

这几天服务器crash的很频繁,鉴于每次都召唤豆子会严重影响豆子的新婚生活,我想了个简单的办法在crash后自动重启NWN的服务器端程序,豆子来看看行不行的通。

步骤1:

创建一个bat文件,例如nwn.bat,里面的内容如下3行:


cd "C:\Program Files\Star Interactive\NWN\"
tasklist | findstr "nwserver.exe"
if errorlevel 1start "" "C:\Program Files\Star Interactive\NWN\nwserver.exe" -module "DL1H" -dmpassword "123"

第一行是NWN的目录,按照服务器端的实际目录替换。
第二行不用修改,是查看当前系统进程里面有没有nwserver.exe在运行。
第三行,需要替换3处。第一处是nwserver.exe的实际路径;第2处是module的名字,注意不要加.mod后缀;第3处是DM密码。

NWN的服务器其它的配置信息,可以在nwnplayer.ini的里面修改。然后,把nwn.bat文件拷贝至NWN目录下。

步骤2:

为nwn.bat创建一个任务计划,定时执行。例如从上午8点到晚上23点,每10分钟监测一次。

1,控制面板->任务计划->添加任务计划。
2,选择程序的时候点击浏览,选中NWN目录下的nwn.bat文件。
3,执行时间选中每天。
4,指定任务起始时间,例如8:00。
5,填写系统管理员密码。
6,勾中高级任务属性的checkbox,点击完成。
7,在高级任务属性里,选择计划->高级->重复任务。设置任务执行间隔,例如10分钟。设置任务的结束时间,例如晚上23:00。
8,确认,关闭所有对话框。

步骤3:

windows xp以后的系统加入了错误报告的功能,为了给微软提供程序崩溃时候的堆栈,帮助微软分析系统中的潜在BUG。但是错误报告对话框的弹出,会导致nwn的server在崩溃后不退出,必须用户关闭错误报告窗口后才会退出。所以这里要关闭错误报告。

1,右键点击我的电脑->属性->高级->错误报告。
2,选择禁用错误报告,并且取消“但在发生严重错误的时候通知我”。

我在本机上测试过,豆子评估一下吧。我在bioware的论坛看到专业的三方工具是firedaemon,但是那个需要收费。。。

boboo 发表于 2009-3-15 00:17:55

牛 牛 牛

sophia 发表于 2009-3-16 09:01:13

强人.不过十分钟太短了,半个小时就好.

月之暗面 发表于 2009-3-18 15:19:52

非常好,献计献策的狗头军师大大有赏

bing88868 发表于 2011-10-26 00:52:50

留下备用,感谢
页: [1]
查看完整版本: 一个crash后自动恢复nwn server的办法