用ASP编程控制在IIS建立Web站点

王朝asp·作者佚名  2006-11-24
宽屏版  字体: |||超大  

''*******************************************************

'' 创建一个WebServer

'' 必须参数:WRoot,为创建站点的物理目录;WComment为站点说明;WPort为站点端口;ServerRun为是否自动运行

'' 当创建成功时返回1,失败时提示退出并返回0,当创建站点成功但启动失败时返回2

''*******************************************************

''****************注意:WPort为List类型,意为服务器端口*************

''本函数在IIS5.0上通过,**必须以管理员身份登录**

'' 端口举例:

'' Dim WPort,bindlists,createflag,oComputer

'' oComputer="LocalHost"

'' binglists=Array(0)

'' binglists(0)=":80:"''端口号为80

'' WPort=binglists

'' createflag=CreateWebServer("D:\myweb","我的家园",WPort,False)''调用建站函数

''If creatflag=0 Then

'' Response.Write "创建站点失败!请确定是否有权限"

'' ElseIf createflag=1 Then

'' Response.Write "创建站点成功!"

'' ElseIf createflag=2 Then

'' Response.Write "创建站点成功,但启动站点失败,可能端口冲突!"

'' End If

''********************************************************************************

''

Function CreateWebServer(WRoot,WComment,WPort,ServerRun)

On Error Resume Next

Dim ServiceObj,ServerObj,VDirObj

Set ServiceObj = GetObject("IIS://"&oComputer&"/W3SVC")'' 首先创建一个服务实例

WNumber=1

Do While IsObject(ServiceObj.GetObject("IIsWebServer",WNumber))

If Err.number<>0 Then

Err.Clear()

Exit Do

End If

WNumber=WNumber+1

Loop

Set ServerObj = ServiceObj.Create("IIsWebServer", WNumber)'' 然后创建一个WEB服务器

If (Err.Number <> 0) Then'' 是否出错

''Response.Write "错误: 创建Web服务器的ADSI操作失败!"

CreateWebServer=0

Exit Function

End If

'' 接着配置服务器

ServerObj.ServerSize = 1 '' 中型大小

ServerObj.ServerComment = WComment ''说明

ServerObj.ServerBindings = WPort ''端口

ServerObj.EnableDefaultDoc=True

'' 提交信息

ServerObj.SetInfo

'' 最后,建立虚拟目录

Set VDirObj = ServerObj.Create("IIsWebVirtualDir", "ROOT")

If (Err.Number <> 0) Then'' 是否出错

''Response.Write "错误: 创建虚拟目录的ADSI操作失败!"

CreateWebServer=0

Exit Function

End If

'' 配置虚拟目录

VDirObj.Path = WRoot

VDirObj.AccessRead = True

VDirObj.AccessWrite = True

VDirObj.EnableDirBrowsing = False

VDirObj.EnableDefaultDoc=True

VDirObj.Accessscript=True

VDirObj.AppCreate2 2

VDirObj.AppFriendlyName="默认应用程序"

VDirObj.SetInfo

If ServerRun = True Then

ServerObj.Start

If (Err.Number <> 0) Then '' Error!

''Response.Write "错误: 起动服务器时出错!请手动启动WebServer "&WComment&"!<br>"

CreateWebServer=2

Exit Function

End If

End If

Set VDirObj=Nothing

Set ServerObj=Nothing

Set ServiceObj=Nothing

CreateWebServer=1

End Function

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有