<%
'**********************************************************************************
' 建立一個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
'********************************************************************************
'關於Ftp網站的建立我已發表在asp版,請有興趣的朋友自己去查看
'如有問題,歡迎跟我聯絡:nonepassby@163.com
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
%>