新微赢技术网

标题: ASP如何实现重启win2003服务器 [打印本页]

作者: 毅歌    时间: 2010-1-11 07:28
标题: ASP如何实现重启win2003服务器
大家好,我想实现一个功能:ASP重启服务器,在网上找了资料,按照上面做了,经过测试,在XP系统下可以实现重启,但服务器为2003的情况下却不可以,这是什么原因呢?
谢谢大家了。
资料如下:

    大家知道直接使用ASP是不能够重启服务器的,这时我们需要制作一个组件来实现功能,ASP通过这个组件调用系统API,然后按照不同的重启和关机方式进行操作!

  下面先说COM的制作,在VB中新建一工程,当然是AceiveX dll的!

  1)先修改工程属性,在工程属性窗口将工程名称改为system,在类模块窗口将模块名称改为contral,保存工程;

  2)然后添加一个模块,用来声明需要使用的API和常数!下面是模块中的内容!

  Declare Function ExitWindowsEx Lib "user32" (ByVal uFlags As Long, ByVal dwReserved As Long) As Long

  3)在类模块中输入下列代码:

  Public Function reboot(atype As Variant)
   t& = ExitWindowsEx(1, atype)
   End Function

  该函数需要传入一个参数,用来控制启动方式,这个参数是从ASP程序中传入的,等一下就可以看到具体的使用方法!

  编写完上面的代码,保存工程,将工程编译为system.dll。下面就写ASP程序!

  ASP中的代码非常简单:

  <%
   atype=request("atype")
   set sys=server.CreateObject ( "system.contral")
   sys.reboot(atype)
   % >

  其中atype可以使用0、1、2、4,0、1和4均为关机,2用来重启。写完后执行ASP就可以了!
作者: 草根    时间: 2010-1-11 07:28
十分感谢,谢谢
作者: 丑剑客    时间: 2010-1-11 07:28
极度危险
作者: √死胖子    时间: 2010-1-11 07:28
重要的是ASP站点的用户权限要为administrator权限才可以
你在XP下面是自己调试,当然可以给站点admin权限,服务器做了安全处理,ASP的权限被限制了,如果不限制的话别说重启,连删除整个操作系统不在话下。
你想想哪个管理员敢给ASP站点这么多权限吗




欢迎光临 新微赢技术网 (http://bbs.weiying.cn/) Powered by Discuz! X3.2