Hola amig@s forer@s (no quiero discriminar a ning@ forer@ que luego me llaman machist@)
Tengo a guan problem con un código en vbs... que seguro que es una tontada y no lo veo... me explico.
Tengo el siguiente script que me reporta un ficherito con el nombre de la máquina, el usuario, la marca, el modelo, el nº de serie, el procesador, la ram y "el disco duro".
"El disco duro" está así entrecomillado porque es lo que me falla. Si solamente hay un disco duro o una partición no falla pero, si hay más de una, se agilipolla y en vez de sumarme los valores (si, quiero la capacidad total de almacenamiento) me concatena los valores (me los pone seguidos). Es decir, que en vez de sumarme 20 + 30 y darme 50 me da "2030" (solo que en bytes)
Aquí va el código para que lo estudiéis y aclaro que la variable es strDISC
Gracias de antemano por la ayudaCódigo:Dim objWMI : Set objWMI = GetObject("winmgmts:") Dim colSettingsComp : Set colSettings = objWMI.ExecQuery("Select * from Win32_ComputerSystem") Dim colSettingsBios : Set colSettingsBios = objWMI.ExecQuery("Select * from Win32_BIOS") Dim colSettingsProc : Set colSettingsProc = objWMI.ExecQuery("Select * from Win32_Processor") Dim colSettingsDISC : Set colSettingsDISC = objWMI.ExecQuery("Select * from Win32_DiskDrive") Dim colSettingsRAM : Set colSettings = objWMI.ExecQuery("Select * from Win32_ComputerSystem") Dim objComputer, strModel, strSerial, strProcessor, strRAM, strDISC For Each objComputer in colSettings strModel = objComputer.Model Next For Each objComputer in colSettingsBios strSerial = objComputer.SerialNumber Next For Each objComputer in colSettings strManu = objComputer.Manufacturer Next For Each objComputer in colSettingsProc strProcessor = objComputer.Name Next For Each objComputer in colSettingsDISC strDISC = strDISC + objComputer.Size Next For Each objComputer in colSettings strRAM = objComputer.TotalPhysicalMemory Next Dim objFSO, objFolder, objShell, objTextFile, objFile Dim strDirectory, strFile, strText Set ejecuta=wscript.createobject("wscript.shell") usuario=ejecuta.ExpandEnvironmentStrings("%Username%") machine=ejecuta.ExpandEnvironmentStrings("%Computername%") strDirectory = "C:\" strFile = machine & "_" & usuario & ".txt" strText = "" Set objFSO = CreateObject("Scripting.FileSystemObject") ' OpenTextFile Method needs a Const value ' ForAppending = 8 ForReading = 1, ForWriting = 2 Const ForAppending = 2 Set objTextFile = objFSO.OpenTextFile _ (strDirectory & strFile, ForAppending, True) objTextFile.WriteLine(usuario & "*" & machine & "*" & strManu & "*" & strModel & "*" & strSerial & "*" & strProcessor & "*" & strRAM & "*" & strDISC) objTextFile.Close![]()

Normas
Juegos
Chicas del Día

)

Citar
Marcadores