conn.asp不再贴出。 这里从数据库中读出目录名 <!--#include file="conn.asp"--> <% 'response.end '//这是做调试时用的 on error resume next Set Rs=Server.CreateObject("ADODB.Recordset") Rs.ActiveConnection = MyConnection Sql="select * from 你的表名 where 你指定的条件" Rs.Open Sql,,1,2 If Rs.Eof Then Response.End '//如果无符合条件记录,则停止 Rs.MoveFirst dim namestr '//定义虚拟目录名变量 Do while not rs.eof if instr(1,namestr,server.htmlencode(Trim(Rs("SUname"))))<>0 Then Rs.MoveNext name=name&server.htmlencode(Trim(Rs("SUname"))) %> <% sComputer ="localhost" sPhyDir = "X:\test\" & server.htmlencode(Trim(Rs("SUname"))) '//这里定义虚拟目录指向的物理路径 sVirDir = server.htmlencode(Trim(Rs("Suname"))) '//这里定义虚拟目录名 set websvc = GetObject("IIS://" & sComputer & "/W3svc/1") '//获得你当前站点对象。若有多个站点,那么改动后面1为2,3...即可指向其它的 set vRoot = websvc.GetObject("IIsWebVirtualDir", "Root") '//获得当前站点虚拟ROOT Set ClassDefinition = GetObject(vRoot.Schema) '//获得虚拟目录的类定义 asMustHaves = ClassDefinition.MandatoryProperties asMayHaves = ClassDefinition.OptionalProperties i=1 %> <table border=1> <tr><th>Class Must Have Property</th> <th>Root Virtual Directory Current value</th></tr> <% on error resume next
For Each Thing in asMustHaves Response.Write "<tr><td>("& Cstr(i) & ") " &_ Thing & "</td><td>" & vRoot.Get(Thing) &_ "</td></tr>" i = i + 1 Next %> </table> <table border=1> <tr><th>Class May Have Property</th> <th>当前站点</th></tr> <% i=1 For Each Thing in asMayHaves Response.Write "<tr><td>("& CStr(i) & ") " &_ Thing & "</td><td>" & vRoot.Get(Thing) &_ "</td></tr>" i = i + 1 Next on error goto 0
'//建立虚拟目录 Response.Write svirdir & " " Set vDir = vRoot.Create("IIsWebVirtualDir",sVirDir) '//设置虚拟目录的两个属性,这里设置可读属性和将虚拟目录的路径指向物理路径 vDir.AccessRead = true vDir.Path = sPhyDir vDir.SetInfo '//将信息写入库,指的IIS站点相关的库,不是你的用户数据表 %> <% Rs.Movenext Loop Rs.Close Response.Write "创建虚拟目录完成!" %> 另外,还有利用adsi进行站点设置比如建站点,删除站点,配置站点IP,主机头,默认文档的等等,这里不做下载,有兴趣的朋友可以到微软站点下载 adsiSDK 的开发文档深入。 |