Code:
Break On
$strComputer = "wheelerc_lap"
$arrBattery = split(WMIQuery('name','Win32_PortableBattery',$strComputer),'|')
$arrbatcode = '1K055', '3K590', '59474', '6P922', 'C2603', 'C5339', 'C5340', 'C5446',
'C6269', 'C6270', 'D2961', 'D5555', 'D6024', 'D6025', 'F2100', 'F5132',
'GD785', 'H3191', 'JD616', 'JD617', 'KD494', 'M3006', 'RD857', 'TD349',
'U5867', 'U5882', 'W5915', 'X5308', 'X5329', 'X5332', 'X5333', 'X5875',
'X5877', 'Y1333', 'Y4500', 'Y5466'
For each $battery in $arrbattery
for each $item in $arrbatcode
if instr($battery ,$item)
? $battery
endif
next
Next
FUNCTION WMIQuery($what,$from,optional $computer,optional $where, optional $x)
dim $strQuery, $objEnumerator, $value
if not $computer $computer="@WKSTA" endif
$strQuery = "Select $what From $from"
if $where and $x $strQuery = $strQuery + " Where $where = '$x'" endif
$SystemSet = GetObject("winmgmts:{impersonationLevel=impersonate}!//$computer")
$objEnumerator = $SystemSet.ExecQuery($strQuery)
For Each $objInstance in $objEnumerator
If @Error = 0 and $objInstance <> ""
$=execute("$$value = $$objInstance.$what")
$WMIQuery="$value"+"|"+"$WMIQuery"
EndIf
Next
$WMIQuery=left($WMIQuery,len($WMIQuery)-1)
exit @error
ENDFUNCTION