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.
İ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:
ş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,
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.
Kod:
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:
Kod:
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,