• 30-06-2013, 12:40:22
    #1
    Üyeliği durduruldu
    Merhaba Arkadaşlar,

    Bugünkü makalemizde hazırladığımız programın yönetici olarak çalıştırılıp çalıştırılmadığını nasıl test ederiz onu anlatacağım.

    Bilindiği üzere Windows her gün kendine yeni özellikler katmaktadır. Windows 8 ile birlikte gelen sistemlerde kullanıcı hesapları her program için yetki düzeyini sağlayamaz hale geldi.

    Hazırlanan programlarda buna dikkat ederek kontrolü sağlamak için program açılışında Yönetici Olarak Çalıştırmaya dikkat ediyor.

    Peki bu fonksiyon nasıl kullanılıyor ? Nasıl yönetici olarak çalıştırılıyor. Cevabı: System.Security.Principal.

    Hep beraber inceleyelim.

    Öncelikle program içerisinde kullanılacak Principal kodları için kütüphanemize using System.Security.Principal; kodunu ekliyoruz.

    bool geri dönüşlü, Adminmi isminde bir fonksiyon oluşturup; programın istenilen yerinde bu fonksiyonu çağırabilelim.

    public static bool Adminmi()
    {
    
    WindowsIdentity Kimlik = WindowsIdentity.GetCurrent();
    WindowsPrincipal Esas = new WindowsPrincipal(Kimlik);
    return Esas.IsInRole(WindowsBuiltInRole.Administrator);
    
    }
    İlk adımda WindowsIdentity değişken tipinde Kimlik isminde bir değişken oluşturup WindowsIdentity sınıfının GetCurrent() metoduntan dönen değeri Kimlik değişkenine atıyoruz.

    WindowsPrincipal sınıfından önceki adımda oluşturduğumuz Kimlik değişkenini esas alıp Esas ismindeki değişkene atıyoruz.

    Artık Esas değişkeni içerisinde tüm yönetici rolleri hazırlanmış haldedir.

    Son işlem olarak açılan sistemin/programın hangi kullanıcı tarafından açıldığını seçip programın istenilen yerinde bu fonksiyonu:
    bool Admin = Adminmi();
    şeklinde kullanabiliriz.

    bool Admin değişkeni eğer True olarak döner ise program Yönetici (Administrator) olarak çalıştırılmış, eğer False döner ise program normal kullanıcı tarafından çalıştırılmış olacaktır.

    Saygılarımla,
    TAMER ÇELENK
  • 30-06-2013, 16:24:27
    #2
    hoş makale, teşekkürler
  • 30-06-2013, 17:25:10
    #3
    Üyeliği durduruldu
    ertan2002 adlı üyeden alıntı: mesajı görüntüle
    hoş makale, teşekkürler
    Çok teşekkür ederim yorumunuz için. Devamı da gelecek inşallah
  • 30-06-2013, 17:26:36
    #4
    Üyeliği durduruldu
    güzel bir anlatım olmuş tşkler
  • 30-06-2013, 19:06:44
    #5
    güzel anlatım, devamını bekliyoruz
    ertan hocam sizden de bekliyoruz
  • 01-07-2013, 17:57:14
    #6
    Üyeliği durduruldu
    kcyg17 adlı üyeden alıntı: mesajı görüntüle
    güzel bir anlatım olmuş tşkler
    Rica ederim, açıklayıcı olmaya çalıştım, öğrenme aşamasındakiler için.

    KabloBilisim adlı üyeden alıntı: mesajı görüntüle
    güzel anlatım, devamını bekliyoruz
    ertan hocam sizden de bekliyoruz
    Tabiki devamı gelecek hocam
  • 12-07-2013, 02:36:31
    #7
    Favorilere ekledim yarın öbür gün gerekir