|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - Удаление строк в REG файле |
|
VBS/WSH/JS - Удаление строк в REG файле
|
Пользователь Сообщения: 139 |
Всем участникам форума респект!!!
Одним из участников был написан vbs, для обработки рег файлов , нельзя его доработать. Option Explicit Dim objRegExp Dim objFSO Dim RegFile Dim strText Dim strFileName Dim BOM Dim valFormat strFileName = "NAME.reg" Set objFSO = CreateObject("Scripting.FileSystemObject") Set RegFile = objFSO.OpenTextFile(strFileName) BOM = RegFile.Read(2) RegFile.Close If BOM = Chr(&HFF) & Chr(&HFE) Then valFormat = -1 Else valFormat = 0 End If Set RegFile = objFSO.OpenTextFile(strFileName, 1, False, valFormat) strText = RegFile.ReadAll RegFile.Close Set objRegExp = New RegExp With objRegExp .Global = True .IgnoreCase = True .Pattern = "\[HKEY_.+?\](?:\r\n)+(?=\[HKEY_|$)" strText = .Replace(strText, "") End With Set RegFile = objFSO.OpenTextFile(strFileName & ".reg", 2, True, valFormat) RegFile.Write strText RegFile.Close Set RegFile = Nothing Set objFSO = Nothing Set objRegExp = Nothing WScript.Echo "Обработка завершена." WScript.Quit 0 переименовывались в .BAK, точнее NAME.REG в NAME.REG.BAK. Заранее спасибо. |
|
Отправлено: 17:33, 11-06-2013 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Пробуйте:
|
Отправлено: 01:02, 12-06-2013 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 139
|
Профиль | Отправить PM | Цитировать Iska, нет не работает!!!
В папке было два рег файла(AppEvents.reg,Creative Tech.reg), ни один не обработал, ну и две ошибки выдал --------------------------- Windows Script Host --------------------------- atibkup1.reg --------------------------- ОК --------------------------- --------------------------- Windows Script Host --------------------------- atibkup2.reg --------------------------- ОК --------------------------- Iska, пардон, все ОК! По тестим дальше!!! |
Отправлено: 03:39, 12-06-2013 | #3 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата gen0m.rsw:
![]() Закомментируйте строку с выводом имён обрабатываемых файлов: или используйте «cscript.exe» вместо «wscript.exe» в качестве основного обработчика WSH. |
|
Отправлено: 09:52, 12-06-2013 | #4 |
Пользователь Сообщения: 139
|
Профиль | Отправить PM | Цитировать Iska, все нормально, а нельзя что бы еще пустые строки удалял???
|
|
Отправлено: 06:05, 13-06-2013 | #5 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать gen0m.rsw, а зачем? Иметь по пустой строке перед именем очередного раздела:
— нормальная практика. |
Отправлено: 08:44, 13-06-2013 | #6 |
Пользователь Сообщения: 139
|
Профиль | Отправить PM | Цитировать Iska
Прошу вашей помощи!!! Ваш скрипт: Option Explicit Const ForReading = 1 Const ForWriting = 2 Const TristateUseDefault = -2 Const TristateTrue = -1 Const TristateFalse = 0 Dim objFile Dim boolBOM Dim strContent Dim strFileName With WScript.CreateObject("Scripting.FileSystemObject") For Each objFile In .GetFolder(WScript.CreateObject("WScript.Shell").CurrentDirectory).Files strFileName = objFile.Name If LCase(.GetExtensionName(strFileName)) = "reg" Then WScript.Echo strFileName With objFile.OpenAsTextStream(ForReading, TristateFalse) boolBOM = .Read(2) = Chr(&HFF) & Chr(&HFE) .Close End With With objFile.OpenAsTextStream(ForReading, TristateUseDefault) strContent = .ReadAll() .Close End With With WScript.CreateObject("VBScript.RegExp") .Pattern = "\[HKEY_.+?\](?:\r\n)+(?=\[HKEY_|$)" .Global = True .IgnoreCase = True strContent = .Replace(strContent, "") End With objFile.Copy objFile.Name & ".bak" With .CreateTextFile(strFileName, True, boolBOM) .Write strContent .Close End With End If Next End With WScript.Quit 0 Скрипт обрабатывает чуть больше!! Оригинал: [HKEY_CLASSES_ROOT\.dng\OpenWithList] [HKEY_CLASSES_ROOT\.dng\OpenWithList\PhotoViewer.dll] [HKEY_CLASSES_ROOT\.dng\OpenWithList\WLXPhotoViewer.dll] [HKEY_CLASSES_ROOT\.dng] [HKEY_CLASSES_ROOT\.dng\ShellEx] [HKEY_CLASSES_ROOT\.dng\ShellEx\{e357fccd-a995-4576-b01f-234630154e96}] @="{c7657c4a-9f68-40fa-a4df-96bc08eb3551}" [HKEY_CLASSES_ROOT\.dng\ShellEx\{e357fccd-a995-4576-b01f-234630154e96}] @="{c7657c4a-9f68-40fa-a4df-96bc08eb3551}" [HKEY_CLASSES_ROOT\.dng\OpenWithList\PhotoViewer.dll] [HKEY_CLASSES_ROOT\.dng\OpenWithList\WLXPhotoViewer.dll] С уважением !!!! |
Последний раз редактировалось gen0m.rsw, 10-10-2014 в 20:00. Отправлено: 19:42, 10-10-2014 | #7 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата gen0m.rsw:
Цитата gen0m.rsw:
Цитата gen0m.rsw:
![]() |
|||
Отправлено: 21:17, 10-10-2014 | #8 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - [решено] Удаление строк в текстовом файле, как это сделать??? | VladZombie | Скриптовые языки администрирования Windows | 70 | 08-09-2020 13:28 | |
CMD/BAT - [решено] Поиск, удаление, замена и добавление строк в текстового файле. Что возможно? | akrav | Скриптовые языки администрирования Windows | 8 | 06-12-2015 13:22 | |
CMD/BAT - Поиск слова в тексте, удаление строки, удаление 8 строк выше и 3 строк ниже | Alk-13 | Скриптовые языки администрирования Windows | 0 | 10-02-2012 18:06 | |
VBS/WSH/JS - Удаление строк в REG файле | gen0m.rsw | Скриптовые языки администрирования Windows | 9 | 28-09-2011 18:03 | |
CMD/BAT - [решено] Удаление строк в файле, начинающихся с переменной | 2ooth | Скриптовые языки администрирования Windows | 3 | 31-08-2011 13:44 |
|