Имя пользователя:
Пароль:
 | Правила  

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

Ответить
Настройки темы
CMD/BAT - [решено] %~dp0 без слэша

Аватара для Peutrov

Старожил


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

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


Код: Выделить весь код
Reg Add "HKEY_CURRENT_USER\software\Tailored Noise\Sausage Fattener" /v "InstallLocation" /d "%~dp0" /F >Nul
видимо такой вид записи - неправильный. В реестре получается так:

параметр /F необходим. Команда не должна обращать внимание на имеющиеся записи.
А если повторно запустить батник - консоль вообще подвисает.
А если добавить хотя бы пробел
Код: Выделить весь код
reg add ...... /d "%~dp0 "
- всё работает и консоль не подвисает при попытке перезаписать данные.
Оригинальный установщик программы в конец строки не добавляет символ слеш. Возможно не критично и программа будет работать даже если в строке реестра путь к папке содержит этот символ в конце. Но всё-таки можно ли сделать без него (и без проблема)? Спасибо.

Отправлено: 22:08, 24-10-2019

 

Ветеран


Contributor


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

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


Код: Выделить весь код
@Echo Off
cls
	Set "dp0=%~dp0"
	Echo "%dp0:~0,-1%"
pause
Exit /B 0

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.

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

Отправлено: 22:17, 24-10-2019 | #2



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

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


Ветеран


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

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


Код: Выделить весь код
@echo off
setlocal enableextensions enabledelayedexpansion

set sPath=%~dp0
>nul reg.exe add "HKEY_CURRENT_USER\software\Tailored Noise\Sausage Fattener" /v "InstallLocation" /d "\"%sPath:~,-1%\"" /f

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

Отправлено: 23:21, 24-10-2019 | #3


Забанен


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

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


Код: Выделить весь код
@echo off
cd /d "%~dp0"
Reg Add "HKEY_CURRENT_USER\software\Tailored Noise\Sausage Fattener" /v "InstallLocation" /d "%CD%" /F >Nul

Отправлено: 13:03, 25-10-2019 | #4


Ветеран


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

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


zbeypepels,
я бы c %cd% не связывался, злую шутку может сыграть, например:
Содержимое C:\ для примера

Структура папок
C:\
│ name.bat
│ f.txt

├───Papka
│ └───Papka_1
...

name.bat

Код: Выделить весь код
@echo off
echo ---------------------
echo %~dp0
echo %~dp0Papka
echo %cd%
echo %cd%\Papka
echo ---------------------
echo:
cd /d "Papka"
echo ---------------------
echo %~dp0
echo %~dp0Papka_1
echo %cd%
echo %cd%\Papka_1
echo ---------------------
echo:
pause

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

Отправлено: 16:57, 25-10-2019 | #5



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
VBS/WSH/JS - [решено] аналог %~dp0 из bat для vbs NLOLegion Скриптовые языки администрирования Windows 13 05-01-2020 07:56
CMD/BAT - [решено] Последний символ при раскрытии %~dp0 Emulty Скриптовые языки администрирования Windows 4 24-07-2011 14:35
Копьютер перезагружаеться без синего экрана и без выдачи ошибок aqua5 Непонятные проблемы с Железом 2 03-10-2009 15:03
ребут компьютера без причины, без Bsod, без ошибок не ламер Непонятные проблемы с Железом 17 23-04-2008 13:59
[решено] Проблема с %~dp0 Stalingrad Автоматическая установка приложений 2 30-10-2007 12:02




 
Переход