Batch file 能否从Microsoft服务器检查日期,并为批处理文件设置变量?

Batch file 能否从Microsoft服务器检查日期,并为批处理文件设置变量?,batch-file,Batch File,我正在编写一个一天只运行一次的批处理文件,代码如下: set ACTUALDATE=%date:~4,2%-%date:~7,2%-%date:~10,4% set /p BEFOREDATE=<date.txt if %ACTUALDATE% == %BEFOREDATE% GOTO L echo %ACTUALDATE%>date.txt start Minecraft/Launcher/Minecraft.exe C:/Python24/python.exe timer.py

我正在编写一个一天只运行一次的批处理文件,代码如下:

set ACTUALDATE=%date:~4,2%-%date:~7,2%-%date:~10,4%
set /p BEFOREDATE=<date.txt
if %ACTUALDATE% == %BEFOREDATE% GOTO L
echo %ACTUALDATE%>date.txt
start Minecraft/Launcher/Minecraft.exe

C:/Python24/python.exe timer.py

start "" cmd /c "echo Time is almost up!&echo(&pause"


tasklist /FI "IMAGENAME eq python.exe*32" 2>NUL 

:L
C:/Python24/python.exe timer2.py

taskkill /f /im javaw.exe
设置实际日期=%date:~4,2%-%date:~7,2%-%date:~10,4%
set/p BEFOREDATE=date.txt
启动Minecraft/Launcher/Minecraft.exe
C:/Python24/python.exe timer.py
开始“cmd/c”回显时间快到了!&回显(&pause)
任务列表/FI“IMAGENAME eq python.exe*32”2>NUL
:L
C:/Python24/python.exe timer2.py
taskkill/f/im javaw.exe
这很好,它会运行,然后在时间结束后终止Minecraft,这是根据python文件判断的。这不是问题,问题是用户对这个程序不是非常满意,我正试图解决这样一个事实:他可以更改计算机上的日期,然后重新运行这个程序

有没有办法从服务器或其他类型设置“ACTUALDATE”,这样他就不能更改日期。如果有任何方法可以解决这个问题,我们将不胜感激


谢谢您的帮助。

您可以使用
net time\\servername
(/set,如果您想更改本地时间)

问题+1的准确答案。但是,帖子中还有第二个潜在问题,如何防止用户更改系统日期。只需将净时间放在脚本顶部,这样您就可以检查服务器时间,而不是本地时间。顺便说一句,如果我不想让用户查看/编辑脚本,我不会使用批处理…我知道,我打算在我完成了,但用户甚至不知道如何编辑。谢谢,我会尝试。好吧,我尝试了这个:
net time/rtsdomain:time.nist.gov/set
,我得到消息:
找不到时间服务器。
我已经尝试了Microsoft在时间日期设置的internet菜单中显示的所有服务器。有吗我可以用另一种方法让它工作吗?你是说用网络上的另一台计算机吗?我试过了,但消息
服务尚未启动。
出现。