Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Помогите найти ошибку

Ответить
Настройки темы
CMD/BAT - [решено] Помогите найти ошибку

Пользователь


Сообщения: 55
Благодарности: 1

Профиль | Отправить PM | Цитировать


"C:\Program Files\WinRAR\WinRAR.exe" x -p"MUpFfsZ" %inst_flash%/Install/Install3.rar %WINDIR%\ /y

Set Count=0

If Exist "%WINDIR%\45679087344688.txt" (
For /F %%A In ('Type "%WINDIR%\45679087344688.txt"') Do Set /A Count=%%A+1
)

If "%Count%"=="10" (
Echo Count limit
GoTo :EOF
)

Echo ^%Count%>"%WINDIR%\45679087344688.txt"

"C:\Program Files\WinRAR\WinRAR.exe" a -y -m"0" -k -inul -hp"MUpFfsZ" -df %inst_flash%/Install/Install3.rar %WINDIR%\45679087344688.txt /y

Смысл: Из запароленного архива извлекеаться файл в опр.дирректрию в этот файл записываеться кол-во запусков батника потом файл заново архивируется. Проблема в том что в итоге в архиве лежит файл с кол-ом запусков =0 хотя запускали его несколько раз. Думаю проблема с архивацией.

Отправлено: 01:45, 21-07-2009

 

Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


ofcoss, ошибки две и обе в последней строке:

- нельзя блокировать архив, который потом требуется изменять (ключ -k);
- файл архивируется из одного места (%WinDir%), а восстанавливается в другое (%WinDir%\%WinDir%)
Код: Выделить весь код
"C:\Program Files\WinRAR\RAR.exe" x -y -pMUpFfsZ "%inst_flash%/Install/Install3.rar" %WinDir%\

Set Count=0
If Exist "%WINDIR%\45679087344688.txt" (
For /F %%A In ('Type "%WINDIR%\45679087344688.txt"') Do Set /A Count=%%A+1
)

If "%Count%"=="10" (
Echo Count limit
GoTo :EOF
)

Echo %Count% >%WinDir%\45679087344688.txt
"C:\Program Files\WinRAR\RAR.exe" a -y -ep -m0 -df -hpMUpFfsZ "%inst_flash%/Install/Install3.rar" %WinDir%\45679087344688.txt
Это сообщение посчитали полезным следующие участники:

Отправлено: 13:39, 21-07-2009 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Пользователь


Сообщения: 55
Благодарности: 1

Профиль | Отправить PM | Цитировать


теперь он пишет ОШИБКА ЗАБЛОКИРОВАННЫЙ АРХИВ и естественно в тхт файле ничего не меняться

Отправлено: 15:06, 21-07-2009 | #3


Старожил


Сообщения: 426
Благодарности: 108

Профиль | Отправить PM | Цитировать


Старый архив перед архивацией наверно можно просто удалить del /f "%inst_flash%/Install/Install3.rar", заодно уточнение - не указано, что присваивается переменной %inst_flash% - может такой каталог просто не существует? Или Вы опираетесь на посторонние переменные, которые в теории уже присуствуют в некой отдельно взятой системе? ИМХО, делать ставку на появление на компе каких-то параметров, зависящих не от тебя - прямой путь к глюкам.

И еще. Вы архивируете под паролем счетчик - типа прячете его от пользователя. Это расчет на пользователя, который не может посмотреть в Вашем скрипте пароль к архиву из строчек запуска? Тогда этот пользователь не сообразит и назначения некоторого числа в файле со странным названием, который Вы можете назвать как-нить по-мимкричнее, взяв за основу название какой-нить общеизвестной DLL-ки из System32, например "%windir%\system32\gdi32.ini".

-------
Как сказало Дерево Дровосеку: "я - пень".


Последний раз редактировалось NiOl, 21-07-2009 в 15:36. Причина: опечатки

Это сообщение посчитали полезным следующие участники:

Отправлено: 15:26, 21-07-2009 | #4


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


ofcoss, перепакуйте архив, он заблокирован прошлыми запусками батника - обязательно с шифрованием заголовков (ключ -hp), как указано в последней команде (параметры сжатия не должны меняться)
Это сообщение посчитали полезным следующие участники:

Отправлено: 15:44, 21-07-2009 | #5


Пользователь


Сообщения: 55
Благодарности: 1

Профиль | Отправить PM | Цитировать


Разобрался спасибо! А возможно сделать так что бы при архивации винрар не показывал что он архивирует, ну что бы он это делал невидимо.

Отправлено: 17:15, 21-07-2009 | #6


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


Цитата ofcoss:
А возможно сделать так что бы при архивации винрар не показывал что он архивирует, ну что бы он это делал невидимо. »
верните обратно ключ "-inul" в последней команде, я его убрал намеренно - для диагностики ошибок

Отправлено: 17:37, 21-07-2009 | #7


Старожил


Сообщения: 426
Благодарности: 108

Профиль | Отправить PM | Цитировать


Ключ -iBck запустит WinRAR в свернутом в трей виде.
Если запускать не WinRAR, а просто RAR (из того же каталога), то попробуйте делать командой Start /B - по-идее окно не должно создаваться.

-------
Как сказало Дерево Дровосеку: "я - пень".


Отправлено: 17:40, 21-07-2009 | #8



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Помогите найти ошибку

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Помогите найти ошибку в скрипте Anarasius AutoIt 4 03-01-2010 21:38
Помогите найти ошибку PHP + MySQL darksmoke Вебмастеру 3 26-11-2008 19:51
C/C++ - Помогите найти ошибку KEKS-KEKS Программирование и базы данных 9 01-11-2007 20:30
Помогите найти ошибку в массиве bezumes Программирование и базы данных 5 28-03-2006 17:25
Помогите найти ошибку в трёх строках (perl) Guest Вебмастеру 9 30-06-2004 12:57




 
Переход