Собрать системную информацию используя WinAPI функций - C#

Узнай цену своей работы

Формулировка задачи:

нужно собрать вот такую системную информацию системную информацию с помощью WinAPI функций Типы всех логических дисков Количество байт в секторе на каждом логическом диске Количество процессоров в системе Размер курсора Каталог Windows Качество цветопередачи (количество бит на цвет) То что у меня сейчас есть Количество байт в секторе на каждом логическом диске
Листинг программы
  1. while (i < drives.Length)
  2. {
  3. g= GetDiskFreeSpace(drives[i], out a, out b, out c, out d);
  4. if (g) { Console.WriteLine("Количество байт в секторе на диске {0}:" +' '+ b, drives[i]); Console.WriteLine("Размер свобоного дискового пространства на иске {0}:" +' '+ c * a * b, drives[i]); }
  5. else Console.WriteLine("Нет диска в дисководе {0}", drives[i]);
  6. i++;
  7. }
и размеры курсора
Листинг программы
  1. Console.WriteLine("Ширина курсора "+GetSystemMetrics(13)+" пикселя");
  2. Console.WriteLine("Высота курсора " + GetSystemMetrics(14) + " пикселя");
  3. Console.WriteLine();
но этим кускам когда предшествовало
Листинг программы
  1. [DllImport("kernel32.dll", SetLastError = true, CharSet = CharSet.Auto)]
  2. static extern bool GetDiskFreeSpace(string lpRootPathName,
  3. out uint lpSectorsPerCluster,
  4. out uint lpBytesPerSector,
  5. out uint lpNumberOfFreeClusters,
  6. out uint lpTotalNumberOfClusters);
  7. [DllImport("user32.dll", EntryPoint = ("GetSystemMetrics"))]
  8. public static extern int GetSystemMetrics(int nIndex);
  9. [DllImport("Advapi32.dll", CharSet = CharSet.Unicode)]
  10. static extern int GetUserName(string lpBuffer, ref int nSize);
  11. [DllImport("gdi32.dll")]
  12. static extern int GetDeviceCaps(IntPtr hdc, int nIndex);
  13. [DllImport("user32.dll")]
  14. static extern IntPtr GetDC(IntPtr hWnd);
  15. [DllImport("gdi32.dll")]
  16. static extern IntPtr CreateDC(string lpszDriver, string lpszDevice,
  17. string lpszOutput, IntPtr lpInitData);
что я вообще почти не понимаю. понимаю что что то извлекается из библиотек Dll. Помогите пожалуйста разобраться с этим заранее благодарен

Решение задачи: «Собрать системную информацию используя WinAPI функций»

textual
Листинг программы
  1. int GetSystemMetrics(int nIndex) {
  2.     // тут исполняемый код
  3. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 3.667 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы