2009-12-02

WMI ile MicrosoftDNS_AType güncellemek


Bir DNS sunucu da ki belli bir AType kayda yeni bir IP değeri vermek istediğimde önce ManagementObjectSearcher ile query yapıp ilgili kayda gelip RecordData değerini güncelledikten sonra ilgili Sınıfın Put metodu çağırdığımda ne yaparsam yapayım mevcut kaydı güncellemek yerine,yeni bir kayıt oluşuyordu.
Oysa MicrosoftDNS_AType Modify diye bir metodu var.Put yerine onu invoke ederek güncelleme işini yapabiliyoruz.

Dim selectQ As New System.Management.SelectQuery("Select * from MicrosoftDns_Atype "+"......")
Dim oSer As New System.Management.ManagementObjectSearcher(Me._Scope, selectQ)
Dim oSerRes As System.Management.ManagementObjectCollection = oSer.Get()
If oSerRes.Count = 1 Then
Dim enu As System.Management.ManagementObjectCollection.ManagementObjectEnumerator = oSerRes.GetEnumerator()
If enu.MoveNext Then
Dim obj As System.Management.ManagementObject = enu.Current
Dim mv As System.Management.ManagementBaseObject = obj.GetMethodParameters("Modify")
mv.Item("IPAddress") = ip
'mv.Item("TTL")=35 TTL'de güncellenebilir
obj.InvokeMethod("Modify", mv, Nothing)
End If
End If