一、描述
测试系统:win10 专业版
今天使用xftp6、xshell6(Free For Home/School)时候弹出这个窗口“要继续使用此程序,您必须应用最新的更新或使用新版本”,搜了几个解决方法:
方案1:修改nslicense.dll,尝试了下,并没有找他文章中给的字符串,也试了他给修改好后的nslicense.dll文件,替换进目录后运行软件奔溃,方法失败。
方案2:下载破解版的,我以前下载过破解版的,但是用段时间后还是会莫名其妙的用不了。
方案3:修改系统时间。把系统的时间调整到2018年,软件就可以正常打开了,但是每次这样手动调整非常麻烦,就写了这个简单的bat脚本,将整个过程实现自动化,将bat脚本作为软件启动器。
参考文档:
1.xshell无法使用,需要更新的问题
2.Windows时间同步脚本命令
3.怎么修改BAT文件的图标
资料3的作用是你觉得bat脚本的原始图标难看,可以根据这个教程修改图标。
二、脚本代码
@echo off
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close) && exit
title Xshell启动器
set atime=%date:~0,10%
date 2018-12-31
start D:\xshell\xshell6\xshell.exe
echo 启动软件中...
ping 0.0.0.0 -n 6 > null
echo 同步时间中,完成后自动关闭窗口...
:reset
w32tm /resync >null
set btime=%date:~0,10%
echo %atime%|findstr %btime% >nul
if %errorlevel% equ 0 (
exit
) else (
goto reset
)
三、操作说明
使用方法:
1.新建一个文本文件
2.将上面的代码复制到文本文件中。
3.修改第4行start后面的代码,即D:\xshell\xshell6\xshell.exe
,这个就是你xshell启动软件的路径。找不到?点击桌面xshell的快捷方式->右键->打开文件所在的位置。
4.修改完成后另存为
,文件名字xxx.bat
,编码一定要选择ANSI
,否则里面的中文会是乱码。
解释代码:
1.获取管理员权限,不然启动不了软件,也修改不了系统时间
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close) && exit
2.修改系统时间
date 2018-12-31
3.启动目标软件
start D:\xshell\xshell6\xshell.exe
4.类似sleep,等待软件启动
ping 0.0.0.0 -n 6 > null
5.循环执行恢复系统时间操作,恢复成功后会自动关闭cmd窗口
:reset
w32tm /resync >null
set btime=%date:~0,10%
echo %atime%|findstr %btime% >nul
if %errorlevel% equ 0 (
exit
) else (
goto reset
)
四、附图