Well hell.... here is Drives, CPU's and memory, using the WMI interface and Kix4.0.

code:

? "----===== Drives =====----"

$drives = GetObject("WinMgmts:").InstancesOf("Win32_LogicalDisk")
for each $drive in $drives
? $drive.name
? "Total drive size = " + $drive.size
? "freespace = " + $drive.freespace
select
case $drive.drivetype = 0
? "Drive type = Unknown"
case $drive.drivetype = 1
? "Drive type = No Root Directory"
case $drive.drivetype = 2
? "Drive type = Removable Disk"
case $drive.drivetype = 3
? "Drive type = Local Disk"
case $drive.drivetype = 4
? "Drive type = Network Drive"
case $drive.drivetype = 5
? "Drive type = Compact Disc"
case $drive.drivetype = 6
? "Drive type = RAM Disk"
endselect
? ""
next


? "----===== CPU's =====----"
$CPUs = GetObject("WinMgmts:").InstancesOf("Win32_Processor")
for each $cpu in $cpus
? $cpu.Manufacturer + ":" + $cpu.CurrentClockSpeed + "Mhz"

next

? "----===== Memory =====----"

$Memory = GetObject("WinMgmts:").InstancesOf("Win32_PhysicalMemory")
for each $mem in $memory
? $mem.Capacity + " bytes"
next