|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Имопрт Reg-файла |
|
|
CMD/BAT - [решено] Имопрт Reg-файла
|
Новый участник Сообщения: 8 |
Привет.
Как узнать, что импорт REG-файла прошёл успешно? Допустим, я запускаю батник с таким содержимым. Reg-файл имеет такое содержимое. В любом случае возвращается 0. Даже если доступ к ключу запрещён, и ничего не вносится. Даже если корневого раздела не существует. Во всех справках говорится, что при сбое будет возвращена единица. Как, вообще, возможно узнать, удачно-ли импортировался Reg-файл? |
|
Отправлено: 12:12, 17-11-2018 |
Ветеран Сообщения: 1274
|
Профиль | Отправить PM | Цитировать если вы не просто ветку создаете (иначе именно reg import лишнее reg add хватит), а и данные в ней, то проверить не пустая ли ветка и естественно ее существование, можно так:
reg import "C:\Temp\111.reg" reg query "HKEY_CURRENT_USER\Software\111"|find /v "" && (echo Успешно, ветка не пуста) || (echo Или данные не внесены или ветки нет) pause в PowerShell легче работать с реестром, а тут что первое в голову пришло то и написал. |
Отправлено: 13:28, 17-11-2018 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать |
Последний раз редактировалось Iska, 17-11-2018 в 13:42. Отправлено: 13:33, 17-11-2018 | #3 |
Новый участник Сообщения: 8
|
Профиль | Отправить PM | Цитировать Я имеею ввиду, что допустим, доступ к разделу запрещён.
Соответстсвенно, записано ничего не будет. Но возвратиться 0, которое говорит об успехе. |
Отправлено: 13:43, 17-11-2018 | #4 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Другое дело, что толку в этом мало: ну, предположим, узнали мы, что некая часть данных не была успешно импортирована в реестр — и что? Чтобы реально отслеживать что-то, нужны единичные операции с каждым отдельным разделом и параметром, и ведение лога на каждый чих.
|
|
Отправлено: 13:46, 17-11-2018 | #5 |
Новый участник Сообщения: 37
|
Профиль | Отправить PM | Цитировать Нет там потоков. STDOUT в Regedit.exe не поддерживается.
|
Отправлено: 14:07, 17-11-2018 | #6 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата Cytus:
Скрытый текст
![]() Я запретил полный доступ группе Everyone (Все) к разделу реестра HKEY_CURRENT_USER\Software\111. Результат попытки импорта файла реестра посредством reg.exe Вы видите. Что не так? |
|
Отправлено: 14:10, 17-11-2018 | #7 |
Новый участник Сообщения: 8
|
Профиль | Отправить PM | Цитировать |
Отправлено: 14:11, 17-11-2018 | #8 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Cytus, а Вы для начала определитесь, что есть успех и что есть ошибка. Затем перенаправьте стандарный поток ошибок в стандартный поток вывода (поскольку reg.exe для информирования использует именно стандартный поток ошибок, а не стандартный поток вывода (стандартный поток вывода используется, например, для reg.exe query и т.п.):
Скрытый текст
![]() А ещё лучше будет примерно так: @echo off setlocal enableextensions enabledelayedexpansion >"Result.txt" 2>&1 ( for %%i in (*.reg) do ( echo [%%~fi]: echo --------------------------------- reg.exe import "%%~i" echo --------------------------------- echo. ) ) endlocal exit /b 0 Result.txt
[C:\Мои проекты\0218\0001.reg]: --------------------------------- Ошибка: Указанный файл не является файлом реестра. Поддерживается импорт только файлов реестра. --------------------------------- [C:\Мои проекты\0218\0002.reg]: --------------------------------- Ошибка: Ошибка при доступе к реестру. --------------------------------- [C:\Мои проекты\0218\0003.reg]: --------------------------------- Ошибка: Ошибка при доступе к реестру. --------------------------------- [C:\Мои проекты\0218\0004.reg]: --------------------------------- Операция успешно завершена. --------------------------------- |
Отправлено: 14:28, 17-11-2018 | #9 |
Новый участник Сообщения: 8
|
Профиль | Отправить PM | Цитировать У меня доступ к ключу закрыт.
Ничего не вносится. Но пишет "Операция успешно завершена". ХР-система. |
Отправлено: 14:34, 17-11-2018 | #10 |
|
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Установка - [решено] Удаление записи в реестре, посредством файла *.REG | turan101 | Microsoft Windows 2000/XP | 1 | 28-04-2015 11:17 | |
Установка - Тихая установка файла с расширением .reg | Эльдарик | Microsoft Windows 7 | 0 | 20-08-2014 13:05 | |
CMD/BAT - Автозапуск сетевого reg файла? | smol84 | Скриптовые языки администрирования Windows | 5 | 22-11-2011 14:06 | |
[решено] Импорт .reg файла | apozlevich | AutoIt | 2 | 17-11-2011 09:35 | |
запуск reg-файла под администраторскими правами | XPurple | Microsoft Windows NT/2000/2003 | 3 | 18-11-2005 10:44 |
|