PDA

Показать полную графическую версию : [решено] Проблема с %~dp0


Stalingrad
30-10-2007, 04:53
Написал следущий бат файл

@echo off
set winrar="%~dp0"
start /wait "%winrar%\WinRAR3.70RUS.exe" /s
copy /y "%winrar%\rarreg.key" "%programfiles%\winrar"
xcopy "%winrar%\WinRAR_Jr_48x48" "%appdata%\winrar\themes" /e /y



Проблема :::
1)Как избегая команду set winrar=%~dp0 сделать установку без переменных как предлагают -
@echo off
cd /d "%~dp0"
start /wait "WInrar3.70rus.exe" /s .... Просто все следущие команды у меня идут (copy/xcopy) а первая нет (start /wait ...)
2)Какую ошибку я допустил в написаний?Почему не идет установка winrar а выскакивает окно и там пишется типо- неправельный ключ /s или вообше ничего не происходит

amel27
30-10-2007, 05:30
Stalingrad
Написал следущий бат файл
1. Подстановка %~dp0 включает оконечный слэш, соответственно в батнике он лишний;
2. В команде SET кавычки не нужны, иначе они перенесутся в подстановку %winrar%;
3. В команде "start /wait" нужно добавить заголовок окна, иначе команда воспринимается как заголовок;
4. В xcopy для целевых каталогов желательно указывать оконечные слэши (воизбежание лишних вопросов).

Итого:@echo off
set winrar=%~dp0
start /wait "" "%winrar%WinRAR3.70RUS.exe" /s
copy /y "%winrar%rarreg.key" "%programfiles%\winrar"
xcopy "%winrar%WinRAR_Jr_48x48" "%appdata%\winrar\themes\" /e /y

Как избегая команду set winrar=%~dp0 сделать установку без переменныхтипа такого:@echo off
cd /d "%~dp0"

start /wait "" "WinRAR3.70RUS.exe" /s
copy /y "rarreg.key" "%programfiles%\winrar"
xcopy "WinRAR_Jr_48x48" "%appdata%\winrar\themes\" /e /yили так:@echo off
start /wait "" "%~dp0WinRAR3.70RUS.exe" /s
copy /y "%~dp0rarreg.key" "%programfiles%\winrar"
xcopy "%~dp0WinRAR_Jr_48x48" "%appdata%\winrar\themes\" /e /y

Stalingrad
30-10-2007, 12:02
Спасибо большое




© OSzone.net 2001-2012