Board logo

标题: [文本处理] 我写的这个被人说成病毒 [打印本页]

作者: cattan    时间: 2021-9-10 16:19     标题: 我写的这个被人说成病毒

@echo off
rem
set AppName=MTC_OUT.exe
set AppPath=D:\fjeit\MTC_OUT\
cls
echo.
rem
:startjc
   rem
   rem    qprocess %AppName% >nul
   qprocess|findstr /i %AppName% >nul
   rem
   if %errorlevel%==0 (echo ^>%date:~0,10% %time:~0,8% 软件正在运行
)else (
     start %AppPath%%AppName% 2>nul && echo ^>%date:~0,10% %time:~0,8% 启动软件)
   rem
   for /l %%i in (1,1,1000) do ping -n 1 -w 1000 168.20.0.1>nul
   goto startjc
echo on
我写的这个被人说成病毒  有大神帮我看看有木有问题吗?
我都想笑哎
作者: hztccy    时间: 2021-9-10 20:38

作为菜鸟我没有看明白到底哪里有问题。
1、从下一行开始回显
2、解释
3、变量声明
4、变量声明
5、清屏
6、换行
7、解释
8、引导跳转运行段落
9、解释
10、解释、加不显示
11、没用过这个命令不知道,只知道将 qprocess内容传递给后面的|findstr /i 变量使用、加不显示
12、条件判断
13、否则
14、启动变量环境指定的参数
15、解释
16、计次循环条件延时执行
17、引导跳转段楼“8”程序
18、回显


不知道我的解释。反正我是看不出有什么问题。我是菜鸟。我学习习惯先解释,这样我才能学习的起来。毕竟我的悟性也就这样
作者: Batcher    时间: 2021-9-10 23:33

回复 1# cattan


哪个人说它是病毒?
还是某个杀毒软件报毒?
代码主要是想实现什么功能?
作者: 看电池    时间: 2021-9-12 07:33

应该是杀毒软件报毒,你实际测试没问题就没有病毒,毕竟自己写的是不是病毒你自己清楚
作者: cattan    时间: 2021-9-13 17:01

回复 3# Batcher


    这个主要实现软件关闭自启,看门狗功能。被人笑话成写的是病毒。我都血喷了。
作者: cattan    时间: 2021-9-13 17:08

回复 2# hztccy


    qprocess|findstr  这个查找任务管理器的进程。
作者: Batcher    时间: 2021-9-13 21:03

回复 5# cattan


    那个人算老几?干嘛如此在意那个人的看法呢
作者: hztccy    时间: 2021-9-15 09:15

回复 6# cattan


    欧。原来如此,谢了哈。给我科普了。
作者: cmd1152    时间: 2021-9-21 12:16

本帖最后由 cmd1152 于 2021-9-21 12:20 编辑

详细翻译一下
代码                                                                                                                                        意思
------------------------------------------------------------------------------------------------------------------------------------------
@echo off                                                                                                                               关闭回显(不输出回显状态)
rem                                                                                                                                        注释
set AppName=MTC_OUT.exe                                                                                                    设置变量 AppName=MTC_OUT.exe
set AppPath=D:\fjeit\MTC_OUT\                                                                                               设置变量 AppPath=D:\fjeit\MTC_OUT\
cls                                                                                                                                          清除 回显 和 echo 显示的字符串。
echo.                                                                                                                                      显示一个空行,echo.的优先级为 慢,最 快 的是 echo(
rem                                                                                                                                        注释
:startjc                                                                                                                                   设置标签 startjc
   rem                                                                                                                                     注释
   rem    qprocess %AppName% >nul                                                                                        注释
   qprocess|findstr /i %AppName% >nul                                                                                    显示进程 用 管道 传输给 查找变量 AppName 命令。
   rem                                                                                                                                     注释
   if %errorlevel%==0 (echo ^>%date:~0,10% %time:~0,8% 软件正在运行                                 判断返回值,如果为0就显示 “>[日期] [时间] 软件正在运行”
)else (                                                                                                                                     否则就...
     start %AppPath%%AppName% 2>nul && echo ^>%date:~0,10% %time:~0,8% 启动软件)      启动 变量 AppPath% + AppName 不显示错误,如果成功显示“>[日期] [时间] 启动软件”
   rem                                                                                                                                     注释
   for /l %%i in (1,1,1000) do ping -n 1 -w 1000 168.20.0.1>nul                                                 for从 1 循环 +1 执行  ping 168.20.0.1命令,最高1000ms  直到1000 (可以用  ping -n 1000 -w 1000 168.20.0.1>nul  代替)
   goto startjc                                                                                                                           跳转到标签 startjc
echo on                                                                                                                                   打开回显(输出会显状态)
------------------------------------------------------------------------------------------------------------------------------------------
最后一个打开回显的命令是执行不到的,因为已经跳转到  标签 startjc  了





欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2