没有时间,先写个,来不及debug,所以会有bug,等我有空再debug吧
现在先让楼主思考思考- @echo off
-
- ::在背后启动第一个窗口
- if "%1"=="lol" goto hide
- set a=%random%
- start /b "" %0 lol %a%
-
- ::给第一个窗口一点时间来准备
- echo 请等待……
- ping -n 2 127.1>nul
- :a
- cls
- echo 我是第二个窗口
-
- ::如果没有发现第一个窗口的遗信,就进行互动,否则直接认为第一个窗口已不在
-
- if not exist %a%last (if not exist %a%alive (echo 隐藏着的第一个窗口已关闭&echo abc>%a%alive&goto b) else (echo 目前第一个窗口还开着&erase /f /q %a%alive)) else (echo 隐藏着的第一个窗口已关闭)
- :b
- echo.
- echo 提示:新建%a%die再按任意键看看,会发现隐藏的窗口已关闭。
- echo.
- pause
- goto a
- :hide
- set a=%2
- :hide2
-
- ::当发现%a%alive不在时就做多一个%a%alive,以跟第二个窗口互动
- if not exist %a%alive echo abc>%a%alive
-
- ::当隐藏中的窗口发现自己离去(退出)了,就留下%a%last的遗信,已告知第二个窗口它已经离开了
- if exist %a%die erase /f /q %a%die&echo abc>%a%last&exit
- goto hide
复制代码
|