在实际施工中,经常会牵扯到为客户设置IIS服务器。原理并不复杂,但是实际操作时会很麻烦、繁琐,还要派工程师到现场。可否编程设置IIS服务器呢?我在本文中将稍作探讨,提供的例程很简单,只包括原理实现部分,距离实际工程应用还有很大差距。VB6.0编程设置IIS服务器是通过调用ADSI接口,设置Metabase实现的。 可在微软网站下载Metabase管理工具,网址如下: http://www.microsoft.com/downloads/details.aspx?FamilyID=48364a72-d54e-46dc-aacf-e3be887d17a6&DisplayLang=en安装Metabase管理工具可以验证VB程序对Metabase数据库的更改、设置。 当然,你用Windows所带的Internet服务管理器也是一样的。打开VB6.0开发环境,新建Exe工程。在工程引用中添加如下动态库。 Active DS Type Library Active DS IIS Extension Dll Active DS IIS Namespace ProviderForm1窗体上添加Command1按钮控件,Command1控件事件如下:Private Sub Command1_Click() Dim NamespaceObj As New IISNamespace Dim ServiceObj As Object Dim ServerObj As Object Dim VDirObj As ObjectOn 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")'Configure new virtual root VDirObj.Path = "C:\Inetpub" VDirObj.AccessRead = True VDirObj.AccessWrite = True VDirObj.EnableDirBrowsing = True'Write info back to Metabase VDirObj.SetInfo'Start the IIS Server that you recently created ServerObj.StartMsgBox "设置成功", , "" Exit SubErrLine: MsgBox Err.Description, , Err.NumberEnd Sub运行程序,点击Command1按钮(您要具备管理员的权限),程序将创建IISTest服务器,Root目录为C:\Inetpub,端口为88。打开IE浏览器,地址栏中输入http://localhost:88,验证刚才的设置。好了,先讲到这吧。最后,请注意:在实际工程中设置IIS服务器应谨慎,编程语句要严谨,对异常的处理也要考虑全面。再补充两句,也可以通过ASP页面,或Javascript、VBscript脚本实现上述功能。seaneal 2003/6/10
可在微软网站下载Metabase管理工具,网址如下:
http://www.microsoft.com/downloads/details.aspx?FamilyID=48364a72-d54e-46dc-aacf-e3be887d17a6&DisplayLang=en安装Metabase管理工具可以验证VB程序对Metabase数据库的更改、设置。
当然,你用Windows所带的Internet服务管理器也是一样的。打开VB6.0开发环境,新建Exe工程。在工程引用中添加如下动态库。
Active DS Type Library
Active DS IIS Extension Dll
Active DS IIS Namespace ProviderForm1窗体上添加Command1按钮控件,Command1控件事件如下:Private Sub Command1_Click()
Dim NamespaceObj As New IISNamespace
Dim ServiceObj As Object
Dim ServerObj As Object
Dim VDirObj As ObjectOn 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")'Configure new virtual root
VDirObj.Path = "C:\Inetpub"
VDirObj.AccessRead = True
VDirObj.AccessWrite = True
VDirObj.EnableDirBrowsing = True'Write info back to Metabase
VDirObj.SetInfo'Start the IIS Server that you recently created
ServerObj.StartMsgBox "设置成功", , ""
Exit SubErrLine:
MsgBox Err.Description, , Err.NumberEnd Sub运行程序,点击Command1按钮(您要具备管理员的权限),程序将创建IISTest服务器,Root目录为C:\Inetpub,端口为88。打开IE浏览器,地址栏中输入http://localhost:88,验证刚才的设置。好了,先讲到这吧。最后,请注意:在实际工程中设置IIS服务器应谨慎,编程语句要严谨,对异常的处理也要考虑全面。再补充两句,也可以通过ASP页面,或Javascript、VBscript脚本实现上述功能。seaneal 2003/6/10