c# 远程回收IIS应用池

8/10/2015来源:ASP.NET技巧人气:1463

c# 远程回收IIS应用池

利用下列代码可实现IIS应用池的远程回收

var serverManager = ServerManager.OpenRemote(ip);var appPools = serverManager.applicationPools;foreach (var ap in appPools){ ap.Recycle();}

注意点:

1.需要添加引用C:\Windows\System32\inetsrv\Microsoft.Web.Administration.dll ,然后using Microsoft.Web.Administration;

2.远程账号需要有管理员权限;

3.远程主机的账号密码添加在服务器的凭据管理器中 (控制面板->凭据管理器) ,能成功使用mstsc 登录即可;

4.远程主机需要关闭UAC!! 因为这个问题卡了好几个礼拜才无意发现。

ps:可以利用ap.Recycle()的返回值判断回收是否成功。