程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> ASP編程 >> 關於ASP編程 >> 用ASP+DLL實現WEB方式修改服務器時間

用ASP+DLL實現WEB方式修改服務器時間

編輯:關於ASP編程

     首先,在VB 6.0中建立一個ActiveX Dll工程項目,信息如下:

      工程名稱:systimeset
      類模塊名稱:timeset

      VB 6.0的類模塊代碼如下:

     

     1Option Explicit
     2Private SystemTime As SystemTime
     3Private Declare Function SetSystemTime()Function SetSystemTime Lib "kernel32" (lpSystemTime As SystemTime) As Long
     4Private Type SystemTime
     5        wYear As Integer
     6        wMonth As Integer
     7        wDayOfWeek As Integer
     8        wDay As Integer
     9        wHour As Integer
    10        wMinute As Integer
    11        wSecond As Integer
    12        wMilliseconds As Integer
    13End Type
    14
    15Dim tmp
    16
    17Private m_Hour As Integer
    18Private m_Minute As Integer
    19Private m_Year As Integer
    20Private m_Month As Integer
    21Private m_Day As Integer
    22Private m_Second As Integer
    23
    24'由李錫遠修改     修改日期:2006-08-31     修改項目:增加對年、月、日、秒的操作
    25'--------------------
    26'年
    27Public Property Get()Property Get Year() As Integer
    28Year = m_Year
    29End Property
    30Public Property Let()Property Let Year(tmp_Year As Integer)
    31m_Year = tmp_Year
    32End Property
    33'--------------------
    34'月
    35Public Property Get()Property Get Month() As Integer
    36Month = m_Month
    37End Property
    38Public Property Let()Property Let Month(tmp_Month As Integer)
    39m_Month = tmp_Month
    40End Property
    41'--------------------
    42'日
    43Public Property Get()Property Get Day() As Integer
    44Day = m_Day
    45End Property
    46Public Property Let()Property Let Day(tmp_Day As Integer)
    47m_Day = tmp_Day
    48End Property
    49'--------------------
    50'秒
    51Public Property Get()Property Get Second() As Integer
    52Second = m_Second
    53End Property
    54Public Property Let()Property Let Second(tmp_Second As Integer)
    55m_Second = tmp_Second
    56End Property
    57
    58
    59
    60Public Property Get()Property Get Hour() As Integer
    61Hour = m_Hour
    62End Property
    63Public Property Let()Property Let Hour(tmp_Hour As Integer)
    64m_Hour = tmp_Hour
    65End Property
    66Public Property Get()Property Get Minute() As Integer
    67Minute = m_Minute
    68End Property
    69Public Property Let()Property Let Minute(tmp_Minute As Integer)
    70m_Minute = tmp_Minute
    71End Property
    72
    73
    74
    75
    76Public Function setup()Function setup() As Integer
    77SystemTime.wDay = Day
    78'SystemTime.wDayOfWeek = 1
    79SystemTime.wMilliseconds = 0
    80SystemTime.wMonth = Month
    81SystemTime.wSecond = Second
    82SystemTime.wYear = Year
    83SystemTime.wHour = Hour
    84SystemTime.wMinute = Minute
    85setup = SetSystemTime(SystemTime)
    86
    87End Function
    88
    關於DLL的注冊,通常VB在本機上編譯後,會自動將DLL注冊;但如果你要放到IIS服務器上,請使用如下方法:
    1、將systimeset.dll拷貝到c:WINDOWSsystem32下;
    2、在開始菜單的運行裡面輸入:regsvr32 systimeset.dll     (敲回車啊)
    3、因為修改服務器的時間,INTERNET來賓帳戶不具有該權限,設立權限請打開控制面版中的“管理工具”,然後打開“本地安全策略”--“用戶權力指派”,雙擊“更改系統時間”,在彈出的對話框中點“添加用戶或組”,將INETNET來賓帳戶加入進來。
    4、一切完畢後,將IIS服務重新啟動一次。


    在上面的設置完畢後,使用systimeset.dll組件的ASP代碼頁面如下:
     

      將其編譯為systimeset.dll的文件。

     

     1<% @language="vbscript" %>
     2<%
     3function SetTime(strYear,strMonth,strDay)
     4response.Expires=0
     5set obj=server.createobject("systimeset.timeset")
     6    obj.Year=strYear
     7    obj.Month=strMonth
     8    obj.Day=strDay
     9    if Hour(now())-8>0 then
    10    obj.Hour=Hour(now())-8
    11    else
    12    obj.Hour=8
    13    end if
    14    obj.Minute=Minute(now())
    15    obj.Second=Second(now())
    16    obj.setup
    17
    18set obj=Nothing
    19end function
    20
    21if request("act")="modi" then
    22    call SetTime(request.Form("strYear"),request.Form("strMonth"),request.Form
    23
    24("strDay"))
    25end if
    26%>
    27<form id="form1" name="form1" method="post" action="?act=modi">
    28  <table width="290" border="0">
    29    <tr>
    30      <td width="77"><input name="strYear" type="text" id="strYear" value="<%=Year(now())%>" 
    31
    32size="8" /></td>
    33      <td width="49"><input name="strMonth" type="text" id="strMonth" value="<%=Month(now
    34
    35())%>" size="5" /></td>
    36      <td width="48"><input name="strDay" type="text" id="strDay" value="<%=Day(now())%>" 
    37
    38size="5" /></td>
    39      <td width="98"><input type="submit" name="Submit" value="修改日期" /></td>
    40    </tr>
    41  </table>
    42</form>
    43


      將上面的ASP代碼頁面粘貼到一個空的ASP文件中,然後在IIS中將站點設置好就可以了。(設置IIS虛擬目錄也可以的。)

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved