WSH. Как получить список баз из реестра #169766


#0 by VanoZZZ
Видел много сообщений на эту тему на форуме, постоянно предлагают воспользоваться WMI для получения списка баз, ибо знак "" WSH не понимает (точнее понимает, но неправильно)... Я думаю должно быть решение этого вопроса, может быть можно использовать какие-нибудь служебные символы (только вот какие) или по другому как то обойти эту корявость, ведь нет ничего невозможного. Есть у когонить по этому поводу соображения?
#1 by The gray Cardinal
#2 by VanoZZZ
Это известно, но как сделать через WScript.Shell метод RegRead?
#3 by The gray Cardinal
Через WScript.Shell метод RegRead сделать нельзя, ибо знак "" RegRead не понимает (точнее понимает, но неправильно)...
#4 by The gray Cardinal
Навсякий случай: по ссылке в есть готовая функция на 1С, которая получает список баз из реестра.
#5 by The gray Cardinal
В похоже невпопад, не читайте :)) Сейчас точно не помню, но WSH в "чистом виде" похоже просто не позволяет пройти циклом по ветке реестра... Впрочем, и записать значения параметров реестра со слешами тоже вроде...
#6 by VanoZZZ
Я просто не хочу пользоваться WMI, хотя бы по той простой причине, что мне не очень понятен синтаксис, да и если буду разбираться, все равно, если потом будет необходимость работать с реестром в 1С нифига не запомню, что нужно писать, а инета может и не быть. Вообще не люблю делать того, что не понимаю...
#7 by VanoZZZ
Сделаю тогда через экспорт ветки реестра в текстовый файл, как в ссылки . Спасибо кстати кардинал
#8 by The gray Cardinal
Это не причина отказываться от WMI! :)) Помучайся один раз, и проблем не будет. Копирни все статьи с на хард, если боишься остаться без инета. На самом деле, читать/писать реестр через WMI не просто, а ОЧЕНЬ просто.
#9 by smaharbA
#10 by homa
'******************************************************************* ' Язык: VBScript ' Описание: Чтение из реестра текстового параметра и параметра DWORD   '******************************************************************* ' Объявляем переменные Dim strComputer       ' Имя компьютера Dim strKeyPath        ' Имя подраздела реестра Dim strValueName      ' Имя параметра реестра Dim strValue          ' Значение текстового параметра реестра Dim dwValue           ' Значение параметра DWORD реестра Dim objReg            ' Объект SWbemObject для работы с реестром ' Объявляем константы const HKEY_LOCAL_MACHINE = &H80000002 '********************** Начало ************************************* ' Присваиваем начальные значения переменным strComputer = "." ' Получаем указатель на класс StdRegProv Set objReg = GetObject("WinMgmts:\" & strComputer & _                         "RootDefault:StdRegProv") ' Задаем имя подраздела strKeyPath = "SOFTWAREExample key" ' Задаем имя текстового параметра strValueName = "Example String Value" ' Выполняем метод GetStringValue objReg.GetStringValue HKEY_LOCAL_MACHINE,strKeyPath,strValueName,strValue ' Выводим значение параметра реестра             strValueName & ": " & strValue ... Отрывок из книжки. По WMI. В WSH не смотрел про работу с реестром. Так вот в этой книже символ <> - не проблема для VBScript. Для JScript просто везде пишется <\>.
#11 by Рупор абсурда
Баян!
#12 by smaharbA
для VBS проблемма при использовании WScript.Shell
#13 by VanoZZZ
я наверное уже задолбал всех на этом форуме, но у меня возник новый вопрос... С получением списка баз из реестра мне в принципе все понятно, а как получить название конкретной базы? Допустим, если мы знаем местонахождения базы, то можно так: а если мы не знаем путь или обработка используется для разных баз, то что нужно сделать КонецПопытки; Выдает ошибку: Ошибка компиляции Microsoft VBScript: Предполагается наличие окончания инструкции... Подскажите плз ктонить, что не так сделал?
#14 by VanoZZZ
Есть здесь кто?
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям