Bir programın yürütülmesi sırasında Mono çalışma zamanı veya Microsoft çalışma zamanı kullanılarak yürütülüp yürütülmediğini öğrenmek istiyorum.Hangi .NET çalışma zamanının kullanıldığı tespit edilir (MS'ye karşı Mono)?
static bool IsMicrosoftCLR()
{
return RuntimeEnvironment.GetRuntimeDirectory().Contains("Microsoft");
}
Ancak bu çalışma zamanı yükleme klasöründe bağlı olup ve ben emin değilim: Şu anda bir MS CLR üzerinde olduğum olmadığını belirlemek için aşağıdaki kodu kullanıyorum
Bu tüm kurulumlarda çalışacaktır.
Geçerli çalışma zamanını kontrol etmenin daha iyi bir yolu var mı? Sadece aşağıdaki kodu çalıştırmak bu
bool IsRunningOnMono = (Type.GetType ("Mono.Runtime") != null);
İyi işaretçiler için teşekkürler. –
Sonucun kaydedilmesi (önbellekleme) yapmak isteyebilirsiniz, çünkü her seferinde pahalı olabileceğini düşünmek. –