Deoarece clasa WMI Win32_OperatingSystem include doar OSArchitecture în Windows Vista, am scris rapid o metodă care folosește registrul pentru a încerca să determine dacă sistemul actual este sau nu sistem de 32 sau 64 de biți.
private Boolean is64BitOperatingSystem()
{
RegistryKey localEnvironment = Registry.LocalMachine.OpenSubKey("SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Environment");
String processorArchitecture = (String) localEnvironment.GetValue("PROCESSOR_ARCHITECTURE");
if (processorArchitecture.Equals("x86")) {
return false;
}
else {
return true;
}
}
A fost foarte bine pentru noi până acum, dar nu știu cât de mult îmi place să mă uit prin registru. Este o practică destul de standard sau există o metodă mai bună?
Edit: Wow, that code looks a lot prettier in the preview. I'll consider linking to a pastebin or something, next time.