大哥大姐近来帮看看下怎么回事-DNF|你问我答-旧DNF-多玩游戏论坛 -
手机版 - Powered by Discuz!查看: 1353|回复: 3
那个防和谐的工具,我不会用啊~求助各位大哥大姐
论坛里的这个小工具
我按照上面的步骤试了,可是没有效果....
是不能用了么?还是我的方法不对?希望各位能给予指点,谢谢。
P.S.希望能附上详细步骤(最好有图)
我来把源码 完整的分析一遍你就知道该怎么用了
单独分析你要的 反和谐工具了
这里面的当前目录是指此文件存放的目录即:start目录
而当前目录的上层目录即 dnf的主目录
----禁止显示下面的所有命令并禁止显示当前命令行
echo 欢迎使用Cauly~DNF启动器,CMD窗口将在DNF启动后自动关闭。
----实际看到的效果 就是 文字的内容“欢迎使用Cauly~DNF启动器,CMD窗口将在DNF启动后自动关闭 ...
本帖最后由 qq 于
08:00 编辑
我来把源码 完整的分析一遍你就知道该怎么用了
单独分析你要的 反和谐工具了
这里面的当前目录是指此文件存放的目录即:start目录
而当前目录的上层目录即 dnf的主目录
@echo off& && && && && &&&----禁止显示下面的所有命令并禁止显示当前命令行
echo 欢迎使用Cauly~DNF启动器,CMD窗口将在DNF启动后自动关闭。& && &&&----实际看到的效果 就是 文字的内容“欢迎使用Cauly~DNF启动器,CMD窗口将在DNF启动后自动关闭。”
echo 版本2.0 功能:自动开关连发,解决自动更新30kb,自动关闭qqdl.exe, tensafe.exe, qqlogin.exe,EX补丁防和谐& &&&----同上
copy ..\tm000002.tsd.bak ..\tm000002.tsd& && && && && && && && && && && && && &&&----复制 当前目录的上层目录中的tm000002.tsd.bak 文件为tm000002.tsd
if not exist ..\imagepacks2\nopatch md ..\imagepacks2\nopatch& & ----如果在当前目录的上层目录里面imagepacks2文件夹中找不到nopatch 就在imagepacks2里面创建nopatch
if not exist ..\imagepacks2\patch md ..\imagepacks2\patch& & ------同上目录 名字不同而已
xcopy /Y ..\imagepacks2\nopatch\*.npk ..\imagepacks2\& && & ----------复制imagepacks2文件夹中的nopatch中所有的.npk结尾的文件并覆盖到imagepacks2文件夹中
taskkill /im autofire.exe& && && && && && && && && && && && && && && && &&&------结束进程中名字叫autofire.exe 的进程
start dnfchina& && && && && && && && && && && && && && && && && && && && && &-------启动dnfchina 文件
:1& && && && && && && && && && && && && && && && && && && && && && && && && && & -------设置标签1
ping 127.0.0.1 -n 1&nul& && && && && && && && && && && && && && && && &&&--------等待1秒后继续
for /f &delims= & %%j in ('tasklist^|find /i &qqlogin.exe&') do (& &--设置循环列出当前进程并从中查找名字叫qqlogin.exe进程找到后取列表的第一位判断并执行下面的操作
if /i &%%j&==&qqlogin.exe& (& && && && && && && && && && && && &&&--------- 判断变量j取的值是否是qqlogin.exe如果成立
xcopy /Y ..\imagepacks2\patch\*.npk ..\imagepacks2\& && && & --------复制imagepacks2文件夹中的patch中所有的.npk结尾的文件并覆盖到imagepacks2文件夹中
goto 2& && && && && && && && && && && && && && && && && && && && && && && && && & -----跳转到标签2继续执行
))& && && && && && && && && && && && && && && && && && && && && && && && && & ------如果变量j取值不是qqlogin.exe则继续进入循环判断
goto 1& && && && && && && && && && && && && && && && && && && && && && && &-------跳转到标签1
:2& && && && && && && && && && && && && && && && && && && && && && && && &&&-----------设置标签2
ping 127.0.0.1 -n 1&nul& && && && && && && && && && && && && & --------等待1秒后继续
for /f &delims= & %%i in ('tasklist^|find /i &dnf.exe&') do (& && && &----设置循环列出当前进程并从中查找名字叫dnf.exe进程找到后取列表的第一位判断并执行下面的操作
if /i &%%i&==&dnf.exe& (& && && && && && && && && && && && && && && & --------- 判断变量j取的值是否是dnf.exe如果成立
start autofire.exe& && && && && && && && && && && && && && && && && && & ------启动autofire.exe
ping 127.0.0.1 -n 5&nul& && && && && && && && && && && && && && && &--------等待5秒后继续
taskkill /im qqdl.exe& && && && && && && && && && && && && && && && & ------------ 结束进程名字叫qqdl.exe 的进程
taskkill /im qqlogin.exe& && && && && && && && && && && && && && && &------------ 结束进程名字叫qqlogin.exe的进程
taskkill /f /im tensafe.exe& && && && && && && && && && && && && &&&------------ 结束进程名字叫tensafe.exe 的进程
if not exist ..\tm000002.tsd.bak copy ..\tm000002.tsd ..\tm000002.tsd.bak&&--如果没有在当前文件所在目录的上层目录找到tm000002.tsd.bak则复制该目录中的tm000002.tsd为 tm000002.tsd.bak&&
exit& && && && && && && && && && && && && && && && && && && && && && && & ------关闭本窗口
))& && && && && && && && && && && && && && && && && && && && && && && && &&&------如果变量i取值不是dnf.exe则继续进入循环判断
goto 2& && && && && && && && && && && && && && && && && && && && && && &&&-------跳转到标签2
从上面的代码中可以看出 补丁源文件应该存放在 nopatch中 修改后的文件存放在 patch中 而且代码写的有一点问题
首先 taskkill /im autofire.exe&&行 假如进程中没有autofire.exe&&会出现报错提示
其次 xcopy /Y ..\imagepacks2\patch\*.npk ..\imagepacks2\ &&行如果 patch中是空的 也会报错
还有部分行存在死循环的嫌疑,第二个for 就是问题,不知道你们遇到过没有 登录游戏后dnf.exe窗口弹不出来,反正我经常这样 进程中也没有这个进程那么这个for是跳转不出去的 结果只有两个要嘛此批处理自动崩溃 要嘛你机器会有很大的资源占用
只要是相关类似的行 都存在这个问题 所以 这个并不能算是一个通用的脚本
使用方法:
文件中没有的目录需要自己创建
把你修改过的NPK放到patch目录下
然后你需要放一个对应的原版NPK到nopatch下
需要注意的是 nopatch 和 patch . 两个文件夹位置在IP2内 ...
Powered by