Love0912 发表于 2024-11-22 15:12

用批处理实现固定时间授权 模板

首先,叨咕两句,各位别笑话我,我就懂一点点批处理,其它的编程不会,献丑了~
写了一个时间授权的模板,用途是可以对自己的批处理进行授权操作,比如达到设置时间后,批处理会自动失效,提示你重新购买授权什么的,适用于喜欢批处理的同学
因为最开始的时候考虑过如果被人编辑修改授权日期什么的解决方案,后来想到了一个好方法,就是授权日期设置好以后,可以用批处理转EXE工具,转换一下就行,防小白足够了,因为大佬你本身也防不住。。
这个没有任何版权一说,有需要拿去随便用,能帮到你们就好~
好了 ,废话不啰嗦了,请看代码:
@echo off
setlocal
:: 设定授权到期日期,格式为YYYYMMDD
set "expire_date=20231122"
:: 初始化当前日期变量为空
set "current_date="
:: 获取当前系统日期,格式为YYYYMMDD
for /f "tokens=2 delims== " %%i in ('wmic os get localdatetime /value') do (
    set "current_datetime=%%i"
    :: 在循环外部设置current_date,以避免扩展问题
    call set "current_date=%%current_datetime:~0,8%%"
    goto :breakloop :: 找到日期后跳出循环
)
:breakloop
:: 判断当前日期是否大于到期日期
if "%current_date%" gtr "%expire_date%" (
    echo 授权已到期,请续费或联系管理员。
    echo 管理员联系暗号:天王盖地虎
    pause >nul
    exit /b 1
)

:: 正常部分的代码
echo 正常运行,授权有效。
:: 在这里可以添加更多的正常部分代码


pause
exit /b 0

Bingo2018 发表于 2024-11-22 18:47

如果我修改日期就一样通过了,获取网络时间也不现实,万一别人电脑没网那不是不能用了,应该读取一个对比,还有就是这个wmic os get localdatetime /value懂的人一看就明白了,如果批处理暴露出来的,能有更有效方法来保护主要信息吗

flow_one 发表于 2024-11-22 16:23

很好的创意.   

Gigii 发表于 2024-11-22 17:10

学习到了,感谢楼主

wkdxz 发表于 2024-11-22 17:21

得有个办法获取在线时间,要不别人把时间一改就又可以用了

ZX0228 发表于 2024-11-22 17:25

授权日期太明显了,批处理稍微有点基础的人都可以改了,可以把日期这块用Base64加密一下

yxf515321 发表于 2024-11-22 17:30

expire_date是否可以尝试一下自动读取system_time呢

调味包 发表于 2024-11-22 18:09

修改当前电脑时间呢

Love0912 发表于 2024-11-22 18:35

ZX0228 发表于 2024-11-22 17:25
授权日期太明显了,批处理稍微有点基础的人都可以改了,可以把日期这块用Base64加密一下

我有想法,将获取本地日期的这部分代码修改为从网络获取~ 从而解决这个问题

调味包 发表于 2024-11-22 19:36

Love0912 发表于 2024-11-22 18:35
我有想法,将获取本地日期的这部分代码修改为从网络获取~ 从而解决这个问题

批处理能实现base64 ?
页: [1] 2
查看完整版本: 用批处理实现固定时间授权 模板