Με το WMI δεν έχω ασχοληθεί καθολου και προσπαθώ να αλλάξω την IP από ένα συγκεκριμένο network conneticion.
Έχω καταφέρει να "πάρω" το Connection Name και την MAC address από τα υπάρχοντα connections και να τα βάλω σε arrays & σε listboxes με τον παρακάτω κώδικα:
Dim strMACAddress As String
Dim cliClass As New ManagementClass("Win32_NetworkAdapter")
Dim cliCol As ManagementObjectCollection = cliClass.GetInstances()
Dim cli As ManagementObject
On Error GoTo errori
For Each cli In cliCol
If cli("NetConnectionID") <> Nothing Then
arClient.Add(cli("NetConnectionID").ToString())
arID.Add(cli("MacAddress").ToString())
End If
Next cli
Me.ListBox1.Items.AddRange(arClient.ToArray)
Me.ListBox2.Items.AddRange(arID.ToArray)
Όταν επιλέγεται κάποιο Item από το ListBox1 το strMACAddress πέρνει την τιμη της MAC Address από το SelectedIndex.
strMACAddress = (arID(cboNames.SelectedIndex))
Έχω την εντύπωση ότι αν χρησιμοποιήσω το ManagementClass
Win32_NetworkAdapterConfiguration θα μπορέσω να το αλλάξω μέσω της MAC
address, απλά δεν γνωρίζω τις παραμέτρους που πρέπει να δωθουν. Εχω σηκώσει χέρια.
Σημ: Μαζί με την IP θέλω να αλλαχτούν και τα: Subnet, Gateway, DNS. Επίσης για να περάσει σε DHCP mode (& η IP & τα DNS) τι πρέπει να κάνω;
Visual Basic 2008 Express edition (και βλέπουμε)