用hta[javascript]写的定时重启或关机的小工具

时间:2021-05-22

Description: 一个用于定时重启或关闭计算机的小工具,适用于Windows 2K/XP/2003
Author: 十一狼
Email: 112183883@163.com
QQ: 112183883
-------------------------------------------------------------*/
复制代码 代码如下:
<!--



-->

<html>

<head>
<title>♀Windows系统计时器♀</title>
<metahttp-equiv="content-type"content="text/html;charset=gb2312">

<hta:application
id="WTimer"
maximizebutton="No"
minimizebutton="Yes"
singleinstance="Yes"
contextmenu="Yes"
sysmenu="Yes"
version="1.0"
innerborder="No"
caption="Yes"
showintaskbar="Yes"
border="Normal"
borderstyle="Normal"
applicationname="WindowsTimer"
icon="TimerIco.ico"
/>

<Styletype="text/css">
<!--
*{font-family:CourierNew,Arial,Sans-serif;font-size:9pt;}
body{overflow-y:hidden;}
diva:link,diva:visited{text-decoration:none;color:#000}
diva:hover{text-decoration:underline;color:#f00}
#footerinfo{width:100%;display:table;margin-top:5px;}
#left{float:left;width:70%;}
#right{float:right;width:29%;text-align:right;margin-right:1px;}
-->
</Style>

<ScriptLanguage="JavaScript">
<!--

$bl_Sleep=false;

functiongetObject($obj){
return(document.getElementById($obj));
}

String.prototype.parseInt=function(){
return(parseInt(this));
}

functiongetRadioVal($name){
$oEms=document.getElementsByName($name);
for($i=0;$i<$oEms.length;$i++){
if($oEms[$i].checked){return($oEms[$i].value);}
}
}

functionisDeclared($varName){
return(typeof($varName)!="undefined");
}

functionchStatus($name,$status){
$ooEms=document.getElementsByName($name);
for($a=0;$a<$ooEms.length;$a++){
$ooEms[$a].disabled=$status;
}
}

functionwindow.onload(){
$sWidth=window.screen.width;
$sHeight=window.screen.height;
$aWidth=400;
$aHeight=185;
window.resizeTo($aWidth,$aHeight);
window.moveTo(($sWidth-$aWidth)/2,($sHeight-$aHeight)/2);
document.bgColor="#d4d0c8";
getObject("StopButton").disabled=true;
getObject("left").innerHTML="提示:请选择您想要使用的功能!";
}

functionTimer_Quit(){
window.close();
}

functionTimer_Kernel(){
if($bl_Sleep){
if(isDeclared($time)&&isDeclared($mod_time)&&isDeclared($operation)){
if($time>0){
$Oper_str="";
$Hint_str="";
$Titl_str="";
if($operation=="rWin"){
$Oper_str="<spanstyle=\"color:red\">提示:系统计时重启功能已启用,请注意保存!</span>";
}
else{
$Oper_str="<spanstyle=\"color:red\">提示:系统计时关闭功能已启用,请注意保存!</span>";
}
if($mod_time=="mod_minute"){
$tMinute=($time/60).toString().parseInt();
$tSecond=$time%60;
if($tMinute!=0){
if($tSecond<10){
$tSecond="0"+$tSecond;
}
$Titl_str="剩余时间:"+$tMinute+"分"+$tSecond+"秒";
}
else{
$Titl_str="剩余时间:"+$tSecond+"秒";
}
}
else{
$Titl_str="剩余时间:"+$time+"秒";
}
getObject("left").innerHTML=$Oper_str;
document.title=$Titl_str;
$time=$time-1;
$o=setTimeout("Timer_Kernel()",1000);
}
else{
$Flag="";
if($operation=="rWin"){
$Flag=6;//6为重启操作系统
}
else{
$Flag=1;//1为关闭操作系统
}
OperateWin32($Flag);
getObject("left").innerHTML="<spanstyle=\"color:red\">提示:正在执行预定操作!</span>";
document.title="正在执行预定操作";
}
}
}
}

functionTimer_Stop(){
$bl_Sleep=false;
if(isDeclared($o)){clearTimeout($o);}
getObject("time").disabled=false;
getObject("mod_time").disabled=false;
chStatus("operation",false);
getObject("StartButton").disabled=false;
getObject("StopButton").disabled=true;
getObject("left").innerHTML="提示:请选择您想要使用的功能!";
document.title="♀Windows系统计时器♀";
}

functionTimer_Start(){
$bl_Sleep=true;
$nowTime="";
$time=getObject("time").value;
$mod_time=getObject("mod_time").value;
$operation=getRadioVal("operation");
if(isNaN($time)||$time==""){
alert("请正确设定一个时间值!");
getObject("time").select();
return;
}
else{
$time=$time.parseInt();
if($mod_time=="mod_minute"){$time=$time*60;}
}
getObject("time").disabled=true;
getObject("mod_time").disabled=true;
chStatus("operation",true);
getObject("StartButton").disabled=true;
getObject("StopButton").disabled=false;
Timer_Kernel();
}

functionOperateWin32($DownFlag){
$OS_Pro=GetObject("WinMgmts:{(shutdown)}//./root/cimv2").ExecQuery("select*fromwin32_operatingsystemwhereprimary=true");
for($e=newEnumerator($OS_Pro);!$e.atEnd();$e.moveNext()){
$getProcess=$e.item()
$getProcess.win32shutdown($DownFlag);
}
}

functionResponseKeyPress(){
if(event.keyCode==13){event.keyCode=9;}
}

//-->
</Script>
</head>

<body>
<fieldset>
<tablewidth="100%"border="1"cellpadding="4"cellspacing="3">
<formname="form1">
<tr>
<tdwidth="25%">设定时间:</td>
<tdwidth="75%"><inputtype="text"name="time"size="20"value=""onkeypress="ResponseKeyPress()"/>
<selectname="mod_time">
<optionvalue="mod_minute">分钟</option>
<optionvalue="mod_second">秒钟</option>
</select>
</td>
</tr>
<tr>
<td>功能选择:</td>
<td>
<inputtype="radio"name="operation"value="rWin"checked="checked"/>重启
<inputtype="radio"name="operation"value="cWin"/>关机
</td>
</tr>
<tr>
<tdcolspan="2"style="text-align:right">
<inputtype="button"name="StartButton"value="应用"onclick="Timer_Start()"/>
<inputtype="button"name="StopButton"value="取消"onclick="Timer_Stop()"/>
<inputtype="button"name="ExitButton"value="退出"onclick="Timer_Quit()"/>
</td>
</tr>
</form>
</table>
</fieldset>
<divid="footerinfo">
<divid="left"></div>
<divid="right">
作者:<ahref="http://www.w3cg.net/"title="访问作者博客">十一狼</a>
</div>
</div>
</body>

</html>

近日无事,想起以前曾打算过要做一个定时重启或关机的工具,便花了一点时间以hta的形式写了个,名为"Windows Timer",截图如下:

如果有朋友需要,可以点此链接下载:本地下载

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章