ярлык для отображения видеокарты или общего оперативной памяти системы через реестр возможно? - PullRequest
0 голосов
/ 02 июня 2010

Привет всем, у меня есть этот замечательный код, который я люблю, который будет отображать тип модели процессора и скорость примерно так

RegistryKey Rkey = Registry.LocalMachine;
Rkey = Rkey.OpenSubKey("HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\0");
Labelproc.Text = (string)Rkey.GetValue("ProcessorNameString");

и мне было интересно, есть ли способ сделать это для типа видеокарты и общего объема установленной системной памяти (в отдельных ярлыках)

1 Ответ

0 голосов
/ 02 июня 2010

Вместо того, чтобы читать реестр, я бы посоветовал вам использовать WMI, в частности Win32_ComputerSystem, чтобы найти количество процессоров, и Win32_Processor, чтобы найти информацию о нем, а Win32_ComputerSystem.TotalPhysicalMemory даст ОЗУ. Я уверен, что есть какой-то способ поднять видеокарту (ы) (помните, что их может быть несколько).

Вот статья с некоторыми примерами для получения различных данных:

http://msdn.microsoft.com/en-us/library/aa394587%28VS.85%29.aspx

Примеры в VBScript, но он похож, я думаю, что код C # для получения оперативной памяти будет выглядеть примерно так:

ManagementObjectSearcher query = new ManagementObjectSearcher("SELECT * FROM Win32_ComputerSystem") ;
ManagementObjectCollection coll = query.Get();
foreach( ManagementObject mo in coll ) 
{
    Console.WriteLine(mo["totalphysicalmemory"].ToString());
}    
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...