WinBatch Tech Support Home

Database Search

If you can't find the information using the categories below, post a question over in our WinBatch Tech Support Forum.

TechHome

WMI
plus
plus

Can't find the information you are looking for here? Then leave a message over on our WinBatch Tech Support Forum.

Win32_SerialPort Information via WMI


 Keywords: serial com port wmi status
Locator = ObjectOpen("WbemScripting.SWbemLocator")
Service = Locator.ConnectServer()
Security = Service.Security_
Security.ImpersonationLevel = 3
Class = "Win32_SerialPort"
Instance = Service.InstancesOf(Class)
hEnum = ObjectCollectionOpen(Instance)
While 1
  Obj = ObjectCollectionNext(hEnum)
  If Obj == 0 Then Break
  deviceid = Obj.DeviceId
  name = Obj.Name
  availcode = Obj.Availability
  Switch availcode
	  case 1
	     availstr = "Other"
	  break
	  case 2
	     availstr = "Unknown"
	  break
	  case 3
	     availstr = "Running/Full Power" 
	  break
	  case 4
	     availstr = "Warning"
	  break
	  case 5
	     availstr = "In Test"
	  break
	  case 6
	     availstr = "Not Applicable"
	  break
	  case 7
	     availstr = "Power Off"
	  break
	  case 8
	     availstr = "Off Line"
	  break
	  case 9
	     availstr = "Off Duty"
	  break
	  case 10
	     availstr = "Degraded"
	  break
	  case 11
	     availstr = "Not Installed"
	  break
	  case 12
	     availstr = "Install Error"
	  break
	  case 13
	     availstr = "Power Save - Unknown"
	  break
	  case 14
	     availstr = "Power Save - Low Power Mode"
	  break
	  case 15
	     availstr = "Power Save - Standby"
	  break
	  case 16
	     availstr = "Power Cycle"
	  break
	  case 17
	     availstr = "Power Save - Warning"
	  break
	  case 18
	     availstr = "Paused"
	  break
	  case 19
	     availstr = "Not Ready"
	  break
	  case 20
	     availstr = "Not Configured"
	  break
	  case 21
	     availstr = "Quiesced"
	  break
	  EndSwitch
  
  statusinfo = Obj.StatusInfo
   Switch availcode
	  case 1
	     infostr = "Other"
	  break
	  case 2
	     infostr = "Unknown"
	  break
	  case 3
	     infostr = "Enabled" 
	  break
	  case 4
	     infostr = "Disabled"
	  break
	  case 5
	     infostr = "Not Applicable"
	  break
	EndSwitch

  status = Obj.Status

  title = StrCat(deviceid, " : ",name)
  msg = StrCat("Availability  = ", availstr,@CRLF,"StatusInfo = ",infostr,@CRLF,"Status = ",status)
  Message(title, msg)
EndWhile
ObjectCollectionClose(hEnum)
ObjectClose(Instance)
ObjectClose(Security)
ObjectClose(Service)
ObjectClose(Locator)

Exit

Article ID:   W16275
File Created: 2004:03:30:15:43:44
Last Updated: 2004:03:30:15:43:44