您的当前位置:首页正文

服务器定时重启工具源代码

来源:画鸵萌宠网


[au3]#include

#include

#include

#include

#include

#include

#include

#Include

$Exists = \"定时重启\";判断是否只运行一个程序

If WinExists($Exists) Then

MsgBox(32,\"温馨提醒您:\注意已经运行一个程序了!\")

Exit

EndIf

AutoItWinSetTitle($Exists);修改程序窗口的标题名

;FileCreateShortcut(@AutoItExe,@DesktopCommonDir&\"\\定时工具\");自动在桌面创建快捷方式!

$Reate0 = GUICreate(\"服务器定时重启工具\主窗口

$Button1 = GUICtrlCreateButton(\"清除\按钮

$Button2 = GUICtrlCreateButton(\"定时\

$Button4 = GUICtrlCreateButton(\"开机运行\

$Button3 = GUICtrlCreateButton(\"关于作者\

$Combo1 = GUICtrlCreateCombo(\"\组合列表

GUICtrlSetData($Combo1,\"关机|重启|待机|休眠|强行关机|强行重启\重启\")

$Group1 = GUICtrlCreateGroup(\"\美化框

$Date1 = GUICtrlCreateDate(\"\16, 95, 90, 20,

BitOR($DTS_UPDOWN,$DTS_TIMEFORMAT,$WS_TABSTOP));时间选择控件

$Label1 = GUICtrlCreateLabel(\"执行时间: 暂时未设置定时任务\

GUICtrlSetColor(-1,0xff0033);美化字体颜色

$Label2 = GUICtrlCreateLabel(\"当前时间:\

GUICtrlSetColor(-1,0xff0033);美化字体颜色

$Reate1 = GUICreate(\"关于\关于说明窗口

$Button10 = GUICtrlCreateButton(\"关机\

$Button11 = GUICtrlCreateButton(\"重启\

$Button12 = GUICtrlCreateButton(\"清除启动\

$Label3 = GUICtrlCreateLabel(\"修改自DuXing47兄的定时关机工具\20)

$Label4 = GUICtrlCreateLabel(\"QQ:780095\

$Label5 = GUICtrlCreateLabel(\"欢迎访问破帽的QQ空间,点击进入\

GUICtrlSetColor(-1,0xff0033)

GUISwitch($Reate0);切换用于GUI函数的“当前”窗口

GUISetState(@SW_SHOW)

$R1 = \"\"

$T1 = \"\"

$T2 = \"\"

$T3 = \"\"

$T4 = \"\"

If RegRead(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\TIME\时间\") <> \"\" Then;读取注册表指定的值

opt(\"TrayIconHide\

Opt(\"TrayMenuMode\

GUISetState(@SW_HIDE,$Reate0)

TrayTip(\"服务器定时重启工具\程序已经在运行中,点击这里弹出窗口!\

EndIf

While 1

$Tray = TrayGetMsg();得到一个系统托盘图标项目产生的事件.

$msg = GUIGetMsg(1);捕获窗口消息

Select

Case $msg[0] = $GUI_EVENT_CLOSE And $msg[1] = $Reate0;如果点下的是$GUI_EVENT_CLOSE(关闭)

Exit

Case $msg[0] = $GUI_EVENT_CLOSE And $msg[1] = $Reate1

GUISetState(@SW_HIDE, $Reate1)

Case $msg[0] = $Button3

GUISetState(@SW_SHOW, $Reate1);激活指定窗口并使其以当前大小和位置信息显示

Case $msg[0] = $Button4

RegRun();操作Func RegRun()设定事件

MsgBox(0,\"温馨提醒您:\已经在注册表写入开机自启动,请勿移动本程序到别的位置.\")

Case $msg[0] = $GUI_EVENT_MINIMIZE;对话框窗口被最小化

opt(\"TrayIconHide\

Opt(\"TrayMenuMode\

GUISetState(@SW_HIDE,$Reate0)

TrayTip(\"服务器定时重启工具\已经最小化窗口了,点击这里可以还原!\

Case $msg[0] = $Button1

RegDelete(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\TIME\")

GUICtrlSetData($Label1,\"执行时间: 暂时未设置定时任务\")

TrayTip(\"通知\当前任务已经清理完毕,可重新设定.\

Case $msg[0] = $Button2

$SET = GUICtrlRead($Date1)

If StringLen($SET) = 7 Then

$SET = \"0\"&$SET

EndIf

RegWrite(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\TIME\\

时间

RegWrite(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\TIME\\

事件

TrayTip(\"通知\已经设定完成!请勿关闭程序,否则设定将不起作用.\

Case $msg[0] = $Button10

Shutdown(1);关机

Case $msg[0] = $Button11

Shutdown(2);重启

Case $msg[0] = $Button12

RegDelete(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run\定时工具\")

MsgBox(0,\"温馨提醒您:\已经清除开机自启动项,如需自动启动,请点击'开机运行'按钮.\")

Case $msg[0] = $Label5

Run(@ProgramFilesDir 780095.qzone.qq.com\")

& \"\\Internet Explorer\\IEXPLORE.EXE

EndSelect

Switch $Tray

Case $TRAY_EVENT_PRIMARYDOWN;按下了鼠标左键

GUISetState(@SW_SHOW);激活指定窗口并使其以当前大小和位置信息显示

EndSwitch

$T1 = RegRead(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\TIME\时间\")

$R0 = RegRead(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\TIME\事件\")

If $T2 <> $T1 Or $R0 <> $R1 Then;\"<>\"比较是否不相等,不相等该表达返回1否则返回0

$R1 = $R0

$T2 = $T1

GUICtrlSetData($Label1,\"执行时间: \"&$T1&\"(\"&$R0&\")\")

EndIf

$T3 = @HOUR&\":\"&@MIN&\":\"&@SEC;$T3等于当前时间

If $T3 <> $T4 then

$T4 = $T3

GUICtrlSetData($Label2,\"当前时间:

\"&@HOUR&\":\"&@MIN&\":\"&@SEC&\" \"&@MON&\"月\"&@MDAY&\"日\");修改指定控件的相关数据

EndIf

If $T1 = $T3 Then

If $R0 = \"关机\" Then;读取注册表值,当$RO值等于组合列表\"关机\"时,则执行$RNOW = 1

$RNOW = 1;关机事件

ElseIf $R0 = \"重启\" Then

$RNOW = 2;重启事件

ElseIf $R0 = \"待机\" Then

$RNOW = 32;待机事件

ElseIf $R0 = \"休眠\" Then

$RNOW = 64;休眠事件

ElseIf $R0 = \"强行关机\" Then

$RNOW = 5;强行关机

ElseIf $R0 = \"强行重启\" Then

$RNOW = 6;强行重启

EndIf

Shutdown($RNOW);shutdown关机事件

EndIf

If RegRead(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\TIME\时间\") <> \"\" Then

$T5 = StringReplace($T1,\":\替换字符串中的指定子串

$T6 = StringReplace($T3,\":\

If StringMid($T5,1,2)-StringMid($T6,1,2) = 0 Then

If StringMid($T5,3,2) - StringMid($T6,3,2) = 0 Then

If $T5-$T6 > 0 Then

TrayTip(\"温馨提醒您:\还有\"&$T5-$T6&\"秒开始执行关机程序.....\

EndIf

Elseif StringMid($T5,3,2)-StringMid($T6,3,2) = 1 Then

If StringMid($T5,5,2)+60-StringMid($T6,5,2) > 0 Then

TrayTip(\"温馨提醒您:\还有

\"&StringMid($T5,5,2)+60-StringMid($T6,5,2)&\"秒开始执行关机程序.....\

EndIf

EndIf

EndIf

EndIf

WEnd

Func RegRun();修改注册表,添加程序开机自启动项

dim

$Run='HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run'

RegWrite($Run,'定时工具','REG_SZ',@AutoItExe);@AutoItExe当前脚本的完整路径.

EndFunc;结束Func语句[/au3]

因篇幅问题不能全部显示,请点此查看更多更全内容

Top