Windows自动更新是Windows操作系统的一项功能,当适用于您的计算机的重要更新发布时,它会及时提醒您下载和安装。通过使用自动更新可以在第一时间更新您的操作系统,修复系统漏洞,保护您的计算机安全。这些都是大家很熟悉的功能,但是利用Windows系统服务自动更新网站,这个你知道吗?答案应该是否定的,今天就为大家讲解如何利用Windows系统服务自动更新网站.
详细原理:
1) Windows服务端:
Windows服务采用.Net Framework2.0框架,所以使用时应该先安装好.Net Framework2.0,
采用一个xml文件存储配置信息,里面存储需要访问的网址,示例结构如下:
<?xml version=1.0 encoding=utf-8 ?>
<root>
<Urls>
<item url=http://www.***.com time=3:59/>
<item url=http://www.***..com time=11:59/>
<item url=http://www.***..com time=13:59/>
<item url=http://www.***.com time=15:59/>
<item url=http://www.***..com time=16:59/>
</Urls>
</root>
一个item代表一次访问,url是具体的网址,设置为网站自动更新的url地址,可以带查询字符串来设置更新的数量,time表示每天访问的时间,time只能精确到1分钟,而且必须保证每个item在同一分钟内只有一个url任务。
程序采用一个定时器,每隔20秒扫描一下配置项中是否有需要访问的网址,如果有则访问一次这个网址。相关代码如下:
public Job()
{
System.Timers.Timer myTimer = new System.Timers.Timer(20000);
myTimer.Elapsed += new ElapsedEventHandler(myTimer_Elapsed);
myTimer.Enabled = true;
myTimer.AutoReset = true;
XmlDocument xml = new XmlDocument();
xml.Load(AppDomain.CurrentDomain.BaseDirectory + ConfigurationManager.AppSettings[xmlfile]);
xmllist = xml.SelectNodes(//root/Urls/item);
}
void myTimer_Elapsed(object source, ElapsedEventArgs e)
{
try
{
Log.SaveNote(DateTime.Now.ToString(yyyy-MM-dd HH:mm:ss) + Heart Work!(心跳检测));
……