打开VB6.0开发环境,新建Exe工程。在工程引用中添加如下动态库。
Active DS Type Library
Active DS IIS Extension Dll
Active DS IIS Namespace Provider
Form1窗体上添加Command1按钮控件,Command1控件事件如下:
Private Sub Command1_Click()
Dim NamespaceObj As New IISNamespace
Dim ServiceObj As Object
Dim ServerObj As Object
Dim VDirObj As Object
On Error GoTo ErrLine
'Create a new server
Set ServiceObj = NamespaceObj.GetObject("IIsWebService", "Localhost/W3SVC")
Set ServerObj = ServiceObj.Create("IIsWebServer", "18")
'Next, configure new server
ServerObj.ServerSize = 1
ServerObj.ServerComment = "IISTest"
ServerObj.ServerBindings = ":88:"
'Write info back to Metabase
ServerObj.SetInfo
'Create virtual root directory
Set VDirObj = ServerObj.Create("IIsWebVirtualDir", "ROOT")
Function CreateWebSit(ByVal WWWSiteName As String, _
ByVal WWWTCPPort As String, _
ByVal WWWFilesPath As String, _
ByVal ComputerName As String, ByVal defaultstart As String) As Boolean
'On Error GoTo ErrWouldDo
On Error Resume Next
CreateWebSit = True
Dim TCPPort() As Variant
Dim WWWServer As IADs, WWWService As IADs, WWWVdir, WWWVdirRes As IADs
Dim i As Integer
Dim HandleSameCase As Boolean
Set WWWService = GetObject("IIS://" & ComputerName & "/W3SVC")
i = 1
HandleSameCase = True
For Each WWWServer In WWWService
Set WWWServer = Nothing
Set WWWServer = GetObject("IIS://" & ComputerName & "/W3SVC/" & i)
'Debug.Print WWWServer.ServerComment
If UCase(WWWServer.ServerComment) = UCase(WWWSiteName) Then
WWWService.Delete "IISWebServer", i
'GoTo exitsystem
Exit For
End If
WWWService.Delete "IISWebServer", i
Else
i = i + 1
End If
Next
HandleSameCase = False
CreateSite:
'MsgBox I
Set WWWServer = WWWService.Create("IISWebServer", i)
WWWServer.ServerComment = WWWSiteName
WWWServer.Serverbindings = ":" & WWWTCPPort & ":"
WWWServer.DefaultDoc = "default.asp,index.asp,default.htm,index.htm"
WWWServer.AccessExecute = True
WWWServer.AccessRead = True
WWWServer.AccessScript = True
WWWServer.EnableDirBrowsing = True
WWWServer.DirBrowseShowDate = False
WWWServer.EnableDefaultDoc = True
WWWServer.SetInfo
Set WWWServer = GetObject("IIS://" & ComputerName & "/W3SVC/" & i)
Set WWWVdir = WWWServer.Create("IISWebVirtualDir", "root")
WWWVdir.Path = WWWFilesPath
WWWVdir.SetInfo
WWWVdir.AppCreate True
If defaultstart = "1" Then
WWWServer.start
Else
WWWServer.Stop
End If
Dim a() As String
Dim ii As Integer
Call LoadDrivenames(a) 'μ÷ó?loaddrivename,ò?a?a2?êy,·μ???y?ˉ?÷??3?
For ii = 0 To DriveCount - 1
Set WWWVdirRes = WWWVdir.Create("IISWebVirtualDir", Mid(a(ii), 1, 1))
WWWVdirRes.Path = a(ii)
WWWServer.AccessExecute = True
WWWServer.AccessRead = True
WWWServer.AccessScript = True
WWWServer.EnableDirBrowsing = True
WWWServer.DirBrowseShowDate = False
WWWServer.EnableDefaultDoc = True
WWWVdirRes.SetInfo
Next ii
Dim rs As ADODB.Recordset
Set rs = New ADODB.Recordset
Dim sql As String
sql = "select * from opensystem where id = 1"
rs.Open Trim$(sql), conn, 1, 3, adCmdText
If Not rs.EOF Then
rs("iscreatesite") = "1"
rs.Update
End If
rs.Close
Set rs = Nothing
Exit Function
'exitsystem:
'If defaultstart = "1" Then
' WWWServer.start
'Else
' WWWServer.Stop
'End If
'Exit Function
'ErrWouldDo:
'MsgBox Err.Description & ""
'If (HandleSameCase = True) Then
'GoTo CreateSite
'Else
'MsgBox Err.Description & ""
'CreateWebSit = False
'Exit Function
'End If
End Function