怎样用java实现windows每天定时关机?

tarbitrary 2012-04-14 02:33:14
我用java写了一个定时关机程序,但是每天都得设置定时关机时间,感觉不是很好。怎样用java实现每天定时关机。
...全文
980 24 打赏 收藏 转发到动态 举报
写回复
用AI写文章
24 条回复
切换为时间正序
请发表友善的回复…
发表回复
思忆潜行 2013-06-24
  • 打赏
  • 举报
回复
引用 12 楼 boyone2009 的回复:
写个守护进程,一直判断是否到了关机时间, 不过有点浪费资源
这个的确可以实现,我测试过了
tarbitrary 2012-04-19
  • 打赏
  • 举报
回复
[Quote=引用 21 楼 的回复:]

LZ做简单的功能实现测试还那么认真啊
直接创建一个任务是5分钟或10分钟后关闭计算机就好了,不用等待这么久吧
[/Quote]
不过真的非常感谢你, 总算可以松一口气了。
tarbitrary 2012-04-19
  • 打赏
  • 举报
回复
[Quote=引用 21 楼 的回复:]

LZ做简单的功能实现测试还那么认真啊
直接创建一个任务是5分钟或10分钟后关闭计算机就好了,不用等待这么久吧
[/Quote]
我不是说关闭计算机这一功能实现不了, 我是想要它每天都到点准时关闭计算机。是每天,所以测试一次间隔时间是24小时。
qybao 2012-04-19
  • 打赏
  • 举报
回复
LZ做简单的功能实现测试还那么认真啊
直接创建一个任务是5分钟或10分钟后关闭计算机就好了,不用等待这么久吧
tarbitrary 2012-04-19
  • 打赏
  • 举报
回复
今天晚上如果电脑自动关机成功, 就结帖。
tarbitrary 2012-04-19
  • 打赏
  • 举报
回复
今天晚上如果定时关机成功了 ,就结帖。
shine333 2012-04-18
  • 打赏
  • 举报
回复
类似上面说的,调用runtime,执行windows的at命令来定时,而at命令再调用shutdown来关机

at 10:25 shutdown -s -f -t 0

不过这种东西貌似不必通过java来当二传手。另外,可能还有权限问题,at和shutdown,在高版本的win里面比如win7,都需要授权才能操作。
tarbitrary 2012-04-18
  • 打赏
  • 举报
回复
楼上正解, 原来还有这种用法, 今天算是开了眼界了。
authorzhh 2012-04-18
  • 打赏
  • 举报
回复
java不适合做这个。

读书时 swing 写过一个定时关机软件,线程sleep来计时,通过命令关机。
tarbitrary 2012-04-18
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 的回复:]

类似上面说的,调用runtime,执行windows的at命令来定时,而at命令再调用shutdown来关机

at 10:25 shutdown -s -f -t 0

不过这种东西貌似不必通过java来当二传手。另外,可能还有权限问题,at和shutdown,在高版本的win里面比如win7,都需要授权才能操作。
[/Quote]
调用at指令我在我win7系统上用java调用过, 用它来设置定时关机 , 成功了, 不过每次关机前都要把程序运行一遍。13楼的schtasks指令我也拷到我程序里面运行过, 运行后我在任务计划程序里面查到了这个指令。应该算是调用成功了吧。
无伤 2012-04-17
  • 打赏
  • 举报
回复
写个守护进程,一直判断是否到了关机时间, 不过有点浪费资源
MiceRice 2012-04-17
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 的回复:]
可能你误解了我的意思,我的真实想法是用java程序实现让windows每天定时关机的功能。我已经实现了五楼所给的代码的功能,我用的方法跟他的差不多。但这种方法实现定时关机是每天都得把程序至少运行一次。我想实现的是在设置定时关机的功能的时候有两个单选按钮,当我设置定时关机的时候,当我把时间设置好再把每天那个单选框选中后,然后只需要运行一下这个程序。以后每天到点电脑就会自动关机。
[/Quote]

那么你的Java程序要把自己注册到:“启动”里面去,否则电脑不会每次开启都帮你自动运行这个程序。
wyx100 2012-04-17
  • 打赏
  • 举报
回复
回复于:2012-04-14 19:24:32如果是要用Windows实现的话,就是:任务栏->开始->程序->附件->系统工具->任务计划程序

然后自己配置吧,命令就是:
shutdown /s /t 0 /f
qybao 2012-04-17
  • 打赏
  • 举报
回复
用Runtime的exec调用schtasks创建一个windows任务计划就可以了
for example
//创建任务计划(每天晚上22:00关闭计算机)
String cmd = "schtasks /create /tn ShutdownWin /st 22:00 /sc daily /tr \"shutdown /s /t 0 /f\"";
Runtime.getRuntime().exec(cmd);
tarbitrary 2012-04-15
  • 打赏
  • 举报
回复
突然发现我把这个帖子发错了地方, 应该放在j2se论坛里面才对,这个地方是j2me的地盘。
tarbitrary 2012-04-15
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]
public class shutdownSystem extends Thread{
//设置关机时与分
private static shutdownH=10;
private static shutdownM=10;

public void run(){
// 获取当关时与分
int thisH=Calendar .HOUR_OF_DAY;
……
[/Quote]
你所给的这行代码我自己已经实现了, 但我现在想实现的是让这个程序运行一次,然后每天都定时关机。
tarbitrary 2012-04-15
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]

如果是要用Windows实现的话,就是:任务栏->开始->程序->附件->系统工具->任务计划程序

然后自己配置吧,命令就是:
shutdown /s /t 0 /f
[/Quote]
可能你误解了我的意思,我的真实想法是用java程序实现让windows每天定时关机的功能。我已经实现了五楼所给的代码的功能,我用的方法跟他的差不多。但这种方法实现定时关机是每天都得把程序至少运行一次。我想实现的是在设置定时关机的功能的时候有两个单选按钮,当我设置定时关机的时候,当我把时间设置好再把每天那个单选框选中后,然后只需要运行一下这个程序。以后每天到点电脑就会自动关机。
BUG弄潮儿 2012-04-15
  • 打赏
  • 举报
回复
调用一个bat就行,bat进行关机
dalancon 2012-04-14
  • 打赏
  • 举报
回复
那么牛 等待中。。。。
MiceRice 2012-04-14
  • 打赏
  • 举报
回复
把时间设置,存到配置文件,Java程序去读取不就好了?
加载更多回复(3)

13,100

社区成员

发帖
与我相关
我的任务
社区描述
Java J2ME
社区管理员
  • J2ME社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