Войти

Показать полную графическую версию : VBS как получить параметр из реестра?


JooDoo
20-09-2018, 07:02
Добрый день.
Нужен совет.
Есть такая ветка в реестре:
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Mozilla\Firefox\TaskBarIDs]
"C:\\Program Files (x86)\\Mozilla Firefox"="E7CF176E110C211B"
как присвоить значение переменной str E7CF176E110C211B ?

Вот так как я понимаю не правильный запрос.
str = WSHShell.regread ("HKLM\SOFTWARE\Wow6432Node\Mozilla\Firefox\TaskBarIDs\C:\Program Files (x86)\Mozilla Firefox")

а как необходимо написать правильно???

Iska
20-09-2018, 07:14
Option Explicit

Const HKEY_LOCAL_MACHINE = &H80000002


Dim objSWbemObjectEx
Dim strValue


Set objSWbemObjectEx = WScript.CreateObject("WbemScripting.SWbemLocator").ConnectServer(".", "root\default").Get("StdRegProv")

If objSWbemObjectEx.GetStringValue(HKEY_LOCAL_MACHINE, "SOFTWARE\Wow6432Node\Mozilla\Firefox\TaskBarIDs", "C:\Program Files (x86)\Mozilla Firefox", strValue) = 0 Then
WScript.Echo strValue
Else
WScript.Echo "Can't find subkey or parameter in registry"
End If

Set objSWbemObjectEx = Nothing

WScript.Quit 0

Определитесь, у Вас:
"C:\\Program Files (x86)\\Mozilla Firefox" »
или же:
WSHShell.regread ("HKLM\SOFTWARE\Mozilla\Firefox\TaskBarIDs\C:\Program Files\Mozilla Firefox") »

JooDoo
20-09-2018, 07:27
У меня
Program Files (x86)

Мне надо считать данный параметр E7CF176E110C211B который может меняться от версии к версии.

Iska
20-09-2018, 12:17
У меня Program Files (x86) »
Значит, используйте в имени параметра «Program Files (x86)» (собственно, в коде так и сделано).

Мне надо считать данный параметр E7CF176E110C211B »
Это не «параметр». Это значение параметра. А параметр — «C:\Program Files (x86)\Mozilla Firefox».

Вы код-то приведённый опробовали?

JooDoo
21-09-2018, 11:08
Спасибо все работает.




© OSzone.net 2001-2012