#c_sharp
Мне нужно получить полную информацию по модулям оперативной памяти. Я пытался сделать
это через WMI:
ManagementObjectSearcher searcher12 =
new ManagementObjectSearcher("root\\CIMV2", "SELECT * FROM Win32_PhysicalMemory");
Console.WriteLine("------------- Win32_PhysicalMemory instance --------");
foreach (ManagementObject queryObj in searcher12.Get())
{
Console.WriteLine(
"BankLabel: {0} ;
Capacity: {1} Gb;
Speed: {2};
Manufacturer: {3};
Serial Number: {4}",
queryObj["BankLabel"],
Math.Round(System.Convert.ToDouble(queryObj["Capacity"]) / 1024 / 1024 /
1024, 2),
queryObj["Speed"],
queryObj["Manufacturer"],
queryObj["Name"]);
}
Но этого значения там попросту нет. Есть ли иные способы узнать эти данные?
Ответы
Ответ 1
var connection = new ConnectionOptions() { Impersonation = ImpersonationLevel.Impersonate }; var scope = new ManagementScope("\\root\\CIMV2", connection); var query = new ObjectQuery("SELECT * FROM Win32_PhysicalMemory"); scope.Connect(); var searcher = new ManagementObjectSearcher(scope, query); foreach (ManagementObject queryObj in searcher.Get()) { Console.WriteLine("____________________"); foreach (PropertyData data in queryObj.Properties) Console.WriteLine(data.Name + "\t" + data.Value); } Output: ____________________ BankLabel BANK 0 Capacity 4294967296 Caption Physical Memory CreationClassName Win32_PhysicalMemory DataWidth 64 Description Physical Memory DeviceLocator ChannelA-DIMM0 FormFactor 8 HotSwappable InstallDate InterleaveDataDepth 2 InterleavePosition 1 Manufacturer Kingston MemoryType 0 Model Name Physical Memory OtherIdentifyingInfo PartNumber 99U5402-052.A00LF PositionInRow PoweredOn Removable Replaceable SerialNumber 4E1ECEFF SKU Speed 1600 Status Tag Physical Memory 0 TotalWidth 64 TypeDetail 128 Version
Комментариев нет:
Отправить комментарий