Asp.Net IIS 管理类(全)
出处:http://www.cnblogs.com/wubiyu/archive/2007/07/06/807828.html
1 using System;
2 using System.Collections.Generic;
3 using System.Text;
4
5 using System;
6 using System.Data;
7 using System.DirectoryServices;
8 using System.Collections;
9
10 namespace IISManage
11 {
12/**////<summary>
13///IIS管理类,可以实现创建站点、虚拟目录,删除虚拟目录等///
14///</summary>
15publicclassIISManager
16{
17
18privatestring_server,_website,_AnonymousUserPass,_AnonymousUserName;
19privateVirtualDirectories_virdirs;
20protectedSystem.DirectoryServices.DirectoryEntryrootfolder;
21privatebool_batchflag;
22
23
24构造函数#region构造函数
25/**////<summary>
26///构造函数///
27///</summary>
28publicIISManager()
29{
30//默认情况下使用localhost,即访问本地机
31_server="localhost";_website="1";_batchflag=false;
32}
33
34
35/**////<summary>
36///构造函数
37///</summary>
38///<paramname="strServer">服务器</param>
39publicIISManager(stringstrServer)
40{
41_server=strServer;
42_website="1";_batchflag=false;
43}
44
45
46/**////<summary>
47///构造函数
48///</summary>
49///<paramname="strServer">服务器</param>
50///<paramname="website">站点,每一个站点为1,第二个站点为2,依此类推</param>
51publicIISManager(stringstrServer,intwebsite)
52{
53_server=strServer;
54_website=website.ToString();
55_batchflag=false;
56}
57#endregion#region定义公共属性
58
59
60/**////<summary>
61///匿名访问用户
62///</summary>
63publicstringAnonymousUserName
64{
65get{return_AnonymousUserName;}
66set{_AnonymousUserName=value;}
67}
68
69
70/**////<summary>
71///匿名访问用户密码
72///</summary>
73publicstringAnonymousUserPass
74{
75get{return_AnonymousUserPass;}
76set{_AnonymousUserPass=value;}
77}
78
79
80/**////<summary>
81///服务器,可以是IP或计算名
82///</summary>
83publicstringServer
84{
85get{return_server;}
86set{_server=value;}
87}
88
89/**////<summary>
90///站点,一般来说第一台主机为1,第二台主机为2,依次类推
91///</summary>
92publicintWebSite
93{
94get{returnConvert.ToInt32(_website);}
95set{_website=Convert.ToString(value);}
96}
97
98
99/**////<summary>
100///虚拟目录的名字
101///</summary>
102publicVirtualDirectoriesVirDirs
103{
104get{return_virdirs;}
105set{_virdirs=value;}
106}
107
108
109
110定义公共方法#region定义公共方法
111/**////<summary>
112///获取匿名访问用户的用户名和密码
113///</summary>
114publicvoidget_AnonymousUser()
115{
116_AnonymousUserPass="IUSR_DEVE-SERVER";
117_AnonymousUserName="IUSR_DEVE-SERVER";
118VirtualDirectoryvDir;
119try
120{
121HashtablemyList=(Hashtable)_virdirs;
122IDictionaryEnumeratormyEnumerator=myList.GetEnumerator();
123while(myEnumerator.MoveNext())
124{
125vDir=(VirtualDirectory)myEnumerator.Value;
126if(vDir.AnonymousUserName!=""&&vDir.AnonymousUserPass!="")
127{
128_AnonymousUserName=vDir.AnonymousUserName;
129_AnonymousUserPass=vDir.AnonymousUserPass;
130break;
131}
132}
133}
134catch
135{
136_AnonymousUserPass="IUSR_DEVE-SERVER";
137_AnonymousUserName="IUSR_DEVE-SERVER";
138}
139}
140
141
142/**////<summary>
143///连接服务器
144///</summary>
145publicvoidConnect()
146{
147ConnectToServer();
148}
149
1 using System;
2 using System.Collections.Generic;
3 using System.Text;
4
5 using System;
6 using System.Data;
7 using System.DirectoryServices;
8 using System.Collections;
9
10 namespace IISManage
11 {
12/**////<summary>
13///IIS管理类,可以实现创建站点、虚拟目录,删除虚拟目录等///
14///</summary>
15publicclassIISManager
16{
17
18privatestring_server,_website,_AnonymousUserPass,_AnonymousUserName;
19privateVirtualDirectories_virdirs;
20protectedSystem.DirectoryServices.DirectoryEntryrootfolder;
21privatebool_batchflag;
22
23
24构造函数#region构造函数
25/**////<summary>
26///构造函数///
27///</summary>
28publicIISManager()
29{
30//默认情况下使用localhost,即访问本地机
31_server="localhost";_website="1";_batchflag=false;
32}
33
34
35/**////<summary>
36///构造函数
37///</summary>
38///<paramname="strServer">服务器</param>
39publicIISManager(stringstrServer)
40{
41_server=strServer;
42_website="1";_batchflag=false;
43}
44
45
46/**////<summary>
47///构造函数
48///</summary>
49///<paramname="strServer">服务器</param>
50///<paramname="website">站点,每一个站点为1,第二个站点为2,依此类推</param>
51publicIISManager(stringstrServer,intwebsite)
52{
53_server=strServer;
54_website=website.ToString();
55_batchflag=false;
56}
57#endregion#region定义公共属性
58
59
60/**////<summary>
61///匿名访问用户
62///</summary>
63publicstringAnonymousUserName
64{
65get{return_AnonymousUserName;}
66set{_AnonymousUserName=value;}
67}
68
69
70/**////<summary>
71///匿名访问用户密码
72///</summary>
73publicstringAnonymousUserPass
74{
75get{return_AnonymousUserPass;}
76set{_AnonymousUserPass=value;}
77}
78
79
80/**////<summary>
81///服务器,可以是IP或计算名
82///</summary>
83publicstringServer
84{
85get{return_server;}
86set{_server=value;}
87}
88
89/**////<summary>
90///站点,一般来说第一台主机为1,第二台主机为2,依次类推
91///</summary>
92publicintWebSite
93{
94get{returnConvert.ToInt32(_website);}
95set{_website=Convert.ToString(value);}
96}
97
98
99/**////<summary>
100///虚拟目录的名字
101///</summary>
102publicVirtualDirectoriesVirDirs
103{
104get{return_virdirs;}
105set{_virdirs=value;}
106}
107
108
109
110定义公共方法#region定义公共方法
111/**////<summary>
112///获取匿名访问用户的用户名和密码
113///</summary>
114publicvoidget_AnonymousUser()
115{
116_AnonymousUserPass="IUSR_DEVE-SERVER";
117_AnonymousUserName="IUSR_DEVE-SERVER";
118VirtualDirectoryvDir;
119try
120{
121HashtablemyList=(Hashtable)_virdirs;
122IDictionaryEnumeratormyEnumerator=myList.GetEnumerator();
123while(myEnumerator.MoveNext())
124{
125vDir=(VirtualDirectory)myEnumerator.Value;
126if(vDir.AnonymousUserName!=""&&vDir.AnonymousUserPass!="")
127{
128_AnonymousUserName=vDir.AnonymousUserName;
129_AnonymousUserPass=vDir.AnonymousUserPass;
130break;
131}
132}
133}
134catch
135{
136_AnonymousUserPass="IUSR_DEVE-SERVER";
137_AnonymousUserName="IUSR_DEVE-SERVER";
138}
139}
140
141
142/**////<summary>
143///连接服务器
144///</summary>
145publicvoidConnect()
146{
147ConnectToServer();
148}
149