GAAnalytics4
2009-12-26
KCM
Televizyonlarda polis baskınlarında gördüğümüz polislerin yeleklerinde genellikle KCM yazar.KCM;Kaçakçılık ve Organize Suçlarla Mücadele Daire Başkanlığı'nın(tabi kısaltmadaki C'nin anlamını hala çözebilmiş değilim) kısaltılmasıdır.
İlgili Başkanlığın web adresi : http://www.kom.pol.tr
2009-12-17
Reflection ile Nullable Özelliklere değer verilmesi
Eğer Reflection ile Nullable(Of T),Nullable
şeklinde hata alırsınız.
Aşağıdaki fonksiyon ile tipi değiştirip değeri setleyebiliriz:
Private Function _TipDegistir(ByVal deger As Object, ByVal hedefTip As System.Type) As Object
If hedefTip Is Nothing Then Throw New ArgumentException("Hedef Tip tanımsız")
If deger.GetType Is (hedefTip) Then
Return deger
End If
If hedefTip.IsGenericType Then
If hedefTip.GetGenericTypeDefinition().Equals(GetType(Nullable(Of ))) Then
If deger Is Nothing Then Return Nothing
Dim c As New System.ComponentModel.NullableConverter(hedefTip)
hedefTip = c.UnderlyingType
End If
End If
Return Convert.ChangeType(deger, hedefTip)
End Function
Örneğin :
propertyInfoObject.SetValue(refObject, _TipDegistir(1,System.Nullable(Of Integer), Nothing)
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
Kaydol:
Kayıtlar (Atom)