Помощь в написании студенческих работ
Антистрессовый сервис

Заключение. 
Разработка программного комплекса сбора информации из вычислительной системы и сохранения ее в общий файл (или базу данных) на сервере

РефератПомощь в написанииУзнать стоимостьмоей работы

В результате выполнения курсового проекта произведён сравнительный анализ программных средств Delphi и С++. И с помощью программной среды Borland delphi разработана программа по сбору информации о компьютере и его устройствах. В ходе выполнения данного курсового проекта я получил опыт программирования в среде borland delphi. Закрепил свои знания по дисциплине «системное программное обеспечение… Читать ещё >

Заключение. Разработка программного комплекса сбора информации из вычислительной системы и сохранения ее в общий файл (или базу данных) на сервере (реферат, курсовая, диплом, контрольная)

В результате выполнения курсового проекта произведён сравнительный анализ программных средств Delphi и С++. И с помощью программной среды Borland delphi разработана программа по сбору информации о компьютере и его устройствах.

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

Информация получена:

непосредственно из реестра системы;

при помощи специальных функций среды разработки;

при помощи функций WinAPI;

при помощи функций импортируемых специальных классов;

при помощи функций дополнительных подключенных внешних библиотек.

Программа реализована согласно задания к курсовому проекту. Протестирована на двух машинах с 64-х и с 32-х битными системами Windows 10 и Windows 7 соответственно.

В ходе выполнения данного курсового проекта я получил опыт программирования в среде borland delphi. Закрепил свои знания по дисциплине «системное программное обеспечение».

Список использованных источников

Delphi. Собираем информацию о компе [Электронный ресурс] / Режим доступа: http://www.vr-online.ru/content/delphi-sobiraem-informaciju-o-kompe-2999. Дата доступа: 01.11.2015.

Работа с некоторыми Win API функциями (информация о системе) [Электронный ресурс] / Режим доступа: http://www.realcoding.net/articles/rabota-s-nekotorymi-win-api-funktsiyami-informatsiya-o-sisteme.html Дата доступа: 03.11.2015.

Рецепты WMI: сбор сведений об аппаратной конфигурации компьютера [Электронный ресурс] / Режим доступа: http://www.script-coding.com/WMI_HardWare.html. Дата доступа: 04.11.2015.

Колисниченко, Д. Н. Секреты, настройка и оптимизация реестра Windows 7. Спб: БХВ-Петербург, 2010.

Куприянова, А. В. Реестр Windows XP. Настройки, трюки, секреты, 2006.

Хонейкатт, Д. Реестр Microsoft Windows XP. Руководство профессионала, 2003.

Фараонов, В. Система программирования Delphi 7, 2005 г.

Александров, А. Microsoft Windows 2000 Professional, 2003.

Кокорев, О. Microsoft Windows XP. Home Edition, 2006 г.

Горман, В.Н. Delphi 7, 2005.

Приложение А Код программы.

unit UnitMain;

interface.

uses.

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,.

Dialogs, StdCtrls, Buttons, Registry, IdBaseComponent, IdComponent,.

IdUDPBase, IdUDPServer, IdTrivialFTPServer, IdTCPServer, IdFTPServer,.

IdTCPConnection, IdTCPClient, IdFTP, ComCtrls, Mask;

{$EXTERNALSYM NetUserEnum}.

function NetUserEnum (servername: LPWSTR;

level,.

filter: DWORD;

bufptr: Pointer;

prefmaxlen: DWORD;

entriesread,.

totalentries,.

resume_handle: LPDWORD): DWORD; stdcall;

external 'NetApi32.dll' Name 'NetUserEnum';

function NetApiBufferFree (Buffer: Pointer {LPVOID}): DWORD; stdcall;

external 'NetApi32.dll' Name 'NetApiBufferFree';

function NetUserGetInfo (ServerName, UserName: PWideChar; Level: DWORD; var Buffer: Pointer): DWORD; stdcall; external 'netapi32.dll' name 'NetUserGetInfo';

//function NetApiBufferFree (Buffer: pointer): DWORD; stdcall; external 'netapi32.dll' name 'NetApiBufferFree';

function NetWkstaUserGetInfo (ServerName: PWideChar; Level: DWORD; var Buffer: Pointer): Longint; stdcall; external 'netapi32.dll' name 'NetWkstaUserGetInfo';

type.

MAnsiChar = Array [0.1000] of AnsiChar;

TForm1 = class (TForm).

BInfo: TBitBtn;

Memo1: TMemo;

IdFTP1: TIdFTP;

stat: TStatusBar;

GroupBox1: TGroupBox;

BSend: TBitBtn;

Label1: TLabel;

EditIP: TMaskEdit;

Label2: TLabel;

EditLog: TEdit;

EditPas: TEdit;

Label3: TLabel;

EditPort: TEdit;

Label4: TLabel;

Label5: TLabel;

EditDir: TEdit;

BitBtn1: TBitBtn;

procedure BInfoClick (Sender: TObject);

// о ЦП.

Procedure GetProcessorInfo;

procedure GetProcessorInfoOne (Var MyReg: TRegistry; num: String);

// о BIOS.

procedure GetBIOSInfo;

// о разделах HDD.

procedure GetLogicalHDD;

// о клавиатуре.

procedure GetKeyboard;

// о материнской плате.

procedure GetMotherBoard;

// о мышке.

procedure GetMouse;

// о мониторе.

procedure GetMonitor;

// о сетевых адаптерах.

procedure GetNet;

// о запущенных процессах.

procedure GetProc;

// О времени работы системы.

Procedure GetTimeSys;

// о пользователях.

Procedure GetLocalUserList;

procedure BSendClick (Sender: TObject);

private.

{ Private declarations }.

public.

{ Public declarations }.

end;

var.

Form1: TForm1;

implementation.

{$R *.dfm}.

Uses ActiveX, WbemScripting_TLB, Psapi, tlhelp32, DateUtils,.

ComObj;

// ————————————————————————;

// Сбор и вывод информации о процессоре.

// ————————————————————————;

procedure TForm1. GetProcessorInfoOne (Var MyReg: TRegistry; num: String);

Begin.

Memo1.Lines.Append ('Процессор '+num+': ');

