C#操作IIS
来源:互联网 发布:91淘课网软件下载 编辑:程序博客网 时间:2024/05/01 10:37
最近想开发个WinForm程序,用于网站数据备份。首先想到的第一个功能就是获取当前服务器的所有网站列表。百度了一下IIS的API,没有发现什么有用的东西。不过后来搜索到了ADSI。
首先解释下ADSI。ADSI(Active Directory Services Interfaces)是一种目录服务抽象接口与组件对象模型(COM)兼容的编程语言。可以使用该接口对基础目录服务进行一般的目录调用。目前已经实现ADSI的服务有:
1.Windows NT域用户管理
2.LDAP(Exchange Server)目录服务
3.Internet Information Server
4.NDS(Novell NetWare Directory Services)
嘿嘿,发现了吧,IIS正在其中。
在.Net的System.DirectoryServices命名空间中包含了诸如DirectoryEntry和DirectoryEntries等功能强大的类。这些类为我们提供了访问ADSI的功能。也就是间接操作IIS的功能!
ADSI的语法我暂时没搜索到,不过没关系,依靠DirectoryEntry类,只需稍加学习,便能控制IIS。
接着看DirectoryEntry。在创建该类的实例对象后,我们可以将该对象绑定到位于指定路径的Active Directory域服务中的节点。该路径的格式为:
IIS://ComputerName/Service/Website/Directory
ComputerName:即操作的服务器的名字,也可以是IP。
Service:即操作的服务器,IIS中有Web,也有FTP,还有SMTP这些服务,我们主要是操作IIS的Web功能,因此此处就是"W3SVC",如果是FTP则应是"MSFTPSVC"。
WebSite:一个IIS服务中可以包括很多的站点,这个就用于设置操作的站点。他的值是一个数字,默认是1,表示缺省站点。
Directory:不用说,即操作的目录名称,一个站点一般顶层目录为"ROOT",其它目录则是它的孩子(Child)。
DirectoryEntry DE = new DirectoryEntry("IIS://localhost/W3SVC");
DirectoryEntries DES = DE.Children;
foreach (DirectoryEntry DE2 in DES)
{
if (DE2.SchemaClassName == "IIsWebServer")
{
Label1.Text += DE2.Name + "/n";
Label1.Text += DE2.Properties["ServerComment"][0].ToString();
}
}
以上代码演示了如何使用DirectoryEntry取出本地IIS服务器上的所有站点。
这里的ServerComment是指某个站点的站点名称。
ServerBindings IIS虚拟站点绑定的IP、端口、域名
ServerComment IIS虚拟站点的名称
MaxConnections IIS虚拟站点的最大连接数
AnonymousUserName 站点用户名
AnonymousUserPass 站点密码
AccessRead 站点读取权限
AccessExecute 站点执行权限
AccessWrite 站点写入权限
AccessScript 脚本
AccessSSL 支持SSL
AuthBasic 支持Basic
AuthNTLM 支持NTLM
EnableDefaultDoc 支持索引
EnableDirBrowsing 目录可浏览
DefaultDoc 缺省页
Path 主目录
AppPoolId 应用程序池
以上是常用属性。我也就搜索出那么多了。剩下的就靠大家发挥和挖掘啦。谁有新的资料别忘了给我留言喔!
- C#操作IIS代码
- c#操作IIS
- C#操作IIS
- c# 操作 IIS
- C# 操作iis
- C#操作IIS代码
- C#操作IIS
- C#操作IIS
- C#操作IIS
- C#操作IIS(另)
- C#操作IIS代码
- C#操作IIS代码
- C#操作IIS
- C# 操作IIS
- C#操作IIS
- C# 操作IIS
- C#操作IIS的代码
- C#操作IIS的代码
- 针对最近很多关于网速慢的问题,做一下科普和解决办法
- MFC贴图备忘
- poj 2959
- AT89S52+GPS模块+12864液晶+4*4键盘
- Java类重名
- C#操作IIS
- .NET Open Source Project
- Red Hat Enterprise Linux 下cvs服务器的安装与配置
- linux 中注意事项
- 定制Netbeans的编译和打包ant脚本
- 行转列
- 传智播客——struts框架原理及应用(三)struts标签
- oracle常用数据类型
- 驱动