![]() |
экранировать скобки в данных из реестра
Для одного цикла FOR поборол лишние круглые скобки, а дальше отсутствие образования не позволяет :-)
Помогите, пожалуйста, довести до ума скрипт. Делаю на основе этого и этого кода. Код:
rem @echo off |
kokos76, не борите. Просто используйте WSH или PoSH для оригинального кода.
|
Что, неужели никак? С одной стороны, я ничего не знаю, кроме bat-ников (когда-то в школе интересовался), а с другой стороны, мне нужно, чтобы скрипт мог работать в Безопасном режиме и в Windows RE.
|
kokos76, если представленный Вами код рабочий, то тогда почти со всеми спецсимволами будет работать такой код:
Код:
@echo off Пакетный файл с этим кодом не сможет только обрабатывать имена параметров реестра, содержащие символы Цитата:
Если в обрабатываемых именах параметров будут двойные кавычки, то пакетный файл также может работать некорректно, но кавычки в именах параметров встречаются редко. Да, чуть не забыл написать, что если в обрабатываемой строке встретятся символы процента, то в коде пакетного файла их надо обязательно удваивать при записи такой строки. |
Georgio, код рабочий. Со обычными строками работает нормально. Это вывод ошибки в Вашем варианте.
Код:
C:\test>Set $N=1 |
Цитата:
Как раз-таки мой вариант кода отработал безошибочно. Если уж параметра с таким именем в реестре нет, то его значение никаким кодом найти невозможно. Очевидно, Вы посчитали за имя параметра отображаемую в реестре запись "(Default)" (то есть "(По умолчанию)") для безымянных параметров. А значения безымянных параметров с помощью такого кода получать невозможно. Нужно писать абсолютно другой код, для чего нужно знать цель Вашей разработки и причину, по которой Вы объединяете изначально имя раздела реестра с именем параметра реестра в одну строку, а не используете их, как обычно это делается, порознь. |
Цитата:
Цитата:
|
Цитата:
Да уж... Если с вопросительными знаками и астерисками ещё можно справиться, то что делать, когда имя параметра также, как и имя раздела, содержит обратные слеши?.. Хотя, разделить строку, конечно, можно (проверяя существование каждого раздела в этом "псевдопути"), но сложно... |
Цитата:
с параметром (newparameter) скрипт отработал нормально. Вот результат: Код:
REGEDIT4 |
P.p.s. Да, такая запись входных данных - это выходные данные из Process Monitor. Посмотрю после работы, может там можно как-то "подкрутить" экспорт.
|
Время: 22:00. |
Время: 22:00.
© OSzone.net 2001-