Memo1.Lines.Append (''+#9+'производитель: '+#9+MyReg.ReadString ('VendorIdentifier'));

Memo1.Lines.Append (''+#9+'семейство: '+#9+MyReg.ReadString ('Identifier'));

End;

Procedure TForm1. GetProcessorInfo;

var.

MyReg: TRegistry;

RegPath: string;

i:Integer;

q1,Boards, q3, tt:variant;

Service: ISWbemServices;

ObjectSet: ISWbemObjectSet;

SObject: ISWbemObject;

PropSet: ISWbemPropertySet;

SProp: ISWbemProperty;

PropEnum, Enum: IEnumVariant;

TempObj, PropVal: OleVariant;

Value: Cardinal;

LI: TListItem;

vt: TVarType;

SWbemLocator:TSWbemLocator;

s:String;

kol, id: Integer;

begin.

Memo1.Lines.Append ('');

Memo1.Lines.Append ('——-ЦП———');

MyReg:=TRegistry.Create;

MyReg.Rootkey:=HKEY_LOCAL_MACHINE;

RegPath:='HARDWAREDESCRIPTIONSystemCentralProcessor';

if MyReg. Openkey (RegPath, false) and (not MyReg. HasSubKeys).

Then GetProcessorInfoOne (MyReg,'').

Else.

Begin.

i:=0;

Repeat.

RegPath:='HARDWAREDESCRIPTIONSystemCentralProcessor'+IntToStr (i);

if not MyReg. Openkey (RegPath, false) then break;

GetProcessorInfoOne (MyReg, IntToStr (i));

i:=i+1;

if i>5 then break;

Until False;

End;

Memo1.Lines.Append ('');

SWbemLocator:= TSWbemLocator. Create (Nil);

try.

SWbemLocator:= TSWbemLocator. Create (Self);

Service:= SWbemLocator. ConnectServer ('.', 'rootCIMV2', '', '', '', '', 0, nil);

SObject:= Service. Get ('Win32_Processor', wbemFlagUseAmendedQualifiers, nil);

ObjectSet:= SObject. Instances_(0, nil);

Enum:= (ObjectSet._NewEnum) as IEnumVariant;

Enum.Next (1, TempObj, Value);

SObject:= IUnknown (TempObj) as SWBemObject;

PropSet:= SObject. Properties_;

PropEnum:= (PropSet._NewEnum) as IEnumVariant;

while (PropEnum.Next (1, TempObj, Value) = S_OK) do.

begin.

SProp:= IUnknown (TempObj) as SWBemProperty;

//LI:= LVProp.Items.Add;

s:=SProp.Name+': ';

if not SProp. IsArray then begin.

PropVal:= SProp. Get_Value;

s:=s+VarToStr (PropVal);

end.

else begin.

SProp.GetTypeInfoCount (kol);

for i:=1 to kol do.

Begin.

SProp.GetTypeInfo (i, id, tt);

s:=s+VartoStr (id)+': '+VarToStr (tt);

end;

end;

memo1.Lines.Append (s);

end;

finally.

SWbemLocator.Free;

end;

end;

// ————————————————————————;

// Сбор и вывод информации о BIOS.

// ————————————————————————;

//следующий метод получает многострочные значения из реестра.

//и преобразует их в TStringlist.

function ReadMultirowKey (reg: TRegistry; Key: string): TStrings;

const bufsize = 100;

var.

i: integer;

s1: string;

sl: TStringList;

bin: array[1.bufsize] of char;

begin.

try.

result:= nil;

sl:= nil;

sl:= TStringList. Create;

if not Assigned (reg) then.

raise Exception. Create ('TRegistry object not assigned.');

FillChar (bin, bufsize,#0);

reg.ReadBinaryData (Key, bin, bufsize);

i:= 1;

s1:= '';

while i < bufsize do.

begin.

if ord (bin[i]) >= 32 then.

s1:= s1 + bin[i].

else.

begin.

if Length (s1) > 0 then.

begin.

sl.Add (s1);

s1:= '';

end;

end;

inc (i);

end;

result:= sl;

except.

sl.Free;

raise;

end;

end;

procedure TForm1. GetBIOSInfo;

var.

RegPath: string;

MyReg: TRegistry;

MyList: TStrings;

i:Integer;

q1,Boards, q3, tt:variant;

Service: ISWbemServices;

ObjectSet: ISWbemObjectSet;

SObject: ISWbemObject;

PropSet: ISWbemPropertySet;

SProp: ISWbemProperty;

PropEnum, Enum: IEnumVariant;

TempObj, PropVal: OleVariant;

Value: Cardinal;

LI: TListItem;

vt: TVarType;

SWbemLocator:TSWbemLocator;

s:String;

kol, id: Integer;

begin.

MyReg:=TRegistry.Create;

MyReg.Rootkey:=HKEY_LOCAL_MACHINE;

RegPath:='HARDWAREDESCRIPTIONSystem';

MyList:=nil;

try.

MyReg.Openkey (RegPath, false);

Memo1.Lines.Append ('');

Memo1.Lines.Append ('——-BIOS———');

Memo1.Lines.Append ('Системная дата BIOS: '+MyReg.ReadString ('SystemBiosDate'));

MyList:=ReadMultirowKey (MyReg,'SystemBiosVersion');

Memo1.Lines.Append ('Версия BIOS: '+MyList.Text);

except.

Memo1.Lines.Append ('Ошибка доступа к системному реестру! Не могу прочитать данные');

end;

MyReg.Free;

if Assigned (MyList) then MyList. Free;

Memo1.Lines.Append ('');

SWbemLocator:= TSWbemLocator. Create (Nil);

try.

SWbemLocator:= TSWbemLocator. Create (Self);

Service:= SWbemLocator. ConnectServer ('.', 'rootCIMV2', '', '', '', '', 0, nil);

SObject:= Service. Get ('Win32_BIOS', wbemFlagUseAmendedQualifiers, nil);

ObjectSet:= SObject. Instances_(0, nil);

Enum:= (ObjectSet._NewEnum) as IEnumVariant;

Enum.Next (1, TempObj, Value);

SObject:= IUnknown (TempObj) as SWBemObject;

PropSet:= SObject. Properties_;

PropEnum:= (PropSet._NewEnum) as IEnumVariant;

while (PropEnum.Next (1, TempObj, Value) = S_OK) do.

begin.

SProp:= IUnknown (TempObj) as SWBemProperty;

//LI:= LVProp.Items.Add;

s:=SProp.Name+': ';

if not SProp. IsArray then begin.

PropVal:= SProp. Get_Value;

s:=s+VarToStr (PropVal);

end.

else begin.

SProp.GetTypeInfoCount (kol);

for i:=1 to kol do.

Begin.

SProp.GetTypeInfo (i, id, tt);

s:=s+VartoStr (id)+': '+VarToStr (tt);

end;

end;

memo1.Lines.Append (s);

end;

finally.

SWbemLocator.Free;

end;

end.

// ————————————————————————;

// Сбор и вывод информации о HDD.

// ————————————————————————;

Procedure ToPAnsiChar (S:AnsiString; Var M: MAnsiChar);

Var i: Integer;

Begin.

if not (s='') Then Begin.

For i:=1 to Length (s) do M [i-1]: =s[i];

i:=Length (s);

if i>0 Then M[i]: =#0;

End.

else Begin.

M[0]: =#0;

End;

End;

Function GetPAnsiChar (S:AnsiString): MAnsiChar;

Var M: MAnsiChar;

Begin.

ToPAnsiChar (S, M);

Result:=M;

End;

procedure TForm1. GetLogicalHDD;

Var.

n:Integer;

dd:string;

dr:DWORD;

i:Integer;

GetVolumeInformationFlag:BOOL;

VolumeNameBuffer:MAnsiChar;

FileSystemNameBuffer:MAnsiChar;

VolumeSerialNumber: DWORD;

MaximumComponentLength:Cardinal;

mas:MAnsiChar;

FileSystemFlags:Cardinal;

d:INteger;

q1,Boards, q3, tt:variant;

Service: ISWbemServices;

ObjectSet: ISWbemObjectSet;

SObject: ISWbemObject;

PropSet: ISWbemPropertySet;

SProp: ISWbemProperty;

PropEnum, Enum: IEnumVariant;

TempObj, PropVal: OleVariant;

Value: Cardinal;

LI: TListItem;

vt: TVarType;

SWbemLocator:TSWbemLocator;

s:String;

kol, id: Integer;

Begin.

Memo1.Lines.Append ('');

Memo1.Lines.Append ('——-HDD———');

dr:= GetLogicalDrives ();

for i:=0 to 25 do.

Begin.

n:=dr mod 2;

if n=1 Then.

Begin.

dd:='';

dd:=dd+chr (65+i);

dd:=dd+':';

dd:=dd+'';

Memo1.Lines.Append ('Доступно: '+dd);

ToPAnsiCHar (dd, mas);

d:= GetDriveType (mas);

if (d = DRIVE_UNKNOWN) Then Memo1.Lines.Append ('Тип устройства: не известно');

if (d = DRIVE_NO_ROOT_DIR) Then Memo1.Lines.Append ('Тип устройства: DRIVE NO ROOT DIR');

if (d = DRIVE_REMOVABLE) Then Memo1.Lines.Append ('Тип устройства: сменный');

if (d = DRIVE_FIXED) Then Memo1.Lines.Append ('Тип устройства: жесткий диск');

if (d = DRIVE_REMOTE) Then Memo1.Lines.Append ('Тип устройства: удаленный');

if (d = DRIVE_CDROM) Then Memo1.Lines.Append ('Тип устройства: CD-ROM');

if (d = DRIVE_RAMDISK) Then Memo1.Lines.Append ('Тип устройства: флэшка');

GetVolumeInformationFlag:=GetVolumeInformationA (.

mas,.

VolumeNameBuffer,.

100,.

Addr (VolumeSerialNumber),.

MaximumComponentLength,.

FileSystemFlags,.

FileSystemNameBuffer,.

);

if GetVolumeInformationFlag Then Begin.

Memo1.Lines.Append ('Метка тома: ' + VolumeNameBuffer);

Memo1.Lines.Append ('Серийный номер: '+ IntToStr (VolumeSerialNumber));

Memo1.Lines.Append ('Файловая система: ' + FileSystemNameBuffer);

Memo1.Lines.Append ('');

End.

else Memo1.Lines.Append ('не известно');

End;

dr:=dr div 2;

End;

Memo1.Lines.Append ('');

SWbemLocator:= TSWbemLocator. Create (Nil);

try.

SWbemLocator:= TSWbemLocator. Create (Self);

Service:= SWbemLocator. ConnectServer ('.', 'rootCIMV2', '', '', '', '', 0, nil);

SObject:= Service. Get ('Win32_DiskDrive', wbemFlagUseAmendedQualifiers, nil);

ObjectSet:= SObject. Instances_(0, nil);

Enum:= (ObjectSet._NewEnum) as IEnumVariant;

Enum.Next (1, TempObj, Value);

SObject:= IUnknown (TempObj) as SWBemObject;

PropSet:= SObject. Properties_;

PropEnum:= (PropSet._NewEnum) as IEnumVariant;

while (PropEnum.Next (1, TempObj, Value) = S_OK) do.

begin.

SProp:= IUnknown (TempObj) as SWBemProperty;

//LI:= LVProp.Items.Add;

s:=SProp.Name+': ';

if not SProp. IsArray then begin.

PropVal:= SProp. Get_Value;

s:=s+VarToStr (PropVal);

end.

else begin.

SProp.GetTypeInfoCount (kol);

for i:=1 to kol do.

Begin.

SProp.GetTypeInfo (i, id, tt);

s:=s+VartoStr (id)+': '+VarToStr (tt);

end;

end;

memo1.Lines.Append (s);

end;

finally.

SWbemLocator.Free;

end;

End;

// ————————————————————————;

// Сбор и вывод информации о клавиатуре.

// ————————————————————————;

function GetKeyboardCount: integer;

var.

FSWbemLocator: OLEVariant;

FWMIService: OLEVariant;

FWbemObjectSet: OLEVariant;

FWbemObject: OLEVariant;

oEnum: IEnumvariant;

iValue: LongWord;

begin;

Result:=0;

FSWbemLocator:= CreateOleObject ('WbemScripting.SWbemLocator');

FWMIService := FSWbemLocator. ConnectServer ('localhost', 'rootCIMV2', '', '');

FWbemObjectSet:= FWMIService. ExecQuery ('SELECT DeviceID FROM Win32_Keyboard','WQL', $ 20);

oEnum := IUnknown (FWbemObjectSet._NewEnum) as IEnumVariant;

while oEnum. Next (1, FWbemObject, iValue) = 0 do.

begin.

Inc (Result);

FWbemObject:=Unassigned;

end;

end;

procedure TForm1. GetKeyboard;

var q1, Boards, q3, tt:variant;

Service: ISWbemServices;

ObjectSet: ISWbemObjectSet;

SObject: ISWbemObject;

PropSet: ISWbemPropertySet;

SProp: ISWbemProperty;

PropEnum, Enum: IEnumVariant;

TempObj, PropVal: OleVariant;

Value: Cardinal;

LI: TListItem;

vt: TVarType;

SWbemLocator:TSWbemLocator;

s:String;

i:Integer;

kol, id: Integer;

begin.

Memo1.Lines.Append ('');

Memo1.Lines.Append ('——-Клавиатура———');

try.

CoInitialize (nil);

try.

Memo1.Lines.Append (Format ('Keyboards %d', [GetKeyboardCount]));

finally.

CoUninitialize;

end;

except.

on E: EOleException do.

Memo1.Lines.Append (Format ('EOleException %s %x', [E.Message, E. ErrorCode]));

on E: Exception do.

Memo1.Lines.Append (E.Classname+':'+E.Message);

end;

SWbemLocator:= TSWbemLocator. Create (Nil);

try.

SWbemLocator:= TSWbemLocator. Create (Self);

Service:= SWbemLocator. ConnectServer ('.', 'rootCIMV2', '', '', '', '', 0, nil);

SObject:= Service. Get ('Win32_Keyboard', wbemFlagUseAmendedQualifiers, nil);

ObjectSet:= SObject. Instances_(0, nil);

Enum:= (ObjectSet._NewEnum) as IEnumVariant;

Enum.Next (1, TempObj, Value);

SObject:= IUnknown (TempObj) as SWBemObject;

PropSet:= SObject. Properties_;

PropEnum:= (PropSet._NewEnum) as IEnumVariant;

while (PropEnum.Next (1, TempObj, Value) = S_OK) do.

begin.

SProp:= IUnknown (TempObj) as SWBemProperty;

//LI:= LVProp.Items.Add;

s:=SProp.Name+': ';

if not SProp. IsArray then begin.

PropVal:= SProp. Get_Value;

s:=s+VarToStr (PropVal);

end.

else begin.

SProp.GetTypeInfoCount (kol);

for i:=1 to kol do.

Begin.

SProp.GetTypeInfo (i, id, tt);

s:=s+VartoStr (id)+': '+VarToStr (tt);

end;

end;

memo1.Lines.Append (s);

end;

finally.

SWbemLocator.Free;

end;

End;

// ————————————————————————;

// Сбор и вывод информации о материнской плате.

// ————————————————————————-;

procedure TForm1. GetMotherBoard;

var q1, Boards, q3, tt:variant;

Service: ISWbemServices;

ObjectSet: ISWbemObjectSet;

SObject: ISWbemObject;

PropSet: ISWbemPropertySet;

SProp: ISWbemProperty;

PropEnum, Enum: IEnumVariant;

TempObj, PropVal: OleVariant;

Value: Cardinal;

LI: TListItem;

vt: TVarType;

SWbemLocator:TSWbemLocator;

s:String;

i:Integer;

kol, id: Integer;

begin.

Memo1.Lines.Append ('');

Memo1.Lines.Append ('——-О материнской плате———');

//LVProp.Items.Clear;

SWbemLocator:= TSWbemLocator. Create (Nil);

try.

SWbemLocator:= TSWbemLocator. Create (Self);

Service:= SWbemLocator. ConnectServer ('.', 'rootCIMV2', '', '', '', '', 0, nil);

SObject:= Service. Get ('Win32_BaseBoard', wbemFlagUseAmendedQualifiers, nil);

ObjectSet:= SObject. Instances_(0, nil);

Enum:= (ObjectSet._NewEnum) as IEnumVariant;

Enum.Next (1, TempObj, Value);

SObject:= IUnknown (TempObj) as SWBemObject;

PropSet:= SObject. Properties_;

PropEnum:= (PropSet._NewEnum) as IEnumVariant;

while (PropEnum.Next (1, TempObj, Value) = S_OK) do.

begin.

SProp:= IUnknown (TempObj) as SWBemProperty;

//LI:= LVProp.Items.Add;

s:=SProp.Name+': ';

if not SProp. IsArray then begin.

PropVal:= SProp. Get_Value;

s:=s+VarToStr (PropVal);

end.

else begin.

SProp.GetTypeInfoCount (kol);

for i:=1 to kol do.

Begin.

SProp.GetTypeInfo (i, id, tt);

s:=s+VartoStr (id)+': '+VarToStr (tt);

end;

end;

memo1.Lines.Append (s);

end;

finally.

SWbemLocator.Free;

end;

end;

procedure TForm1. GetMouse;

var q1, Boards, q3, tt:variant;

Service: ISWbemServices;

ObjectSet: ISWbemObjectSet;

SObject: ISWbemObject;

PropSet: ISWbemPropertySet;

SProp: ISWbemProperty;

PropEnum, Enum: IEnumVariant;

TempObj, PropVal: OleVariant;

Value: Cardinal;

LI: TListItem;

vt: TVarType;

SWbemLocator:TSWbemLocator;

s:String;

i:Integer;

kol, id: Integer;

begin.

Memo1.Lines.Append ('');

Memo1.Lines.Append ('——-О мышке———');

//LVProp.Items.Clear;

SWbemLocator:= TSWbemLocator. Create (Nil);

try.

SWbemLocator:= TSWbemLocator. Create (Self);

Service:= SWbemLocator. ConnectServer ('.', 'rootCIMV2', '', '', '', '', 0, nil);

SObject:= Service. Get ('Win32_PointingDevice', wbemFlagUseAmendedQualifiers, nil);

ObjectSet:= SObject. Instances_(0, nil);

Enum:= (ObjectSet._NewEnum) as IEnumVariant;

Enum.Next (1, TempObj, Value);

SObject:= IUnknown (TempObj) as SWBemObject;

PropSet:= SObject. Properties_;

PropEnum:= (PropSet._NewEnum) as IEnumVariant;

while (PropEnum.Next (1, TempObj, Value) = S_OK) do.

begin.

SProp:= IUnknown (TempObj) as SWBemProperty;

//LI:= LVProp.Items.Add;

s:=SProp.Name+': ';

if not SProp. IsArray then begin.

PropVal:= SProp. Get_Value;

s:=s+VarToStr (PropVal);

end.

else begin.

SProp.GetTypeInfoCount (kol);

for i:=1 to kol do.

Begin.

SProp.GetTypeInfo (i, id, tt);

s:=s+VartoStr (id)+': '+VarToStr (tt);

end;

end;

memo1.Lines.Append (s);

end;

finally.

SWbemLocator.Free;

end;

end;

procedure TForm1. GetMonitor;

var q1, Boards, q3, tt:variant;

Service: ISWbemServices;

ObjectSet: ISWbemObjectSet;

SObject: ISWbemObject;

PropSet: ISWbemPropertySet;

SProp: ISWbemProperty;

PropEnum, Enum: IEnumVariant;

TempObj, PropVal: OleVariant;

Value: Cardinal;

LI: TListItem;

vt: TVarType;

SWbemLocator:TSWbemLocator;

s:String;

i:Integer;

kol, id: Integer;

begin.

Memo1.Lines.Append ('');

Memo1.Lines.Append ('——-О мониторе———');

//LVProp.Items.Clear;

SWbemLocator:= TSWbemLocator. Create (Nil);

try.

SWbemLocator:= TSWbemLocator. Create (Self);

Service:= SWbemLocator. ConnectServer ('.', 'rootCIMV2', '', '', '', '', 0, nil);

SObject:= Service. Get ('Win32_DesktopMonitor', wbemFlagUseAmendedQualifiers, nil);

ObjectSet:= SObject. Instances_(0, nil);

Enum:= (ObjectSet._NewEnum) as IEnumVariant;

Enum.Next (1, TempObj, Value);

SObject:= IUnknown (TempObj) as SWBemObject;

PropSet:= SObject. Properties_;

PropEnum:= (PropSet._NewEnum) as IEnumVariant;

while (PropEnum.Next (1, TempObj, Value) = S_OK) do.

begin.

SProp:= IUnknown (TempObj) as SWBemProperty;

//LI:= LVProp.Items.Add;

s:=SProp.Name+': ';

if not SProp. IsArray then begin.

PropVal:= SProp. Get_Value;

s:=s+VarToStr (PropVal);

end.

else begin.

SProp.GetTypeInfoCount (kol);

for i:=1 to kol do.

Begin.

SProp.GetTypeInfo (i, id, tt);

s:=s+VartoStr (id)+': '+VarToStr (tt);

end;

end;

memo1.Lines.Append (s);

end;

finally.

SWbemLocator.Free;

end;

end;

procedure TForm1. GetNet;

var q1, Boards, q3, tt:variant;

Service: ISWbemServices;

ObjectSet: ISWbemObjectSet;

SObject: ISWbemObject;

PropSet: ISWbemPropertySet;

SProp: ISWbemProperty;

PropEnum, Enum: IEnumVariant;

TempObj, PropVal: OleVariant;

Value: Cardinal;

LI: TListItem;

vt: TVarType;

SWbemLocator:TSWbemLocator;

s:String;

i:Integer;

kol, id: Integer;

begin.

Memo1.Lines.Append ('');

Memo1.Lines.Append ('——-О сетевых адаптерах———');

//LVProp.Items.Clear;

SWbemLocator:= TSWbemLocator. Create (Nil);

try.

SWbemLocator:= TSWbemLocator. Create (Self);

Service:= SWbemLocator. ConnectServer ('.', 'rootCIMV2', '', '', '', '', 0, nil);

SObject:= Service. Get ('Win32_NetworkAdapter', wbemFlagUseAmendedQualifiers, nil);

ObjectSet:= SObject. Instances_(0, nil);

Enum:= (ObjectSet._NewEnum) as IEnumVariant;

Enum.Next (1, TempObj, Value);

SObject:= IUnknown (TempObj) as SWBemObject;

PropSet:= SObject. Properties_;

PropEnum:= (PropSet._NewEnum) as IEnumVariant;

while (PropEnum.Next (1, TempObj, Value) = S_OK) do.

begin.

SProp:= IUnknown (TempObj) as SWBemProperty;

//LI:= LVProp.Items.Add;

s:=SProp.Name+': ';

if not SProp. IsArray then begin.

PropVal:= SProp. Get_Value;

s:=s+VarToStr (PropVal);

end.

else begin.

SProp.GetTypeInfoCount (kol);

for i:=1 to kol do.

Begin.

SProp.GetTypeInfo (i, id, tt);

s:=s+VartoStr (id)+': '+VarToStr (tt);

end;

end;

memo1.Lines.Append (s);

end;

finally.

SWbemLocator.Free;

end;

end;

// ———————————————————————-;

// —————————— О запущенных процессах.

// ———————————————————————-;

procedure CreateWin9xProcessList (List: TstringList);

var.

hSnapShot: THandle;

ProcInfo: TProcessEntry32;

begin.

if List = nil then Exit;

hSnapShot:= CreateToolHelp32Snapshot (TH32CS_SNAPPROCESS, 0);

if (hSnapShot THandle (-1)) then.

begin.

ProcInfo.dwSize:= SizeOf (ProcInfo);

if (Process32First (hSnapshot, ProcInfo)) then.

begin.

List.Add (ProcInfo.szExeFile);

while (Process32Next (hSnapShot, ProcInfo)) do.

List.Add (ProcInfo.szExeFile);

end;

CloseHandle (hSnapShot);

end;

end;

procedure CreateWinNTProcessList (List: TstringList);

var.

PIDArray: array [0.1023] of DWORD;

cb: DWORD;

I: Integer;

ProcCount: Integer;

hMod: HMODULE;

hProcess: THandle;

ModuleName: array [0.300] of Char;

begin.

if List = nil then Exit;

EnumProcesses (@PIDArray, SizeOf (PIDArray), cb);

ProcCount:= cb div SizeOf (DWORD);

for I:= 0 to ProcCount — 1 do.

begin.

hProcess:= OpenProcess (PROCESS_QUERY_INFORMATION or.

PROCESS_VM_READ,.

False,.

PIDArray[I]);

if (hProcess 0) then.

begin.

EnumProcessModules (hProcess, @hMod, SizeOf (hMod), cb);

GetModuleFilenameEx (hProcess, hMod, ModuleName, SizeOf (ModuleName));

List.Add (ModuleName);

CloseHandle (hProcess);

end;

end;

end;

procedure GetProcessList (var List: TstringList);

var.

ovi: TOSVersionInfo;

begin.

if List = nil then Exit;

ovi.dwOSVersionInfoSize:= SizeOf (TOSVersionInfo);

GetVersionEx (ovi);

case ovi. dwPlatformId of.

VER_PLATFORM_WIN32_WINDOWS: CreateWin9xProcessList (List);

VER_PLATFORM_WIN32_NT: CreateWinNTProcessList (List);

end.

end;

procedure TForm1. GetProc;

var.

i: Integer;

MyProcList: TstringList;

begin.

Memo1.Lines.Append ('');

Memo1.Lines.Append ('——-О запущенных проссах———');

MyProcList:= TStringList. Create;

try.

GetProcessList (MyProcList);

if MyProcList = nil then Exit;

for i:= 1 to MyProcList. Count — 1 do.

Memo1.Lines.Append (MyProcList.Strings[i]);

finally.

MyProcList.Free;

end;

end;

// ————————- Время работы системы.

// ——————————————————————;

type.

SYSTEM_TIME_OF_DAY_INFORMATION = record.

BootTime: LARGE_INTEGER;

CurrentTime: LARGE_INTEGER;

TimeZoneBias: LARGE_INTEGER;

CurrentTimeZoneId: ULONG;

end;

PSYSTEM_TIME_OF_DAY_INFORMATION = ^SYSTEM_TIME_OF_DAY_INFORMATION;

NTSTATUS = DWORD;

const.

SystemTimeOfDayInformation =3;

function NtQuerySystemInformation (SystemInformationClass:byte;

SystemInformation: Pointer;

SystemInformationLength: ULONG;

ReturnLength: PULONG): NTSTATUS; stdcall; external 'NTDLL.DLL';

function SysDateToStr (ST: TSystemTime): string;

const.

sDateFmt = 'dddd, d MMMM, yyyy';

begin.

SetLength (Result, 255);

GetDateFormat (LOCALE_USER_DEFAULT, 0, @ST, sDateFmt, @result[1], 255);

SetLength (Result, LStrLen (@result[1]));

end;

function SysTimeToStr (ST: TSystemTime):string;

const.

sTimeFmt = 'HH:mm:ss' ;

begin.

SetLength (result, 15);

GetTimeFormat (LOCALE_USER_DEFAULT, 0,@st, sTimeFmt,@result[1], 15);

SetLength (result, StrLen (@result[1]));

end;

function GetFileTimeToSystemTime (ft:TFileTime):string;

var.

st, lt: TSystemTime;

tz:TTimezoneInformation;

begin.

Result:='';

if not FileTimeToSystemTime (ft, st) then exit;

GetTimeZoneInformation (tz);

SystemTimeToTzSpecificLocalTime (@tz, st, lt);

Result:=SysDateToStr (lt)+' в ' + SysTimeToStr (lt);

end;

// дата/время последнего выключения (или перезагрузки) системы.

function GetLastSystemShutdown: string;

var.

ft:TFileTime;

reg:TRegistry;

begin.

Result:='';

reg:=TRegistry.Create;

try.

reg.RootKey:=HKEY_LOCAL_MACHINE;

if (not reg. OpenKeyReadOnly ('SystemCurrentControlSetControlWindows')) then exit;

if (reg.ReadBinaryData ('ShutdownTime', ft, sizeof (ft))=0) then exit.

finally.

reg.Free.

end;

Result:= GetFileTimeToSystemTime (ft).

end;

// дата/время старта системы.

function NtGetBootDateTime: string;

var.

sti: SYSTEM_TIME_OF_DAY_INFORMATION;

status: NTSTATUS;

ftSystemBoot: FILETIME;

ST:TSystemTime;

begin.

Result:='';

status:=NtQuerySystemInformation (SystemTimeOfDayInformation, @sti,.

sizeof (SYSTEM_TIME_OF_DAY_INFORMATION), nil);

if (statusNO_ERROR) then exit;

ftSystemBoot:= PFILETIME (@(sti.BootTime))^;

if FileTimeToLocalFileTime (ftSystemBoot, ftSystemBoot) then.

if FileTimeToSystemTime (ftSystemBoot, ST) then.

Result:=SysDateToStr (ST)+' в '+SysTimeToStr (ST).

end;

procedure TForm1. GetTimeSys;

begin.

Memo1.Lines.Append ('');

Memo1.Lines.Append ('——-Время работы системы———');

Memo1.Lines.Append ('Запуск системы: '+NtGetBootDateTime);

Memo1.Lines.Append ('Закрытие системы: '+GetLastSystemShutdown);

end;

// ——— о пользователях ——————————;

// ———————————————-;

// Перевод из стандартной строки Delphi в Unicode-строку для WinAPI.

function Str2Wide (lpStr: String):PWideChar;

var.

dwStrlen: Cardinal;

begin.

dwStrLen:= lstrlen (PChar (lpStr));

GetMem (Result,(dwStrLen+1)*2);

StringToWideChar (lpStr, Result, dwStrLen+1);

end;

function SpecDWORDToDateTime (AData: DWORD): TDateTime;

function DWORDPartToInt (ADWORD, AMask: DWORD; AShift: Integer): Integer;

begin.

Result:= (ADWORD Or AMask) Shr AShift;

end.

const.

cH = $F800; // 0.1111100000000000.

cMm = $ 7E0; // 0.0000011111100000.

cS = $FE000000; // 1 111 111 000 000 000.0000000000000000.

cM = $ 1E00000; // 111 100 000.0000000000000000.

cD = $ 1F0000; // 11 111.0000000000000000.

var.

D, M, H, Mm, S: Integer;

begin.

D:= DWORDPartToInt (AData, cD, 16);

M:= DWORDPartToInt (AData, cM, 21);

H:= DWORDPartToInt (AData, cH, 11);

MM:= DWORDPartToInt (AData, cMm, 5);

S:= DWORDPartToInt (AData, cS, 25);

Result:= EncodeDateTime (2015,M, D, H, Mm, S,0);

// 2009 — Year.

// 0 — mSeconds.

end;

const.

// Sets UnixStartDate to TDateTime of 01/01/1970.

UnixStartDate: TDateTime = 25 569.0;

function DateTimeToUnix (ConvDate: TDateTime): Longint;

begin.

//example: DateTimeToUnix (now);

Result:= Round ((ConvDate — UnixStartDate) * 86 400);

end;

function UnixToDateTime (USec: Longint): TDateTime;

begin.

//Example: UnixToDateTime (1 003 187 418);

Result:= (Usec / 86 400) + UnixStartDate;

end;

procedure TForm1. GetLocalUserList;

const.

NERR_SUCCESS = 0;

FILTER_TEMP_DUPLICATE_ACCOUNT = $ 0001;

FILTER_NORMAL_ACCOUNT = $ 0002;

FILTER_PROXY_ACCOUNT = $ 0004;

FILTER_INTERDOMAIN_TRUST_ACCOUNT = $ 0008;

FILTER_WORKSTATION_TRUST_ACCOUNT = $ 0010;

FILTER_SERVER_TRUST_ACCOUNT = $ 0020;

type.

TUSER_INFO10 = record.

usri10_name,.

usri10_comment,.

usri10_usr_comment,.

usri10_full_name: PWideChar;

end;

PUSER_INFO10 = ^TUSER_INFO10;

_USER_INFO2 = record.

usri2_name,.

usri2_password: LPWSTR;

usri2_password_age, usri2_priv: DWORD;

usri2_home_dir,.

usri2_comment: LPWSTR;

usri2_flags:DWORD;

usri2_script_path: LPWSTR;

usri2_auth_flags:DWORD;

usri2_full_name,.

usri2_usr_comment,.

usri2_parms,.

usri2_workstations: LPWSTR;

usri2_last_logon,.

usri2_last_logoff,.

usri2_acct_expires,.

usri2_max_storage,.

usri2_units_per_week: DWORD;

usri2_logon_hours: PBYTE;

usri2_bad_pw_count,.

usri2_num_logons: DWORD;

usri2_logon_server: LPWSTR;

usri2_country_code,.

usri2_code_page: DWORD;

End;

var.

tm: TDateTime;

time: _FILETIME;

fTime: SYSTEMTIME;

USER_INFO2: _USER_INFO2;

PUSER_INFO2: ^ _USER_INFO2;

LPUSER_INFO2: ^_USER_INFO2;

dt1,dt2:TDateTime;

s:String;

dwERead, dwETotal, dwRes, res: DWORD;

inf: PUSER_INFO10;

info: Pointer;

p: PChar;

i: Integer;

UserInfo: ^_USER_INFO2;

lpwUser: PWideChar;

lpwSrv: PWideChar;

begin.

UserInfo:=Addr (USER_INFO2);

memo1.lines.append ('');

memo1.lines.append ('——-Список пользователей———————');

info:= nil;

dwRes:= 0;

res:= NetUserEnum (nil,.

10,.

FILTER_NORMAL_ACCOUNT,.

@info,.

65 536,.

@dwERead,.

@dwETotal,.

@dwRes);

if (res NERR_SUCCESS) or (info = nil) then.

Exit;

p:= PChar (info);

for i:= 0 to dwERead — 1 do.

begin.

inf:= PUSER_INFO10(p + i * SizeOf (TUSER_INFO10));

Memo1.Lines.Append (WideCharToString (inf^.usri10_name));

Memo1.Lines.Append (WideCharToString (inf^.usri10_comment));

//Memo1.Lines.Append (WideCharToString (inf^.usri10_usr_comment));

//Memo1.Lines.Append (WideCharToString (inf^.usri10_full_name));

lpwSrv := Str2Wide ('');

lpwUser:= inf^.usri10_name;

NetUserGetInfo (lpwSrv, lpwUser, 2, Pointer (UserInfo));

//usri2_last_logon и usri2_last_logoff — время последнего входа и выхода пользователя ®.

(*.

usri2_last_logon.

Type: DWORD.

The date and time when the last logon occurred. This value is stored as the number.

of seconds that have elapsed since 00:00:00, January 1, 1970, GMT. This member.

is ignored by the NetUserAdd and NetUserSetInfo functions.

This member is maintained separately on each backup domain controller (BDC).

in the domain. To obtain an accurate value, you must query each BDC in the.

domain. The last logon occurred at the time indicated by the largest retrieved value.

usri2_last_logoff.

Type: DWORD.

This member is currently not used.

Indicates when the last logoff occurred. This value is stored as the number of.

seconds that have elapsed since 00:00:00, January 1, 1970, GMT. A value of zero.

indicates that the last logoff time is unknown.

This member is maintained separately on each backup domain controller (BDC) in.

the domain. To obtain an accurate value, you must query each BDC in the domain.

The last logoff occurred at the time indicated by the largest retrieved value.

*).

dt1:= UnixToDateTime (UserInfo^.usri2_last_logon);

dt2:= UnixToDateTime (UserInfo^.usri2_last_logoff);

s:='';

if UserInfo^.usri2_last_logon0.

then s:=s+'Вход: '+DateTimeToStr (dt1)+'. '.

else s:=s+'Вход не зафиксирован. ';

if UserInfo^.usri2_last_logoff0.

Then s:=s+'Выход: '+DateTimeToStr (dt2)+'. '.

else s:=s+'Выход не зафиксирован. ';

memo1.Lines.Add (s);

Memo1.Lines.Add ('');

end;

NetApiBufferFree (info);

end;

procedure TForm1. BInfoClick (Sender: TObject);

begin.

Memo1.Lines.Clear;

GetProcessorInfo;

GetBIOSInfo;

GetLogicalHDD;

GetKeyboard;

GetMotherBoard;

GetMouse;

GetMonitor;

GetNet;

GetProc;

GetTimeSys;

GetLocalUserList;

end;

procedure TForm1. BSendClick (Sender: TObject);

Var.

FName:String; // Имя файла для записи на ftp-сервер

FPath:String; // Имя временного файла на компьютере с полным путём.

begin.

// Формирование имени файла.

FName:=DateTimeToStr (Now);

FName:= StringReplace (FName, ' ', '_',[rfReplaceAll, rfIgnoreCase]);

FName:= StringReplace (FName, '.', '_',[rfReplaceAll, rfIgnoreCase]);

FName:= StringReplace (FName, ':', '_',[rfReplaceAll, rfIgnoreCase])+'.txt';

FPath:=ExtractFilePath (Application.ExeName)+FName;

// Создаем файл на диске локального компьютере.

Memo1.Lines.SaveToFile (FPath);

// Записываем на ftp-сервер

stat.SimpleText:='Подключение к серверу: ';

idFTP1.Host:=Trim (EditIP.Text); // ip-адрес сервера.

idFTP1.Port:=StrToInt (EditPort.Text); // порт ftp сервера.

idFTP1.Username:=EditLog.Text; // логин.

idFTP1.Password:=EditPas.Text; //пароль.

idFTP1.Connect;

stat.SimpleText:='Отправка файла: '+FName;

idFTP1.ChangeDir (Trim (EditDir.Text));

idFTP1.Put (FPath, FName);

idFTP1.Disconnect;

stat.SimpleText:='Отключение от сервера: '+Trim (EditIP.Text);

stat.SimpleText:='Готово!'.

end;

end.

Приложение Б Листинг собранной информации о компьютере.

——-ЦП——-;

Процессор 0:

производитель: GenuineIntel.

семейство: x86 Family 6 Model 15 Stepping 11.

Процессор 1:

производитель: GenuineIntel.

семейство: x86 Family 6 Model 15 Stepping 11.

AddressWidth: 32.

Architecture: 0.

Availability: 3.

Caption: x86 Family 6 Model 15 Stepping 11.

ConfigManagerErrorCode:

ConfigManagerUserConfig:

CpuStatus: 1.

CreationClassName: Win32_Processor.

CurrentClockSpeed: 2194.

CurrentVoltage: 13.

DataWidth: 32.

Description: x86 Family 6 Model 15 Stepping 11.

DeviceID: CPU0.

ErrorCleared:

ErrorDescription:

ExtClock: 200.

Family: 2.

InstallDate:

L2CacheSize: 4096.

L2CacheSpeed:

LastErrorCode:

Level: 6.

LoadPercentage: 7.

Manufacturer: GenuineIntel.

MaxClockSpeed: 2194.

Name: Intel® Core™2 Duo CPU T7500 @ 2.20GHz.

NumberOfCores: 2.

NumberOfLogicalProcessors: 2.

OtherFamilyDescription:

PNPDeviceID:

PowerManagementCapabilities: 1 243 048:

PowerManagementSupported: False.

ProcessorId: 06FB.

ProcessorType: 3.

Revision: 3851.

Role: CPU.

SocketDesignation: uFC-PGA Socket.

Status: OK.

StatusInfo: 3.

Stepping: 11.

SystemCreationClassName: Win32_ComputerSystem.

SystemName: MICROSOF-5599EF.

UniqueId:

UpgradeMethod: 1.

Version: Модель 15, Выпуск 11.

VoltageCaps:

——-BIOS——-;

Системная дата BIOS: 03/06/08.

Версия BIOS: TOSHIB — 20 070 816.

v2.10.

BiosCharacteristics: 0:

BIOSVersion: 0:

BuildNumber:

Caption: v2.10.

CodeSet:

CurrentLanguage:

Description: v2.10.

IdentificationCode:

InstallableLanguages:

InstallDate:

LanguageEdition:

ListOfLanguages: 0:

Manufacturer: TOSHIBA.

Name: v2.10.

OtherTargetOS:

PrimaryBIOS: True.

ReleaseDate: 20 080 306 000 000.000000+000.

SerialNumber: X7022819H.

SMBIOSBIOSVersion: Version 2.10.

SMBIOSMajorVersion: 2.

SMBIOSMinorVersion: 4.

SMBIOSPresent: True.

SoftwareElementID: v2.10.

SoftwareElementState: 3.

Status: OK.

TargetOperatingSystem: 0.

Version: TOSHIB — 20 070 816.

——-HDD——-;

Доступно: C:

Тип устройства: жесткий диск Метка тома:

Серийный номер: 875 222 072.

Файловая система: NTFS.

Доступно: D:

Тип устройства: жесткий диск Метка тома: Рабочий Серийный номер: 752 201 973.

Файловая система: NTFS.

Доступно: E:

Тип устройства: жесткий диск Метка тома: Медиа Серийный номер: 1 546 234 612.

Файловая система: NTFS.

Доступно: F:

Тип устройства: CD-ROM.

не известно.

Availability:

BytesPerSector: 512.

Capabilities: 0:

CapabilityDescriptions: 0:

Caption: TOSHIBA MK8037GSX.

CompressionMethod:

ConfigManagerErrorCode: 0.

ConfigManagerUserConfig: False.

CreationClassName: Win32_DiskDrive.

DefaultBlockSize:

Description: Дисковый накопитель.

DeviceID: .PHYSICALDRIVE0.

ErrorCleared:

ErrorDescription:

ErrorMethodology:

Index: 0.

InstallDate:

InterfaceType: IDE.

LastErrorCode:

Manufacturer: (Стандартные дисковые накопители).

MaxBlockSize:

MaxMediaSize:

MediaLoaded: True.

MediaType: Fixedhard disk media.

MinBlockSize:

Model: TOSHIBA MK8037GSX.

Name: .PHYSICALDRIVE0.

NeedsCleaning:

NumberOfMediaSupported:

Partitions: 3.

PNPDeviceID: IDEDISKTOSHIBA_MK8037GSX_______________________DL230M__5&2F5A5D51&0&0.0.0.

PowerManagementCapabilities: 0:

PowerManagementSupported:

SCSIBus: 0.

SCSILogicalUnit: 0.

SCSIPort: 0.

SCSITargetId: 0.

SectorsPerTrack: 63.

Signature: 1 757 294 337.

Size: 80 023 749 120.

Status: OK.

StatusInfo:

SystemCreationClassName: Win32_ComputerSystem.

SystemName: MICROSOF-5599EF.

TotalCylinders: 9729.

TotalHeads: 255.

TotalSectors: 156 296 385.

TotalTracks: 2 480 895.

TracksPerCylinder: 255.

——-Клавиатура——-;

Keyboards 1.

Availability:

Caption: Расширенная клавиатура (101 или 102 клавиши).

ConfigManagerErrorCode: 0.

ConfigManagerUserConfig: False.

CreationClassName: Win32_Keyboard.

Description: Стандартная (101/102 клавиши) или клавиатура PS/2 Microsoft Natural.

DeviceID: ACPIPNP03034&2FFE84EA&0.

ErrorCleared:

ErrorDescription:

InstallDate:

IsLocked:

LastErrorCode:

Layout: 419.

Name: Расширенная клавиатура (101 или 102 клавиши).

NumberOfFunctionKeys: 12.

Password:

PNPDeviceID: ACPIPNP03034&2FFE84EA&0.

PowerManagementCapabilities: 0:

PowerManagementSupported: False.

Status: OK.

StatusInfo:

SystemCreationClassName: Win32_ComputerSystem.

SystemName: MICROSOF-5599EF.

——-О материнской плате——-;

Caption: Основная плата.

ConfigOptions: 1 243 048:

CreationClassName: Win32_BaseBoard.

Depth:

Description: Основная плата.

Height:

HostingBoard: True.

HotSwappable:

InstallDate:

Manufacturer: TOSHIBA.

Model:

Name: Основная плата.

OtherIdentifyingInfo:

PartNumber:

PoweredOn: True.

Product: Portable PC.

Removable:

Replaceable:

RequirementsDescription:

RequiresDaughterBoard:

SerialNumber: $$C07X80GP.

SKU:

SlotLayout:

SpecialRequirements:

Status:

Tag: Base Board.

Version: Version A0.

Weight:

Width:

——-О мышке——-;

Availability:

Caption: USB HID-совместимое устройство.

ConfigManagerErrorCode: 0.

ConfigManagerUserConfig: False.

CreationClassName: Win32_PointingDevice.

Description: USB HID-совместимое устройство.

DeviceID: USBVID_0458&PID_003A5&30A64690&0&1.

DeviceInterface: 162.

DoubleSpeedThreshold: 6.

ErrorCleared:

ErrorDescription:

Handedness: 2.

HardwareType: USB HID-совместимое устройство.

InfFileName: input.inf.

InfSection: HID_Inst.

InstallDate:

IsLocked:

LastErrorCode:

Manufacturer: (стандартные системные устройства).

Name: USB HID-совместимое устройство.

NumberOfButtons: 3.

PNPDeviceID: USBVID_0458&PID_003A5&30A64690&0&1.

PointingType: 2.

PowerManagementCapabilities: 1 243 048:

PowerManagementSupported: False.

QuadSpeedThreshold: 10.

Resolution:

SampleRate:

Status: OK.

StatusInfo:

Synch:

SystemCreationClassName: Win32_ComputerSystem.

SystemName: MICROSOF-5599EF.

——-О мониторе——-;

Availability: 3.

Bandwidth:

Caption: Модуль подключения монитора.

ConfigManagerErrorCode: 0.

ConfigManagerUserConfig: False.

CreationClassName: Win32_DesktopMonitor.

Description: Модуль подключения монитора.

DeviceID: DesktopMonitor1.

DisplayType:

ErrorCleared:

ErrorDescription:

InstallDate:

IsLocked:

LastErrorCode:

MonitorManufacturer: (Стандартные мониторы).

MonitorType: Модуль подключения монитора.

Name: Модуль подключения монитора.

PixelsPerXLogicalInch: 96.

PixelsPerYLogicalInch: 96.

PNPDeviceID: DISPLAYTOS508A4&1657F16D&0&410&00&02.

PowerManagementCapabilities: 1 243 048:

PowerManagementSupported:

ScreenHeight: 800.

ScreenWidth: 1280.

Status: OK.

StatusInfo:

SystemCreationClassName: Win32_ComputerSystem.

SystemName: MICROSOF-5599EF.

——-О сетевых адаптерах——-;

AdapterType: Ethernet 802.3.

AdapterTypeId: 0.

AutoSense:

Availability: 3.

Caption: [1] Intel® 82566MC Gigabit Network Connection.

ConfigManagerErrorCode: 0.

ConfigManagerUserConfig: False.

CreationClassName: Win32_NetworkAdapter.

Description: Intel® 82566MC Gigabit Network Connection.

DeviceID: 1.

ErrorCleared:

ErrorDescription:

Index: 1.

InstallDate:

Installed: True.

LastErrorCode:

MACAddress: 00:1C:7E:D5:D3:1E.

Manufacturer: Intel.

MaxNumberControlled: 0.

MaxSpeed:

Name: Intel® 82566MC Gigabit Network Connection.

NetConnectionID: Подключение по локальной сети.

NetConnectionStatus: 7.

NetworkAddresses: 1 243 048:

PermanentAddress:

PNPDeviceID: PCIVEN_8086&DEV_104D&SUBSYS_11 179&REV033&B1BFB68&0&C8.

PowerManagementCapabilities: 1 243 048:

PowerManagementSupported: False.

ProductName: Intel® 82566MC Gigabit Network Connection.

ServiceName: e1express.

Speed:

Status:

StatusInfo:

SystemCreationClassName: Win32_ComputerSystem.

SystemName: MICROSOF-5599EF.

TimeOfLastReset: 20 151 114 063 115.765625+120.

——-О запущенных проссах——-;

SystemRootSystem32smss.exe.

??C:WINDOWSsystem32winlogon.exe.

C:WINDOWSsystem32services.exe.

C:WINDOWSsystem32lsass.exe.

C:WINDOWSsystem32svchost.exe.

C:WINDOWSSystem32svchost.exe.

C:WINDOWSsystem32spoolsv.exe.

C:WINDOWSExplorer.EXE.

C:WINDOWSsystem32igfxtray.exe.

C:WINDOWSsystem32igfxsrvc.exe.

C:WINDOWSsystem32hkcmd.exe.

C:WINDOWSsystem32igfxpers.exe.

C:WINDOWSRTHDCPL.EXE.

C:WINDOWSsystem320THotkey.exe.

C:WINDOWSsystem32 hpsrv.exe.

C:WINDOWSsystem32agrsmsvc.exe.

C:Program FilesTOSHIBATouchEDTouchED.exe.

C:WINDOWSsystem32 undll32.exe.

C:Program FilesCommon FilesMicrosoft SharedVS7DEBUGMDM.EXE.

C:Documents and SettingsAll UsersApplication DataMobileBrServmbbservice.exe.

C:WINDOWSsystem32ctfmon.exe.

C:WINDOWSsystem32svchost.exe.

C:WINDOWSsystem32ThpSrv.exe.

C:Program FilesTOSHIBABluetooth MonitorBtMon2.exe.

C:Program FilesRSPrintPrintMon.exe.

C:WINDOWSSystem32svchost.exe.

C:Program FilesMicrosoft OfficeOffice12WINWORD.EXE.

C:Program FilesBorlandDelphi7Bindelphi32.exe.

C:Screenshoter.exe.

——-Время работы системы——-;

Запуск системы: суббота, 14 ноября, 2015 в 06:31:15.

Закрытие системы: воскресенье, 8 ноября, 2015 в 12:04:35.

——-Список пользователей——————-;

Admin.

Встроенная учетная запись администратора компьютера/домена Вход: 13.11.2015 11:20:33. Выход не зафиксирован.

ASPNET.

Account used for running the ASP.NET worker process (aspnet_wp.exe).

Вход не зафиксирован. Выход не зафиксирован.

HelpAssistant.

Учетная запись для предоставления удаленной помощи Вход не зафиксирован. Выход не зафиксирован.

SUPPORT_38 8945a0.

Это учетная запись поставщика для службы справки и поддержки Вход не зафиксирован. Выход не зафиксирован.

Гость Встроенная учетная запись для доступа гостей к компьютеру/домену Вход не зафиксирован. Выход не зафиксирован.

Показать весь текст
Заполнить форму текущей работой