继前两篇文章远程管理IIS的Web Site(一) 显示IIS Web Site List & 远程管理IIS的Web Site(二) 找出Web Site之目录路径
这边在使用系统方式去针对Application Pool进行控制,可以远程开起停止等动作。这样就可以方便管理一堆服务器中的每个
网站
这里依旧使用DirectoryEntry类别来进行此动作。并搭配Invoke方法。
首先须取得要控制的Application Pool Name,可参考前面两篇方式进行。 www.it165.net
string appPoolPath = @"IIS://HostName/W3SVC/AppPools/" + Application Name;1.启动Application Pool
DirectoryEntry w3svc = new DirectoryEntry(appPoolPath);
w3svc.Invoke("Start", null);2.停止Application Pool
DirectoryEntry w3svc = new DirectoryEntry(appPoolPath);
w3svc.Invoke("Stop", null);3.回收Application Pool
DirectoryEntry w3svc = new DirectoryEntry(appPoolPath);
w3svc.Invoke("recycle", null);以上方式就可以远程控制IIS中的Application Pool的状态。
此外,若是在Domain内话,必须用有远程控制IIS权限的NT账号进行使用,否则会出现权限不足的状况发生。
若是Web Site话,该Web Site的Application Pool的识别也要设定远程控制IIS权限的NT账号