前段时间,本地开发组希望使用集团统一的鉴权组件,所以,把一些程序更改,但是,运行结果却不是很好,后来查了很久的原因,发现集团公司写的一个组件内存一直占用很高,且访问一次,内存不段累加,却没有被释放,最终将造成系统内存耗光.....由于本地不可能修改该组件,唯一的办法只有每天定时重启该服务....
c#来重启服务,包括iis,等等,代码很简单.随便抄一段.
停止
ServiceController sc = new ServiceController("iisadmin");
if(sc.Status=ServiceControllerStatus.Running)
sc.Stop();
啟動IIS服務
ServiceController sc = new ServiceController("iisadmin");
sc.Start();
重啟
using System.Diagnostics;
Process.Start("iisreset");
上面的代码大概能够满足重启等,但是,最好还要加上一个等待状态的函数还有一个刷新的函数....
遇到的问题描述:
如上的代码,如果写成winform程序,启动任何程序都没问题.但是,写成windows服务.却还需要有一定的操作...
首先,需要确定这个服务发布的时候,是选择的localserver,还是localsystem等等....
然后,确定要启动的服务是以哪种方式发布的..localserver,localsystem等.....(服务->要重启的服务->属性->登陆)
然后,给定要重启的服务组件相应的访问权限....
有事Q我:
姓名:颜昌钢
联系方式:yanchanggang@boco.com.cn
电话:13886086508
QQ:95550107
公司:亿阳集团武汉分公司
移动飞信:647360243