用ASP.NET(VB版)创建WINDOWS 2000 SERVER站点

原创 2004年07月17日 10:28:00
用ASP.NET(VB)创建的WEB站点,我们的调用方式非常简单:
Dim test As New Class1()
test.CreateWebSit(webname,port, "D:/VB", "localhost")

下面是Class1的代码,该代码做的工作就是建立站点,如果有此站点的名称则自动覆盖(注意:本类需要引用Actice DS Type Library)
Public Class Class1

用localhost
'===========================

Function CreateWebSit(ByVal WWWSiteName As String, _
ByVal WWWTCPPort As String, _
ByVal WWWFilesPath As String, _
ByVal ComputerName As String) As Boolean

CreateWebSit = True
Dim TCPPort() As Object
'建立活动桌面'(IADS)对象。首先要在 VB 中的 'prject'菜单中的'references'中引'用 Active DS 'Type 'library 组件
Dim WWWServer As ActiveDs.IADs
Dim WWWService
Dim WWWVdir, WWWVdir2, WWWVdirRes As ActiveDs.IADs
Dim i As Integer
Dim HandleSameCase As Boolean
'取得W3SVC服务
WWWService = GetObject("IIS://" & ComputerName & "/W3SVC")
i = 1
HandleSameCase = True
On Error GoTo ErrWouldDo
'在IIS中查找每一个WEB站点
For Each WWWServer In WWWService
WWWServer = Nothing
WWWServer = GetObject("IIS://" & ComputerName & "/W3SVC/" & i)
'Debug.Print WWWServer.ServerComment
'如果在安装时系统中已经有了要加的站点,则要先删除干净
If UCase(WWWServer.ServerComment) = UCase(WWWSiteName) Then
WWWService.Delete("IISWebServer", i) '再删除
Exit For
End If
ReDim TCPPort(1)
TCPPort(0) = ""
TCPPort = WWWServer.Serverbindings
'如果端口已经有了则也要先删除
If TCPPort(0) = ":" & WWWTCPPort & ":" Then
WWWService.Delete("IISWebServer", i) '删除
Else
i = i + 1
End If
Next
HandleSameCase = False
CreateSite:
'MsgBox I
WWWServer = WWWService.Create("IISWebServer", i) '创建新站点
WWWServer.ServerComment = WWWSiteName '设置站点名
WWWServer.Serverbindings = ":" & WWWTCPPort & ":" '设置端口号
WWWServer.DefaultDoc = "default.asp,index.asp,default.htm,index.htm" '设置默认启动文件
WWWServer.AccessScript = True '设置权限
WWWServer.AccessRead = True
WWWServer.SetInfo()

'创建设置主目录
WWWServer = GetObject("IIS://" & ComputerName & "/W3SVC/" & i)
WWWVdir = WWWServer.Create("IISWebVirtualDir", "root")
WWWVdir.Path = WWWFilesPath '主目录的实际磁盘路径
WWWVdir.SetInfo()
WWWVdir.AppCreate(True)
WWWServer.Start() '启动新站点

'建立虚拟目录
'Set WWWVdirRes = WWWVdir.Create("IISWebVirtualDir", "Resource") '创建虚拟目录
'WWWVdirRes.Path = WWWFilesPath + "/Resource"
'WWWVdirRes.AccessRead = True
'WWWVdirRes.AccessWrite = True
'WWWVdirRes.SetInfo

'下面为自定义IIS Web Server的错误信息,等发生404错误时候指定调用网站主目录下的404.htm页面显示

WWWServer.HttpErrors = "404,0,FILE," + WWWFilesPath + "/404.htm"
WWWServer.SetInfo()

CreateWebSit = True

Exit Function
ErrWouldDo:
'MsgBox Err.Description
If (HandleSameCase = True) Then
GoTo CreateSite
Else
MsgBox(Err.Description)
CreateWebSit = False
Exit Function
End If
End Function

REM 建立虚拟目录程序
'ComputerName 服务器名(可以为localhost)
'DirName 要建立的虚拟目录名
'LinkAddr 该虚拟目录的真实路径
'WWWSiteName 站点名称
Function CreateVirtualDir(ByVal ComputerName As String, _
ByVal DirName As String, ByVal LinkAddr As String, _
ByVal WWWSiteName As String) As Boolean

Dim i As Integer
CreateVirtualDir = True
'取得W3SVC服务
Dim WWWServer As ActiveDs.IADs
Dim WWWService
WWWService = GetObject("IIS://" & ComputerName & "/W3SVC")
i = 1
Dim HandleSameCase As Boolean
HandleSameCase = True
Dim temp As Boolean
temp = False
For Each WWWServer In WWWService
WWWServer = Nothing
WWWServer = GetObject("IIS://" & ComputerName & "/W3SVC/" & i)

If UCase(WWWServer.ServerComment) = UCase(WWWSiteName) Then
temp = True
Exit For
End If

i = i + 1
Next

If Not temp Then
CreateVirtualDir = False
Exit Function
End If

