网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > ASP技巧
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.输入显示框中循环出现文字.
.remote script文档(转载自微软)(.
.巧用缓存提高asp程序的性能.
.生成一个不重复的随即数字.
.session的用法具体解说.
.在IIS中用ISAPI_Rewrite Lite版配.
.使用ASP重启服务器.
.利用JSP的思想来做ASP.
.在ASP中使用事务控制.
.用XML数据岛解决用户界面问题 - 2.
.在ASP中执行Ping命令,并且返回结.
.使用xml作为数据源,配合asp:Men.
.ASP中实现从dbf数据库导出数据到.
.怎样读取一个文本文件的内容?.
.ASP.NET中的XML表单控件.
.一个比较实用的asp函数集合类 .
.ASP+SQL Server之图象数据处理.
.Microsoft VBscript运行时错误'8.
.查看ASP Session 变量的小工具 .
.在ASP中用集合成批操作数据库.

用ASP+DLL实现WEB方式修改服务器时间

发表日期:2006-9-3


昨天一个朋友有个需求,是要通过WEB方式,修改IIS服务器上的时间,由于他的系统是ASP 3.0下开发的,所以本例子的代码是ASP的,不是ASP.NET,但是本人写这个文章是想抛砖引玉,毕竟编写程序关键的不是语言,更重要的是一种思想,把程序语言理解为一种工具,把编程思想理解为解决问题的思路和方法,那么编写出来的程序就是:利用“工具”按照解决问题的“思想”去解决一个问题。

首先,要感谢网友“小虎”,我是在网上看了他写的一篇关于用VB 6.0编写DLL组件FOR ASP的文章改写的,他的DLL代码只实现了改写小时和分钟,我增加了年、月、日、秒的修改。

首先,在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
将其编译为systimeset.dll的文件。

关于DLL的注册,通常VB在本机上编译后,会自动将DLL注册;但如果你要放到IIS服务器上,请使用如下方法:
1、将systimeset.dll拷贝到c:\WINDOWS\system32下;
2、在开始菜单的运行里面输入:regsvr32 systimeset.dll     (敲回车啊)
3、因为修改服务器的时间,INTERNET来宾帐户不具有该权限,设立权限请打开控制面版中的“管理工具”,然后打开“本地安全策略”--“用户权力指派”,双击“更改系统时间”,在弹出的对话框中点“添加用户或组”,将INETNET来宾帐户加入进来。
4、一切完毕后,将IIS服务重新启动一次。


在上面的设置完毕后,使用systimeset.dll组件的ASP代码页面如下:


 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
以上是所有实现的代码,有问题可以加我QQ:17020415

将上面的ASP代码页面粘贴到一个空的ASP文件中,然后在IIS中将站点设置好就可以了。(设置IIS虚拟目录也可以的。)

http://www.cnblogs.com/lixyvip/archive/2006/09/02/492693.html

上一篇:asp中自定义文件下载 人气:10815
下一篇:UTF-8转GB2312函数 人气:10820
浏览全部ASP的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