-1

I try to create visual basic 2010 program that detect which connection is connected and its ip address. For example if i connect with wireless and cable, it will show both media connected and its ip address. This code i take from WMI code creator

Dim strComputer = "." 
Dim Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2") 
Set colItems = objWMIService.ExecQuery( _
"SELECT * FROM Win32_NetworkAdapterConfiguration",,48) 
For Each objItem in colItems 
Wscript.Echo "-----------------------------------"
Wscript.Echo "Win32_NetworkAdapterConfiguration instance"
Wscript.Echo "-----------------------------------"
If isNull(objItem.IPAddress) Then
    Wscript.Echo "IPAddress: "
Else
    Wscript.Echo "IPAddress: " & Join(objItem.IPAddress, ",")
End If

Then i got error message

'colItems' is not declared. It may be inaccessible due to its protection level. 

Am i doing wrongly? Can someone show me if this is the wrong code or not?

Ňɏssa Pøngjǣrdenlarp
  • 38,411
  • 12
  • 59
  • 178

1 Answers1

0

Better use the class ManagementObjectSearcher. Here an example:

Private objOS As ManagementObjectSearcher
Private objCS As ManagementObjectSearcher
Private objMgmt As ManagementObject
Private m_strComputerName As String
Private m_strManufacturer As String
Private m_StrModel As String
Private m_strOSName As String
Private m_strOSVersion As String
Private m_strSystemType As String
Private m_strTPM As String
Private m_strWindowsDir As String


Public Sub New()

    objOS = New ManagementObjectSearcher("SELECT * FROM Win32_OperatingSystem")
    objCS = New ManagementObjectSearcher("SELECT * FROM Win32_ComputerSystem")
    For Each objMgmt In objOS.Get


        m_strOSName = objMgmt("name").ToString()
        m_strOSVersion = objMgmt("version").ToString()
        m_strComputerName = objMgmt("csname").ToString()
        m_strWindowsDir = objMgmt("windowsdirectory").ToString()
    Next

Just change the query to: SELECT * FROM Win32_NetworkAdapterConfiguration

Carlos Landeras
  • 11,025
  • 11
  • 56
  • 82