Environment sınıfı ile isterseniz Environment altındaki property’ler yardımıyla istersenizde Environmet.GetEnvironmentVariable() metoduyla bilgisayar veya kullanıcıyla alakalı değerlere ulaşabilirsiniz.
GetEnvironmentVariable Metodu
GetEnvironmentVariable metodu parametre olarak alttaki tablodan geçmiş olduğunuz string değerlerine göre bazı kullanıcı veya bilgisayar özelliklerine ulaşabilirsiniz.
Environment Değeri | Açıklama |
---|---|
system | |
ComSpec | cmd.exe dosyasının yolu |
FP_NO_HOST_CHECK | |
lib | |
NUMBER_OF_PROCESSORS | İşlemcinin çekirdek sayısı |
OS | İşletim sistemi |
Path | Bilgisayarın path kısmında kayıtlı olan tüm yollar |
PATHEXT | Yol uzantılarının listesi |
PROCESSOR_ARCHITECTURE | İşlemci Mimarisi |
PROCESSOR_IDENTIFIER | İşlemci Kimliği |
PROCESSOR_LEVEL | İşlemci Seviyesi |
PROCESSOR_REVISION | İşlemci Revisyon Nosu |
VS80COMNTOOLS | |
VS90COMNTOOLS | |
TEMP | Temp Dizini Yolu |
TMP | Temp Dizini Yolu |
windir | Windows dizini yolu |
GetEnvironmentVariable metodu
Daha öncede belirttiğim gibi üstteki tabloda bulunan Environment değerlerini GetEnvironmentVariable metoduna parametre olarak geçerek string olarak sonuca ulaşabilirsiniz.
1 | public static string GetEnvironmentVariable(string deger) |
GetEnvironmentVariable Metodu Kullanımı
1 2 | //windows klasörünün yolu yazılır konsola. Console.WriteLine(Environment.GetEnvironmentVariable('windir')); |
Bilgisayarınızdaki tüm Enviroment değerlerini GetEnvironmentVariables metodu yardımıyla Collection olarak döndürüp Ekranan bastırabilirsiniz. Örnek olarak şu şekilde yazılabilir.
GetEnvironmentVariables Metodu Kullanımı
1 2 3 4 5 | IDictionary envVars = Environment.GetEnvironmentVariables(); foreach (DictionaryEntry envVar in envVars) { Console.WriteLine("{0} : {1}", envVar.Key, envVar.Value); } |
Environment Class’ı altındaki bazı property’ler ve geri döndürdükleri değerler.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | //Exenin çalıştığı o anki yolu verir. Console.WriteLine(Environment.CurrentDirectory); //Bilgisayarın 64bit işletim sistemi olup olmadığını dönderir. Console.WriteLine(Environment.Is64BitOperatingSystem); //64bit işlemcinin olup olmadığı sorgulanır. Console.WriteLine(Environment.Is64BitProcess); //Bilgisayar adı geri dönderilir. Console.WriteLine(Environment.MachineName); //İşletim sistemi versiyonunu dönderir. Console.WriteLine(Environment.OSVersion); //İşlemci sayısını dönderir. Console.WriteLine(Environment.ProcessorCount); //System klasörünün yolunu verir. Console.WriteLine(Environment.SystemDirectory); //Bilgisayarın ram boyutunu verir. Console.WriteLine(Environment.SystemPageSize); //Sistemin ne kadar milisaniye önce başladığını dönderir. Console.WriteLine(Environment.TickCount); //Kullanıcı domain adı dönderilir. Console.WriteLine(Environment.UserDomainName); //? Console.WriteLine(Environment.UserInteractive); //Bilgisayarda o anki kullanıcının kullanıcı adını dönderir. Console.WriteLine(Environment.UserName); //Bilgisayarda yüklü olan son .net framework versiyonu dönderilmektedir. Console.WriteLine(Environment.Version); //Fiziksel hafıza boyutu dönderilmektedir. Console.WriteLine(Environment.WorkingSet); //Windows dizinini yolunu döndürür Console.WriteLine(Environment.GetEnvironmentVariable("windir")); |
ExpandEnvironmentVariables
ExpandEnvironmentVariables adlı metod sayesinde string olarak içerisinde environment değerlerinide geçmiş olduğunuz stringleri environment’e karşılık gelen değer ile değiştiren bir metoddur örnek olarak alttaki koda ve çıktısına bakabilirsiniz.
1 2 | string cumle = "Sistem ana dizininiz %SystemRoot% ve bilgisayar adınız %COMPUTERNAME%."; Console.WriteLine(Environment.ExpandEnvironmentVariables(cumle)); |
Sonuç
Diğer bilgileri
- Environment sınıfı System namespace’i altında yer almaktadır
- Bazı sistem ve kullanıcı özelliklerine isterseniz Environment sınıfı altındaki property’ler ile veya GenEnvironmentVariable metoduyla ulaşabilirsiniz.
//?
Console.WriteLine(Environment.UserInteractive);
UserInteractive herhangi bir grafiksel gösterimin olup olmadığını denetler. Diyelim ki servisimiz IIS’de kurulu ve property false eşit olduğundan dolayı herhangi bir message box gibi bir şey gösterilmez.
Açıklama için teşekkür ederim.