Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Вывести информацию о системе

Delphi , ОС и Железо , Windows

Вывести информацию о системе

Оформил: DeeCo
Автор: http://www.swissdelphicenter.ch

{ 
  The SYSTEM_INFO structure contains information about the current computer 
  system. This includes the architecture and type of the processor, the number of 
  processors in the system, the page size, and other such information. 
}

 procedure TForm1.Button1Click(Sender: TObject);
 var
   SysInfo: TSystemInfo;
 begin
   GetSystemInfo(SysInfo);
   with ListBox1.Items, SysInfo do
   begin
     Add('ProcessorArchitecture:' + IntToStr(wProcessorArchitecture));
     Add(FloatToStr(dwPageSize) + ' Kb page size');
     Add(Format('Lowest memory address accessible to applications and DLL - %p',
       [lpMinimumApplicationAddress]));
     Add(Format('Highest memory address accessible to applications and DLL - %p',
       [lpMaximumApplicationAddress]));
     Add('OEMID:' + IntToStr(dwOemId));
     Add('ActiveProcessorMask:' + IntToStr(dwActiveProcessorMask));
     Add(IntToStr(dwNumberOfProcessors) + ' - number of processors');
     Add('ProcessorType:' + IntToStr(dwProcessorType));
     case wProcessorLevel of
       3: Add('Intel 80386 processor level');
       4: Add('Intel 80486 processor level');
       5: Add('Intel Pentium processor level');
     end;
     Add(FloatToStr(dwAllocationGranularity / 1024) +
       ' Kb - granularity with which virtual memory is allocated');
     Add('ProcessorRevision:' + IntToStr(wProcessorRevision));
   end;
 end;

Программный код на языке Delphi, используемый для получения информации о текущей компьютерной системе. Структура TSystemInfo содержит различные детали системы, такие как архитектура процессора, количество процессоров, размер страницы и т.д.

Процедура Button1Click вызывается при клике кнопки на форме. Она вызывает функцию GetSystemInfo, чтобы получить информацию о системе, а затем заполняет список с данными. Выводимые данные включают:

  • Архитектуру процессора
  • Размер страницы (в килобайтах)
  • Нижнюю адресу памяти, доступную приложениям и DLL
  • Высшую адресу памяти, доступную приложениям и DLL
  • ID OEM
  • Активный маска процессора
  • Количество процессоров
  • Тип процессора
  • Уровень процессора (с соответствующим описанием для уровней Intel 80386, 80486 или Pentium)
  • Гранулярность распределения памяти (в килобайтах)

Альтернативное решение использует более современный подход:

procedure TForm1.Button1Click(Sender: TObject);
var
  SysInfo: TSystemInfo;
begin
  GetSystemInfo(SysInfo);

  with ListBox1.Items do begin
    AddFmt('Processor Architecture: %s', [SysInfo.wProcessorArchitecture]);
    AddFmt('Page Size: %.0f Kb', [SysInfo.dwPageSize / 1024]);
    AddFmt('Lowest Memory Address: %p', [SysInfo.lpMinimumApplicationAddress]);
    AddFmt('Highest Memory Address: %p', [SysInfo.lpMaximumApplicationAddress]);
    AddFmt('OEM ID: %d', [SysInfo.dwOemId]);
    AddFmt('Active Processor Mask: %d', [SysInfo.dwActiveProcessorMask]);
    AddFmt('Number of Processors: %d', [SysInfo.dwNumberOfProcessors]);
    AddFmt('Processor Type: %d', [SysInfo.dwProcessorType]);
    case SysInfo.wProcessorLevel of
      3:
        Add('Intel 80386 processor level');
      4:
        Add('Intel 80486 processor level');
      5:
        Add('Intel Pentium processor level');
    end;
    AddFmt('Allocation Granularity: %.0f Kb', [SysInfo.dwAllocationGranularity / 1024]);
    AddFmt('Processor Revision: %d', [SysInfo.wProcessorRevision]);
  end;
end;

В этом коде используется метод AddFmt, чтобы форматировать и добавить элементы в список. Этот подход более компактен и легче для чтения, чем использовать несколько вызовов метода Add с конкатенацией.

Статья описывает как использовать функцию GetSystemInfo для получения информации о системе, включая архитектуру процессора, количество процессоров, размер страницы и другие параметры.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.


:: Главная :: Windows ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-12-22 20:14:06
2025-06-16 06:19:22/0.0060458183288574/0