Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Опреление железа компа! [D7, WinXP]


vamp_avp ©   (2007-09-28 11:47:00) 

Уважаемые знатоки!
Помогите плиз,
как можно в делфи определить процессор память ну и так далее
если это вообще возможно
Заранее благодарен!!!


homm   (2007-10-02 13:23:00) [1]

> [16] vamp_avp   (02.10.07 12:58)
> сама программа
> пишите выложу исходники


Ее исходники и так практически целеком в [8].
Наяига после того, как тебе ответили еше раз то-же самое говорить?


vamp_avp   (2007-10-02 12:58:00) [2]

спасибо всем
что были за меня рады
помогали и подсказывали
я все сделал!
если кому интересна
сама программа
пишите выложу исходники


clickmaker   (2007-10-02 11:48:00) [3]


> [14] homm ©   (02.10.07 11:43)
> > общий объем винда
>
> Что?

наверно, это вес папки C:\Windows :)


homm   (2007-10-02 11:43:00) [4]

> общий объем винда

Что?


> вот такая вот у меня задача
Рад за тебя. Нам то что с того?


clickmaker   (2007-10-02 11:04:00) [5]


> если бы можно было бы монитор определить

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96E-E325-11CE-BFC1-08002BE10318}


vamp_avp   (2007-10-02 10:50:00) [6]

Привет всем!
смысл моей программы заключается в следующем:
в моем распоряжении куча компов работающих через домен
я сделал программку которая запускается каждый раз при входе в домен
она собирает статистику :
время дата IP имя клмпа имя пользователя мак адрес
потом потребовалось и я добавил полное доменное имя
теперь требуется что бы она и еще собирала статистику о компе
тип и частоту проца я уже понял как сделать
мне бы еще количество опер памяти
общий объем винда
хотелось бы определять видео
наличие сидирома
и было бы вообще классно
если бы можно было бы монитор определить
вот такая вот у меня задача
ЗАРАНЕЕ БЛАГОДАРЕН!


Anatoly Podgoretsky   (2007-10-01 19:38:00) [7]

> clickmaker  (01.10.2007 17:36:08)  [8]

Ну это нормально без видеокарты, вот только ненормально подобную программу запускать на таком компьютере.


vamp_avp   (2007-10-01 17:50:00) [8]

спасибо
приблизительно понял где копать!


homm   (2007-10-01 17:46:00) [9]

> [8] clickmaker ©   (01.10.07 17:36)
> > видекарта есть или нет
> хм...

может так?
function IsVideoCardPresent:Boolean;
begin
 Result := TRUE;
end;


clickmaker   (2007-10-01 17:36:00) [10]

> тип и частоту процессора
HKEY_LOCAL_MACHINE\HARDWARE\DESCRIPTION\System\CentralProcessor

> количество оперативной памяти
GlobalMemoryStatus()

> есть или нет сиром
GetLogicalDrives() / GetDriveType()

> объем жесткого диска
GetDiskFreeSpaceEx()

> видекарта есть или нет
хм...


homm   (2007-10-01 16:35:00) [11]

> [0] vamp_avp   (28.09.07 11:47)
> Уважаемые знатоки!

Сколько на кону? Какой счет?


vamp_avp   (2007-10-01 16:05:00) [12]

мне нужно
определить
тип и частоту процессора
количество оперативной памяти
есть или нет сиром
объем жесткого диска
видекарта есть или нет
звукавая карта есть или нет
и так далее
заранее благодарен!


Инс   (2007-10-01 13:53:00) [13]


> Обращайся на мыло
> andrew.gimmy@gmail.com

Спам-роботы прочтут это сообщение, запомнят и обратятся :)


Германн   (2007-10-01 01:02:00) [14]


> Farel ©   (30.09.07 15:46) [3]


> К сожалению весь код слишком большой!
> Обращайся на мыло
> andrew.gimmy@gmail.com
>

За столь наглый плагиат бьют канделябром по наглой морде!

Вот ссылка на первоисточник: http://home.earthlink.net/~akonshin/files/IdeSN.zip


Farel   (2007-09-30 15:46:00) [15]

Код для определения СЕРИЙНОГО номера винта
pas:

interface

//-------------------------------------------------------------
// Tries to extract the serial number from the first IDE disk that is found in the system.
// Returns an empty string if IDE disk is not found.
 function GetIdeSN : String;

//-------------------------------------------------------------
// Tries to extract the serial number from specified IDE disk.
//
// Parameters:
//   ControllerNumber - SCSI port number of the controller.
//   DriveNumber - Device index (0..4).
//
// Raises OSError exception in case of any error during this operation.
//
// Notes:
//  1. The parameter ControllerNumber is ignored on Windows 9x/ME platforms and should be 0.
//  2. This function CAN NOT extract SCSI disk serial number.
//
 function GetIdeDiskSerialNumber( ControllerNumber, DriveNumber : Integer ) : String;

//=============================================================
implementation

uses
 Windows,
 SysUtils; // only for Win32Platform, SysErrorMessage and class Exception

{$IFDEF VER150}
{$DEFINE VER140}
{$ENDIF}

{$IFNDEF VER140}
procedure RaiseLastOSError;
begin
 RaiseLastWin32Error;
end;
{$ENDIF}

//-------------------------------------------------------------
// Tries to extract the serial number from specified IDE disk.
//
// Parameters:
//   ControllerNumber - SCSI port number of the controller.
//   DriveNumber - SCSI port number of the controller.
// Notes:
//  1. The parameter ControllerNumber is ignored on Windows 9x/ME platforms and should be 0.
//  2. This function CAN NOT extract SCSI disk serial number.
//
function GetIdeDiskSerialNumber( ControllerNumber, DriveNumber : Integer ) : String;
type
 TSrbIoControl = packed record
   HeaderLength : ULONG;
   Signature    : Array[0..7] of Char;
   Timeout      : ULONG;
   ControlCode  : ULONG;
   ReturnCode   : ULONG;
   Length       : ULONG;
 end;
 SRB_IO_CONTROL = TSrbIoControl;
 PSrbIoControl = ^TSrbIoControl;

 TIDERegs = packed record
   bFeaturesReg     : Byte; // Used for specifying SMART "commands".
   bSectorCountReg  : Byte; // IDE sector count register
   bSectorNumberReg : Byte; // IDE sector number register
   bCylLowReg       : Byte; // IDE low order cylinder value
   bCylHighReg      : Byte; // IDE high order cylinder value
   bDriveHeadReg    : Byte; // IDE drive/head register
   bCommandReg      : Byte; // Actual IDE command.
   bReserved        : Byte; // reserved for future use.  Must be zero.

К сожалению весь код слишком большой!
Обращайся на мыло
andrew.gimmy@gmail.com


Инс   (2007-09-28 12:24:00) [16]

Смотря что имеется в виду под "и так далее", а вообще - WMI, правда не все производители железа поддерживают.


Вася Правильный   (2007-09-28 12:11:00) [17]

заюзай библу alllib с torry


Наверх

Титульная страница Поиск, карта сайта Написать письмо