home *** CD-ROM | disk | FTP | other *** search
/ Chip 2001 October / Chip_2001-10_cd1.bin / zkuste / delphi / kompon / d56 / MSYSINFO.ZIP / Demos / Console / SI_Console.dpr next >
Text File  |  2001-07-23  |  3KB  |  67 lines

  1. program SI_Console;
  2.  
  3. {$APPTYPE CONSOLE}
  4.  
  5. uses
  6.   Classes,
  7.   SysUtils,
  8.   MSI_Console,
  9.   MiTeC_Routines;
  10. var
  11.   SI: TMSI;
  12. begin
  13.   SI:=TMSI.Create([soMachine,soCPU,soOS,soDisplay,soMemory,soMedia,soNetwork,soPrinters]);
  14.   with SI do begin
  15.     Writeln(About);
  16.     writeln;
  17.     write('Gathering information...please wait...');
  18.     try
  19.       Refresh;
  20.       writeLn('OK');
  21.       writeln;
  22.       writeln(Format('Machine: %s (User: %s)',[Machine.Name, Machine.User]));
  23.       writeln(Format('System Up Time: %s',[formatseconds(Machine.SystemUpTime,true,false,False)]));
  24.       writeln(Format('CPU: %s %s - %d Mhz',[CPU.Vendor,
  25.                                             CPU.VendorID,
  26.                                             CPU.Frequency]));
  27.       writeln(Format('Memory: %d MB (%d KB free)',[Memory.PhysicalTotal div 1024 div 1024,Memory.PhysicalFree div 1024]));
  28.       writeln(Format('OS: %s [%d.%d.%d]',[OSVersion,
  29.                                           OS.MajorVersion,
  30.                                           OS.MinorVersion,
  31.                                           OS.BuildNumber]));
  32.       writeln(Format('Video: %s (%d x %d - %d bit)',[Display.Adapter,
  33.                                                      Display.HorzRes,
  34.                                                      Display.VertRes,
  35.                                                      Display.ColorDepth]));
  36.       if Media.Devices.Count>0 then begin
  37.         if Media.SoundCardIndex>-1 then
  38.           writeln(Format('Sound: %s',[Media.Devices[Media.SoundCardIndex]]))
  39.         else
  40.           writeln(Format('Sound: %s',[Media.Devices[0]]));
  41.       end;
  42.       if Network.Adapters.Count>0 then begin
  43.         if Network.CardAdapterIndex>-1 then
  44.           writeln(Format('Network: %s',
  45.                          [Network.Adapters[Network.CardAdapterIndex]]))
  46.         else
  47.           writeln(Format('Network: %s',
  48.                          [Network.Adapters[0]]));
  49.       end;
  50.  
  51.       writeln(Format('IP Address: %s',[Network.IPAddresses[0]]));
  52.       if Network.MACAddresses.Count>0 then
  53.         writeln(Format('MAC Address: %s',[Network.MACAddresses[0]]));
  54.       if Printers.Names.Count>0 then
  55.         writeln(Format('Printer: %s on %s',[Printers.Names[Printers.DefaultIndex],
  56.                                                       Printers.Ports[Printers.DefaultIndex]]));
  57.     except
  58.       on e: exception do begin
  59.         writeln(e.message);
  60.       end;
  61.     end;
  62.   end;
  63.   writeln;
  64.   writeln('press [enter] to exit...');
  65.   readln;
  66. end.
  67.