精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>编程开发>>● ASP>>组件应用>>ADSI & 目录服务>>关于用asp编程在IIS中建一个Ftp站点

主题:关于用asp编程在IIS中建一个Ftp站点
发信人: nonepassby(左右無人)
整理人: qcrsoft(2002-05-09 23:21:39), 站内信件
最近看了一下adsi,觉得收获很大,建议asp程序员都看一看:)
下面是有关建ftp站点的,为了使大家能够更好的理解,我把它用函数封装起来,并加上了注释,有什么问题欢迎和我交流
'  已测试通过


' 注意:***必须以管理员身分登录该页*****
'        WRoot为要建站点的要目录的物理路径
'        WComment为站点说明,即在IIS中的名称
'        WPort为端口号,特别注意,它是一个list参数
'        ServerRun为建站后是否启动
'        Dim WPort,bindlists,IsCreate,oComputer
'        oComputer="LocalHost"   '原来忘了加这一全局变量了LocalHost代表本机
'        ***********************
'        bindlists=Array(0)
'        bindlists(0)=":21:"
'        WPort=bindlists
'        ***********************
'        IsCreate=CreateFtpServer("D:\ftp","my ftpsite",WPort,False)
'        If IsCreate=1 Then 
'           Response.Write "创建Ftp站点my ftpsite成功!"
'        ElseIf IsCreate=2 Then 
'           Response.Write "创建Ftp站点my ftpsite成功!"
'           Response.Write "启动Ftp站点my ftpsite失败!"
'        ElseIf IsCreate=0 Then
'           Response.Write "创建Ftp站点my ftpsite失败!"
'        End If


'**************************************************************
Function CreateFtpServer(WRoot,WComment,WPort,ServerRun)
On Error Resume Next
Dim ServiceObj,ServerObj,VDirObj
Dim WNumber
Set ServiceObj = GetObject("IIS://"&oComputer&"/MSFTPSVC")' 首先创建一个服务实例

WNumber=1
Do While IsObject(ServiceObj.GetObject("IIsFtpServer",WNumber))
If Err.number<>0 Then 
Err.Clear()
Exit Do
End If
WNumber=WNumber+1
Loop

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

If (Err.Number <> 0) Then' 是否出错
Response.Write "错误:  创建Ftp服务器的ADSI操作失败!"
CreateFtpServer=0
Exit Function
End If
  
  ' 接着配置服务器
  ServerObj.ServerSize = 1   ' 中型大小
  ServerObj.ServerComment = WComment '说明
  ServerObj.ServerBindings = WPort '端口

  ' 提交信息
  ServerObj.SetInfo

  ' 最后,建立虚拟目录
  Set VDirObj = ServerObj.Create("IIsFtpVirtualDir", "ROOT")
    
    If (Err.Number <> 0) Then' 是否出错
'Response.Write "错误:  创建虚拟目录的ADSI操作失败!"
CreateFtpServer=0
Exit Function
    End If

  ' 配置虚拟目录
  VDirObj.Path = WRoot
  VDirObj.AccessRead = True
  VDirObj.AccessWrite = True
  VDirObj.SetInfo

  ' 成功了!
  If ServerRun = True Then
     ServerObj.Start
       If (Err.Number <> 0) Then    ' Error!
'Response.Write "错误:  起动服务器时出错!"
CreateFtpServer=2
Exit Function
       End If
  End If
  Set VDirObj=Nothing
  Set ServerObj=Nothing
  Set ServiceObj=Nothing
  CreateFtpServer=1
End Function
'**************************************************************


----
網易之左右無人给我留言 

[关闭][返回]