PDA

Показать полную графическую версию : [решено] Различные сообщения при возникновении ошибок


Stalker_AleX333
09-11-2017, 22:26
Есть bat-ник, который копирует несколько разных файлов в определенные папки пользователя:


set "FileIn1=Silver Raven mods pack settings\Plugins.txt"
set "BoxOut1=%USERPROFILE%\AppData\Local\Skyrim Special Edition"
if not exist "%BoxOut1%" md "%BoxOut1%"
copy /y "%FileIn1%" "%BoxOut1%\"

set "FileIn2=Silver Raven mods pack settings\Skyrim.ini"
set "BoxOut2=%USERPROFILE%\Documents\My Games\Skyrim Special Edition"
if not exist "%BoxOut2%" md "%BoxOut2%"
copy /y "%FileIn2%" "%BoxOut2%\"

if exist "%FileIn1% %FileIn2%" ( color 07
echo.
echo Отсортированный список плагинов и файл скрытых настроек игры скопированы в папки пользователя.
echo.
echo.
pause
exit /b


Если какой-либо из файлов не удалось найти выводится сообщение об ошибке:


if not exist "%FileIn1%" ( color 0c
echo.
echo *ОШИБКА! Файл Plugins.txt не найден!
echo.
echo Не удалось скопировать отсортированный список плагинов.
echo Извлеките папку Silver Raven mods pack settings из установочных архивов со сборкой в папку с игрой вручную и перезапустите панель управления, или воспользуйтесь сортировкой плагинов с помощью программы LOOT. *Опция присутствует в данной панели управления.
echo.
echo.
pause
exit /b
)

if not exist "%FileIn2%" ( color 0c
echo.
echo *ОШИБКА! Файл Skyrim.ini не найден!
echo.
echo Не удалось скопировать файл скрытых настроек игры.
echo Извлеките папку Silver Raven mods pack settings из установочных архивов со сборкой в папку с игрой вручную и перезапустите панель управления.
echo.
echo.
pause
exit /b
)


Проблема в том, что если отсутствуют все файлы - отображается первое сообщение об ошибке (условие-то выполняется), а необходимо вывести это:

if not exist "%FileIn1% %FileIn2%" ( color 0c
echo.
echo *ОШИБКА! Файлы Plugins.txt и Skyrim.ini не найдены!
echo.
echo Не удалось скопировать отсортированный список плагинов и файл скрытых настроек игры.
echo Извлеките папку Silver Raven mods pack settings из установочных архивов со сборкой в папку с игрой вручную и перезапустите панель управления.
echo.
echo.
pause
exit /b
)

Можно как-то обойти сие неудобство? Добавить доп. условия или еще чего?
И возможно вывести предупреждение, когда bat-нику не удается провести копирование файлов из-за блокировки записи (при недостатке прав у пользователя или слишком подозрительном антивируснике)?

Stalker_AleX333
07-12-2017, 19:08
Вопрос решил самостоятельно. Тему закрываю.




© OSzone.net 2001-2012