Buenos dias
Estoy leyendo valores REG_MULIT_SZ con vbs y los guardo en una array de 300x3.
tengo un clave y dentro 10 subclaves y dentro de cada subclave unos valores entre 1 y 30, en total hay aproimadamente unos 150 valores.
Cuando los leo todos siempre se para en 120 valores y de ahi no pasa, no me da ningun error.
He probado de eliminar una subclave con 33 valores y entonces llega al final de la ultima subclave leyendo sus valores, parece como estar limitado a 120 valores.
Necesitaria una ayudita, GRACIAS
Aqui os dejo el codigo:
HKEY_LOCAL_MACHINE = &H80000002
KeyPath="SOFTWARE\WOW6432Node\NumReg"
Set oReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" &"." & "\root\default:StdRegProv")
oReg.EnumKey HKEY_LOCAL_MACHINE, KeyPath, arrSubKeys
Set oReg=Nothing
i=0
For n=0 to ubound(arrSubKeys)
Set objReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" &"." & "\root\default:StdRegProv")
objReg.enumValues HKEY_LOCAL_MACHINE, keyPath+"\"+arrSubKeys(n), ValueNames, "REG_MULIT_SZ"
Set oReg=Nothing
j=0
For i=i to i+ubound(ValueNames)
set WS = CreateObject("Wscript.Shell")
arValues=WS.RegRead("HKLM\"+KeyPath+"\"+arrSubKeys(n)+"\"+ValueNames(j))
Set WS=Nothing
DiagnosticWindowNumStr(i) =CStr(ValueNames(j))
For k=1 to ubound(arValues)+1
DiagnosticWindowNumValue(0,i)=CSng(ESAHMI.ESATAG.READVALUE(ValueNames(j))) 'Save current register value.
DiagnosticWindowNumValue(k,i)=CSng(arValues(k-1)) 'Save minimum/maximun register allowed value.
Next
j=j+1
Next
Next