|
本帖最后由 lbx7272 于 2014-3-13 15:05 编辑
近期有传:督查组抽查行政单位的电脑,使用U盘,利用U盘上安装的一款软件将被查者电脑相关内容拷出,分析,如果有上班时间玩游戏、看大片者一律开除公职,现在单位同事有的把QQ都删除了,闹得人心慌慌。总不能把电脑上与工作无关的都删除了,那么自己好多年积累的电子学、摄影学、医学、电影、人生方面的资料就都没了。
为此,我想制作一款软件,利用修改计算机系统时间的方法,保护自己。时间来不及了,自己水平太低,编软件又太麻烦,现考虑编一个bat文件解决问题,大家帮我参考一下。
上班时间为8:00至18:00,比如我想在9:00上QQ,启动QQ时,不双击QQ程序,而是双击QQ.bat文件。此文件启动后先调取当前时间,记为A,然后将系统时间改为下班时间,如18:00,再自动启动QQ,我开始用QQ,我手动关闭QQ后,QQ.bat文件记录当时时间,为B。程序自动将系统时间调整回正确的时间。B-18:00=C,C为我使用QQ的时间,A+C的值就是我最后调整好的时间。大家看可行吗?
这是一个技术论坛,请大家从技术角度探讨,别考虑做法的正确与否。
我想参照一个网上找的《显示系统时间前一个小时的时间》的bat文件,请教:如何改成我要的?
xx.bat:
::**显示系统时间前一个小时的时间**
@echo off
setlocal enabledelayedexpansion
set a=%time:~,2%
set b=%date:~8,2%
set c=%date:~5,2%
set d=%date:~,4%
if %a%==0 (set a=23&& goto riq) else (set /a a-=1 && goto jes)
:riq
if %b%==01 (goto yue)
if %b%==08 (set b=07&& goto jes)
if %b%==09 (set b=08&& goto jes) else ( set /a b-=1 && goto jes)
:yue
if %c%==01 (set c=12& set b=31& set /a d-=1 && goto jes)
if %c%==03 (set /a g=%d%/4*4& if !g!==%d% (set b=29& set /a c-=1 && goto jes) else (set b=28& set /a c-=1 && goto jes))
if %c%==08 (set c=07& set b=31 && goto jes)
if %c%==09 (set c=08& set b=31 && goto jes)
echo 02>m
echo 04>>m
echo 06>>m
echo 11>>m
for /F %%i in ('findstr %c% m') do (set b=31& set /a c-=1&& goto jes)
set b=30& set /a c-=1 && goto jes
:jes
echo !d!-!c!-!b! !a!%time:~2,6%
pause
exit
下面是我做的QQ.bat文件,其他程序的BAT文件以此类推,QQ.bat代码如下:
REM ::**启动QQ程序**
@echo off
rem ::修改系统日期和时间至上周六19:00
date 2014-03-08
time 19:00
rem ::启动QQ程序
cd C:\Progra~1\Tencent\QQ\bin
start QQ
rem ::关闭QQ后将系统日期和时间调整回来
date 2014-03-13
net time /setsntp:ntp.fudan.edu.cn
w32tm /config /update
REM ::与授时中心服务器同步
现在这个BAT文件还有问题,就是最后返回的日期不是变量。不能与实际同步。 |
|