用ASP编程控制在IIS建立WEB站点
类别: ASP教程
\'\'*******************************************************
\'\' 创建一个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
\'\' 创建一个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
- 上一篇: 关于ADODB.STREAM的写数据库数据到客户端
- 下一篇: ASP与数据库的基础应用
-= 资 源 教 程 =-
文 章 搜 索