Преобразовать значение реестра BINARY в значащую строку - PullRequest
3 голосов
/ 13 сентября 2011

Я ищу способ или Vbscript, который может преобразовать двоичное значение ключа реестра в строчку.

Например, думаю, что это мой ключ:

[HKEY_CURRENT_USER\System\Majid]
"FilePath"=hex:50,4f,2b,2a,90,93,e0,11,80,01,44,45,53,54,00,00

Этопереведено на: PO + * گ “€ DEST

Но что это означает на самом деле?Я хочу расшифровать это странное значение в значащее слово.Если вы можете дать мне простой VBScript, в котором я могу заменить свой ключ и получить результат, я буду очень признателен вам:)

Ответы [ 2 ]

3 голосов
/ 22 сентября 2011

Хорошо. Используйте этот кусок кода, чтобы сделать свое дело. Посмотрите, как я получаю значение реестра и преобразует его.

Const HKEY_CURRENT_USER = &H80000001  
objreg = GetObject("winmgmts:" & _  
      "{impersonationLevel=impersonate}!\\" & _  
      strComputer & "\root\default:StdRegProv")  


objreg.GetBinaryValue HKEY_CURRENT_USER, "System\Majid", "FilePath", strRetVal  

MsgBox RegBinaryToString(strRetVal)  

function RegBinaryToString(arrValue)  
 strInfo=""  
  for i=0 to ubound(arrValue)  
   if arrValue(i)<>0 then strInfo=strInfo & chr(arrValue(i))  
  next  
 RegBinaryToString=strInfo  
end function  
1 голос
/ 06 декабря 2018
Set objRegistry = CreateObject("Wscript.shell")
target = objRegistry.RegRead("HKCU\System\Majid\FilePath")
output = ""
for k = LBound(target,1) To UBound(target,1)
    output = output & chr(eval("&H"& hex(target(k))))
next
msgbox output
...