CurrentDirectory Alanı
Açıklaması şöyle.
Şöyle yaparız.
Şöyle yaparsak cwd ve uygulama aynı dizindir.
ExpandEnvironmentVariables metodu
Değişken içeren dizinler açmak için kullanılır.
ApplicationData
Örnek
Şöyle yaparız.
Örnek
MyDocuments ile aynı dizini verir. Şöyle yaparız.
64 bit işletim sisteminde aşağıdaki çağrıları yaparsak
Şöyle yaparız.
Şöyle yaparız.
Sistemin açılışından beri geçen süreyi milisaniye olarak verir. int tpinden olduğu için belli bir süreden uzun açık kalan sistemlerde değer eksi olabilir. Aynı işi Python'da yapan Uptime kütüphanesi var.
Şöyle yaparız. Bu alanın hassasiyeti 10 - 16 milisaniye (genelde 15.6 milisaniye) olduğu için Stopwatch sınıfı varken kullanmanın bir anlamı yok.
Servis olup olmadığımızı anlamamızı sağlar.
Açıklaması şöyle.
By definition, if this process starts in the root directory of a local or network drive, the value of this property is the drive name followed by a trailing slash (for example, "C:\"). If this process starts in a subdirectory, the value of this property is the drive and subdirectory path, without a trailing slash (for example, "C:\mySubDirectory").
var directory = Path.Combine(Environment.CurrentDirectory, $@"foo");
Bu alan uygulamanın nereden çalıştırıldığını gösterir. Uygulamanın nerede olduğunu göstermez!Şöyle yaparsak cwd ve uygulama aynı dizindir.
> cd path/to/program
> mono program.exe
Şöyle yaparsak cwd ve uygulama farklı dizinlerdir.> mono /home/user/program/program.exe
Uygulamanın yerini öğrenmek için Assembly.CodeBase kullanılabilir.ExpandEnvironmentVariables metodu
Değişken içeren dizinler açmak için kullanılır.
var path = @"%userprofile%\Music\Bookmarks";
var filePath = Environment.ExpandEnvironmentVariables(path);
Exit metodu
Uygulamadan, servisten çıkmak için kullanılır. Genelde son çare olarak kullanılır.
Açıklaması şöyle
Bu metod özel dizinlere erişmek için kullanılır.Uygulamadan, servisten çıkmak için kullanılır. Genelde son çare olarak kullanılır.
System.Environment.Exit(0);
FailFast metodu Açıklaması şöyle
veImmediately terminates a process after writing a message to the Windows Application event log, and then includes the message in error reporting to Microsoft.
Şöyle yaparız.This method terminates a process without running any active try/finally blocks or finalizers.
Environment.FailFast("FailFast", e.Exception);
GetFolderPath metodu
ApplicationData
Örnek
string path=Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
Çıktı olarak şunu alırız.C:\Users\<UserName>\AppData\Roaming\SomeName
DesktopŞöyle yaparız.
string path = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
MyDocumentsÖrnek
string path = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)
PersonalMyDocuments ile aynı dizini verir. Şöyle yaparız.
string path = Environment.GetFolderPath (Environment.SpecialFolder.Personal);
ProgramFiles64 bit işletim sisteminde aşağıdaki çağrıları yaparsak
Environment.GetFolderPath(Environment.SpecialFolder.ProgramFilesX86);
Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles);
Çıktı olarak şunu görürüz.C:\Program Files (x86)
C:\Program Files
StartupŞöyle yaparız.
string path = Environment.GetFolderPath (Environment.SpecialFolder.Startup);
Çıktı olarak şunu görürüz.C:\Users\acelya\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
NewLine Alanı
Windows'ta "\r\n" ile aynıdır. Şöyle yaparız.Environment.NewLine
ProcessorCount AlanıŞöyle yaparız.
int numProcs = Environment.ProcessorCount;
TickCount AlanıSistemin açılışından beri geçen süreyi milisaniye olarak verir. int tpinden olduğu için belli bir süreden uzun açık kalan sistemlerde değer eksi olabilir. Aynı işi Python'da yapan Uptime kütüphanesi var.
Şöyle yaparız. Bu alanın hassasiyeti 10 - 16 milisaniye (genelde 15.6 milisaniye) olduğu için Stopwatch sınıfı varken kullanmanın bir anlamı yok.
int start = System.Environment.TickCount;
...
Console.WriteLine(System.Environment.TickCount-start);
UserInteractive AlanıServis olup olmadığımızı anlamamızı sağlar.
public static int Main(string[] args)
{
if (!Environment.UserInteractive)
{
// Startup as service.
}
else
{
// Startup as application
}
}
UserName AlanıSystem.Environment.Username
ile login olmuş o anki kullanıcının ismini alırız. Eğer servis içinden veya IIS içinden çağırırsak bu servisi çalıştıran hesabın ismini alırız.
Hiç yorum yok:
Yorum Gönder