用hta[javascript]寫的定時重啟或關機的小工具

來源:互聯網
上載者:User

Description: 一個用於定時重啟或關閉電腦的小工具,適用於Windows 2K/XP/2003
Author: 十一狼
Email: 112183883@163.com
QQ: 112183883
-------------------------------------------------------------*/ 複製代碼 代碼如下:<!--

/*--------------------Windows Timer---------------------------------------------

Description:一個用於定時重啟或關閉電腦的小工具,適用於Windows 2K/XP/2003
Author:十一狼
Email:112183883@163.com
QQ:112183883
WebSite:http://www.w3cg.net/

-------------------------------------------------------------------------------*/

-->

<html>

<head>
<title>♀Windows系統計時器♀</title>
<meta http-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="Windows Timer"
icon="TimerIco.ico"
/>

<Style type="text/css">
<!--
* { font-family:Courier New,Arial,Sans-serif;font-size:9pt; }
body { overflow-y:hidden; }
div a:link,div a:visited { text-decoration:none;color:#000 }
div a: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>

<Script Language="JavaScript">
<!--

$bl_Sleep=false;

function getObject($obj) {
return(document.getElementById($obj));
}

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

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

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

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

function window.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="提示:請選擇您想要使用的功能!";
}

function Timer_Quit() {
window.close();
}

function Timer_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="<span style=\"color:red\">提示:系統計時重啟功能已啟用,請注意儲存!</span>";
}
else {
$Oper_str="<span style=\"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="<span style=\"color:red\">提示:正在執行預定操作!</span>";
document.title="正在執行預定操作";
}
}
}
}

function Timer_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系統計時器♀";
}

function Timer_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();
}

function OperateWin32($DownFlag) {
$OS_Pro=GetObject("WinMgmts:{(shutdown)}//./root/cimv2").ExecQuery("select * from win32_operatingsystem where primary=true");
for ($e=new Enumerator($OS_Pro);!$e.atEnd();$e.moveNext()) {
$getProcess=$e.item()
$getProcess.win32shutdown($DownFlag);
}
}

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

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

<body>
<fieldset>
<table width="100%" border="1" cellpadding="4" cellspacing="3">
<form name="form1">
<tr>
<td width="25%">設定時間:</td>
<td width="75%"><input type="text" name="time" size="20" value="" onkeypress="ResponseKeyPress()" />
<select name="mod_time">
<option value="mod_minute">分鐘</option>
<option value="mod_second">秒鐘</option>
</select>
</td>
</tr>
<tr>
<td>功能選擇:</td>
<td>
<input type="radio" name="operation" value="rWin" checked="checked" />重啟
<input type="radio" name="operation" value="cWin" />關機
</td>
</tr>
<tr>
<td colspan="2" style="text-align:right">
<input type="button" name="StartButton" value=" 應用 " onclick="Timer_Start()" />
<input type="button" name="StopButton" value=" 取消 " onclick="Timer_Stop()" />
<input type="button" name="ExitButton" value=" 退出 " onclick="Timer_Quit()" />
</td>
</tr>
</form>
</table>
</fieldset>
<div id="footerinfo">
<div id="left"></div>
<div id="right">
作者:<a href="http://www.w3cg.net/" title="訪問作者部落格">十一狼</a>
</div>
</div>
</body>

</html>

近日無事,想起以前曾打算過要做一個定時重啟或關機的工具,便花了一點時間以hta的形式寫了個,名為"Windows Timer",如下:

如果有朋友需要,可以點此連結下載:本地下載

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.