Dim WWWVirtualDir, WWWIF As ActiveDs.IADs

WWWServer = GetObject("IIS://" & ComputerName & "/W3SVC/" & i & "/Root")

REM 检查是否该站点中已有该虚拟目录
On Error GoTo ErrHandle
WWWIF = GetObject("IIS://" & ComputerName & "/W3SVC/" & i & "/Root/" & DirName)
REM 如果有,则返回False
If WWWIF.Name <> "" Then
CreateVirtualDir = False
Exit Function
End If

ErrHandle:
'Debug.Print Err.Number
If Err.Number = -2147024893 Then
Err.Clear()
REM 如果是因为没有找到该虚拟目录出错的话则进行CreateVirtualDir建立虚拟目录
GoTo ReturnCreate
Else
CreateVirtualDir = False
Exit Function
End If


REM 建立虚拟目录
ReturnCreate:
WWWVirtualDir = WWWServer.Create("IISWebVirtualDir", DirName)
WWWVirtualDir.Path = LinkAddr
WWWVirtualDir.AccessRead = True
WWWVirtualDir.AccessScript = True
WWWVirtualDir.AppCreate(True)
WWWVirtualDir.SetInfo()

CreateVirtualDir = True
End Function

Function GetDBConnStr(ByVal DBName As String) As String
Select Case DBName
Case "friend"
GetDBConnStr = CStr(GetSetting("HostTask", "DBini", "ConnStr"))
Case "wuye"
GetDBConnStr = Replace$(CStr(GetSetting("HostTask", "DBini", "ConnStr")), "friend", "wuye")
Case Else
GetDBConnStr = CStr(GetSetting("HostTask", "DBini", "ConnStr"))
End Select
End Function

ArcgisServer安装与站点创建教程

1、解压完ArcGIS Server的安装包后,双击ESRI.exe开始进行安装; 2、在打开的安装界面中,我们点击ArcGIS for Server后面的安装; 3、在弹出的安装...
  • SmileCoffin
  • SmileCoffin
  • 2017年01月04日 16:13
  • 1851

ArcGIS for Server新建站点异常

Failed to create the site.Failed to configure the server machine'XXXX',Server machine'XXXX' is not a...
  • esricd
  • esricd
  • 2014年02月27日 15:15
  • 4784

asp.net--构建网站第一步(站点结构分析—>建立站点地图)

由上图
  • yayun0516
  • yayun0516
  • 2014年11月23日 18:06
  • 1180

windows server 2012 AD 域和站点部署系列(四)创建站点

前一篇博文介绍了林中第一个域的创建,本篇博文介绍如何创建实验要求中的三个站点(shanghai,beijing,guangzhou)...
  • ronsarah
  • ronsarah
  • 2014年05月12日 16:20
  • 9477

SQL Server 2000 创建角色,用户,权限(转)

创建角色,用户,权限 /*--示例说明         示例在数据库pubs中创建一个拥有表jobs的所有权限、拥有表titles的SELECT权限的角色r_test     随后创建了一个...
  • xiuping05214
  • xiuping05214
  • 2013年12月05日 15:03
  • 1678

ArcGIS Server 10.2新建站点失败

ArcGIS Server 10.2新建站点总是失败,查看日志内容如下: 结果发现果然是授权文件有问题,所以 ArcGIS Server 10.2授权文件ecp arcgisserver,1...
  • upcdxlq
  • upcdxlq
  • 2017年07月23日 10:36
  • 337

关于AIO5安装常见问题解答

1、AIO5安装的环境 除了推荐的安装配置以外,其他不同的系统和数据库是否也能适用。 普实推荐: 系统:Windows2008R2 64Bit Enterprise(企业版) 数据库:MS SQLSe...
  • push1999
  • push1999
  • 2017年03月15日 11:27
  • 244

windows server 2012 AD 活动目录部署系列(二)创建域控制器

二 创建域控制器 上一篇我们进行了DNS配置,有了 DNS 的支持,我们现在可以开始创建域控制器了,域控制器是域中的第一台服务器,域控制器上存储着 Active Directory,可以说,域控制器...
  • ronsarah
  • ronsarah
  • 2013年07月24日 10:57
  • 23283

Windows Server 2016——让世界上最大的云数据中心背后的创新为你所用

Windows Server 2016是微软发布的最新服务器操作系统。它在整体的设计风格与功能上更加靠近了Windows 10。   Windows Server 2016中的新增功能 ...
  • Harriet666
  • Harriet666
  • 2017年06月08日 17:34
  • 1350

windows下SVN服务器与web 站点的同步

转载的  觉得有用就就收藏了 http://blog.csdn.net/u014796999/article/details/52812182 这个主要是多人同步开发使用。 ...
  • lin___
  • lin___
  • 2017年03月22日 16:26
  • 840
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:用ASP.NET(VB版)创建WINDOWS 2000 SERVER站点
举报原因:
原因补充:

(最多只允许输入30个字)