maarek
سه شنبه 25 اسفند 1394, 08:26 صبح
سلام
یکی از قفل های ایرانی از کد زیر برای تشخیص محیط ماشین مجازی استفاده میکنه :
internal static bool Z64216988()
{
ManagementObjectSearcher searcher = new ManagementObjectSearcher("Select * from Win32_ComputerSystem");
string str2 = string.Empty;
string str = string.Empty;
foreach (ManagementObject obj2 in searcher.Get())
{
str2 = obj2["Manufacturer"].ToString().ToLower();
if (str2.Contains("microsoft corporation"))
{
if (obj2["Model"] == null)
{
return true;
}
if (!obj2["Model"].ToString().ToLower().Contains("surface"))
{
return true;
}
}
if (((str2.Contains("red hat") | str2.Contains("vmware")) | str2.Contains("virtual")) | str2.Contains("qemu"))
{
return true;
}
if (obj2["Model"] != null)
{
str = obj2["Model"].ToString().ToLower();
if (((str.Contains("kvm") | str.Contains("vmware")) | str.Contains("virtual")) | str.Contains("qemu"))
{
return true;
}
}
}
return false;
}
خب کد بالا متد های Manufacturer , Model را از کلاس Win32_ComputerSystem با استفاده از WQL پرس و جو میکنه که همانطور که در خروجی کد میبینید میشه محیط مجازی رو تشخیص داد.
139619
139618
لینک های مرتبط :
بحث در مورد (WQL(WMI Query Language (http://barnamenevis.org/showthread.php?131939-%D8%A8%D8%AD%D8%AB-%D8%AF%D8%B1-%D9%85%D9%88%D8%B1%D8%AF-%28WQL%28WMI-Query-Language)
WMI Code Creator v1.0
(https://www.microsoft.com/en-us/download/details.aspx?id=8572)اما سوالی که واسه خودم پیش امده اینکه چطور میشه جوابی که از اجرای query میگیره رو عوض کرد ؟ یا اینکه این مشخصات کجا ذخیره میشن ؟ ...
یکی از قفل های ایرانی از کد زیر برای تشخیص محیط ماشین مجازی استفاده میکنه :
internal static bool Z64216988()
{
ManagementObjectSearcher searcher = new ManagementObjectSearcher("Select * from Win32_ComputerSystem");
string str2 = string.Empty;
string str = string.Empty;
foreach (ManagementObject obj2 in searcher.Get())
{
str2 = obj2["Manufacturer"].ToString().ToLower();
if (str2.Contains("microsoft corporation"))
{
if (obj2["Model"] == null)
{
return true;
}
if (!obj2["Model"].ToString().ToLower().Contains("surface"))
{
return true;
}
}
if (((str2.Contains("red hat") | str2.Contains("vmware")) | str2.Contains("virtual")) | str2.Contains("qemu"))
{
return true;
}
if (obj2["Model"] != null)
{
str = obj2["Model"].ToString().ToLower();
if (((str.Contains("kvm") | str.Contains("vmware")) | str.Contains("virtual")) | str.Contains("qemu"))
{
return true;
}
}
}
return false;
}
خب کد بالا متد های Manufacturer , Model را از کلاس Win32_ComputerSystem با استفاده از WQL پرس و جو میکنه که همانطور که در خروجی کد میبینید میشه محیط مجازی رو تشخیص داد.
139619
139618
لینک های مرتبط :
بحث در مورد (WQL(WMI Query Language (http://barnamenevis.org/showthread.php?131939-%D8%A8%D8%AD%D8%AB-%D8%AF%D8%B1-%D9%85%D9%88%D8%B1%D8%AF-%28WQL%28WMI-Query-Language)
WMI Code Creator v1.0
(https://www.microsoft.com/en-us/download/details.aspx?id=8572)اما سوالی که واسه خودم پیش امده اینکه چطور میشه جوابی که از اجرای query میگیره رو عوض کرد ؟ یا اینکه این مشخصات کجا ذخیره میشن ؟ ...