请教,导出当时日期后修改日期到某天
谢谢各位能否帮我编一下,我是新手,无法想出如何才能实现,思路是这样第一个文件,导出当时日期到一个文件,不要时间,比如2012年2月5号,然后执行修改日期到比如2011年6月20号,这个程序是关机时用的.,隐藏运行
第二个文件是开机时用,检测开机时日期然后比较关机时修改的日期,比如关机时修改日期为2011年6月20号,然而开机有可能是一天后开,或几天后开,则可能是2011年6月21号或更后,则关机日期实际走了1天或更多,然后以关机时导出的当时日期文件调整这个差距日期,如关机时导出的日期为2012年2月5号,而关机时实际走了1天或更多,则调整为2012年2月6号或更多 既然你自认是新手, 我这等老手觉得有必要提醒你,
你觉得你的帖子能准确表达你的意图了吗? 会不会让别人根本读不下去? ㄟ....本來以為自己可以看懂....果然 看了之後 還是看不懂..........
我看 樓主 還是說說自己想要做什麼就好....... 不用講邏輯的過程好了 读着费力,读后迷惘。 本帖最后由 cjfcjf111 于 2012-2-7 11:59 编辑
不好意思,看来是表述不清
这样吧,先说第一个,也就是调整电脑日期,简单的说就是把电脑日期调整到一个日期,非网络状态,整个程序的大致过程如同BAT语句中的
DATE >C:\1.TXT:保存当前电脑日期到文件
DATE 2011-6-22 :调整电脑日期到设定日期
这个是放在电脑关机时自动运行,
然后是第二个程序,自然是要在开机后调回正确的日期,调回正确的日期也可以用网络校时软件,但有时会没有网络,比如笔记本有时会拿出去,开机时不一定会有网络,这就要编一个能直接调整的程序,思路是这样的,因为关机时有1.TXT的文件保存,所以也就是借助这个文件进行调整正确的日期,由于关机时时间是在走动的,也就是说开机时会是第二天或者是几天后,
语句就是
DATE >2.TXT :当前日期
读取1.TXT中的日期+(当前日期2.TXT-2011-6-22)=正确日期
由于BAT无法设定日期函数,比如30号或31号后的一天是跳到1号,所以无法用上面的加减法调整到正确的日期,AU3刚刚接触,对一些函数的慨念很模糊,只做过一个按钮界面,看了帮助却是云雾一般,所以到这里来求助
另外DATE命令在很多装有杀毒软件的电脑里无法更改日期,所以需要用AU3中的修改命令
谢谢能帮我解决 主板上的电池没电了??? 不是这么回事,没电了这样的方法也没有用了,也就是自己不会走时间了,也就不用比较了,没电还是网络校时软件有用了 我花了三天时间只做过这样一个按钮程序,而且奇怪的是当我点运行按钮后第一个窗口没有关闭,
#include <GUIConstantsEx.au3>
;设置界面大小及按钮和说明文字
GUICreate("程序接口", 420, 200)
$Label1 = GUICtrlCreateLabel("程序接口", 200, 18, 220, 40)
GUICtrlSetFont(-1, 14, 400, 1, "黑体")
$Label2 = GUICtrlCreateLabel("程序接口一", 180, 50, 220, 40)
GUICtrlSetFont(-1, 10, 400, 1, "黑体")
$Label3 = GUICtrlCreateLabel("程序接口二.", 180, 98, 220, 40)
GUICtrlSetFont(-1, 10, 400, 1, "黑体")
$Label4 = GUICtrlCreateLabel(" 本程序需要外连BAT运行", 220, 138, 240, 40)
GUICtrlSetFont(-1, 10, 400, 1, "黑体")
$Label5 = GUICtrlCreateLabel(" 于2012年1月28号", 220, 158, 240, 40)
GUICtrlSetFont(-1, 10, 400, 1, "黑体")
GUISetState(@SW_SHOW)
;设置按钮名字,位置及大小
$btn1 = GUICtrlCreateButton("程序接口一", 20, 10, 150, 45)
GUICtrlSetState(-1, $GUI_FOCUS);设置焦点
$btn2 = GUICtrlCreateButton("退出程序", 20, 70, 150, 45)
$btn3 = GUICtrlCreateButton("程序接口二", 20, 130, 150, 45)
GUISetState()
;确定并调用用户按下的按钮
While 1
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE;点 X 关闭窗口时退出,否则会退不出
Exit;退出
Case $btn3
#include <GUIConstantsEx.au3>
GUICreate("程序接口一", 420, 200)
$Label1 = GUICtrlCreateLabel("程序接口二", 200, 18, 220, 40)
GUICtrlSetFont(-1, 14, 400, 1, "黑体")
$Label2 = GUICtrlCreateLabel("程序接口二", 180, 50, 220, 40)
GUICtrlSetFont(-1, 10, 400, 1, "黑体")
$Label4 = GUICtrlCreateLabel(" 本程序外连BAT二", 220, 138, 240, 40)
GUICtrlSetFont(-1, 10, 400, 1, "黑体")
$Label5 = GUICtrlCreateLabel(" 于2012年1月28号", 220, 158, 240, 40)
$Button1 = GUICtrlCreateButton("程序接口二", 20, 10, 150, 45)
GUICtrlSetState(-1, $GUI_FOCUS);设置焦点
$Button2 = GUICtrlCreateButton("退出程序", 20, 70, 150, 45);如这后面再加一个上一步按钮,怎么退到上一窗口
GUISetState(@SW_SHOW)
#endregion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button2
Exit;调用程序后马上退出
Case $Button1
Run('auyo2.bat')
Exit;调用程序后马上退出
EndSwitch
WEnd
Exit;调用程序后马上退出
Case $btn2
Exit;退出
Case $btn1
#include <GUIConstantsEx.au3>
GUICreate("程序接口一", 420, 200)
$Label1 = GUICtrlCreateLabel("程序接口一", 200, 18, 220, 40)
GUICtrlSetFont(-1, 14, 400, 1, "黑体")
$Label2 = GUICtrlCreateLabel("程序接口一", 180, 50, 220, 40)
GUICtrlSetFont(-1, 10, 400, 1, "黑体")
$Label4 = GUICtrlCreateLabel(" 本程序需外连BAT一", 220, 138, 240, 40)
GUICtrlSetFont(-1, 10, 400, 1, "黑体")
$Label5 = GUICtrlCreateLabel(" 于2012年1月28号", 220, 158, 240, 40)
$Button1 = GUICtrlCreateButton("程序接口一", 20, 10, 150, 45)
GUICtrlSetState(-1, $GUI_FOCUS);设置焦点
$Button2 = GUICtrlCreateButton("退出程序", 20, 70, 150, 45)
GUISetState(@SW_SHOW)
#endregion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button2
Exit;调用程序后马上退出
Case $Button1
Run('auto1.bat')
Exit;调用程序后马上退出
EndSwitch
WEnd
Exit;调用程序后马上退出
EndSwitch
WEnd 给楼主的建议:
1, 关于设置系统时间的, 可以参考帮助文件的 自定义函数里, 有关日期管理方面的函数!
如果确实要保存或读取日期之类的简单的数据,用 IniWrite, IniRead 最方便!
2, 关于多窗口的操作, 论坛已经有很多好例子, 请善用论坛的搜索功能! 读取cpu时间,或者事件日志中的本次开机时间,加加减减的事 读取cpu时间,或者事件日志中的本次开机时间,加加减减的事
页:
[1]