Welcome

MiTeC System Information Component Suite

The most complex system information probe in Delphi / FPC world.

MiTeC System Information Component Suite (MSICS) is set of components, threads and classes for Delphi from version 2005 to 12 Athens and FPC 3 / Lazarus providing deep and wide-range system information of your machine.

Every component has ability to save and load its data to/from System Information File or save to XML format with attached XSL scheme for browsing.

MSICS is written in pure Pascal and assembler. No additional DLLs, drivers or other stuff.

System requirements

Installation

Version History

Demos and Applications

Components

Threads

Classes

Registration

This software is provided 'as-is', without any express or implied warranty. In no event will the author be held liable for any damages arising from the use of this software.

Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:

1. The origin of this software must not be misrepresented, you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation is required.

2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.

3. This notice may not be removed or altered from any source distribution.

For more MiTeC components and applications visit please http://www.mitec.cz.

Copyright © 1997-2023, Michal Mutl. All Rights Reserved.


System requirements

Programming languages

  • CodeGear RAD Studio 2007 (Win32 Delphi personality)
  • CodeGear RAD Studio 2009 (Win32 Delphi personality)
  • Embarcadero RAD Studio 2010 (Win32 Delphi personality)
  • Embarcadero RAD Studio XE (Win32 Delphi personality)
  • Embarcadero RAD Studio XE2 (Win32&Win64 Delphi personality)
  • Embarcadero RAD Studio XE3 (Win32&Win64 Delphi personality)
  • Embarcadero RAD Studio XE4 (Win32&Win64 Delphi personality)
  • Embarcadero RAD Studio XE5 (Win32&Win64 Delphi personality)
  • Embarcadero RAD Studio XE6 (Win32&Win64 Delphi personality)
  • Embarcadero RAD Studio XE7 (Win32&Win64 Delphi personality)
  • Embarcadero RAD Studio XE8 (Win32&Win64 Delphi personality)
  • Embarcadero RAD Studio 10 Seattle (Win32&Win64 Delphi personality)
  • Embarcadero RAD Studio 10.1 Berlin (Win32&Win64 Delphi personality)
  • Embarcadero RAD Studio 10.2 Tokyo (Win32&Win64 Delphi personality)
  • Embarcadero RAD Studio 10.3 Rio (Win32&Win64 Delphi personality)
  • Embarcadero RAD Studio 10.4 Sydney (Win32&Win64 Delphi personality)
  • Embarcadero RAD Studio 11 Alexandria (Win32&Win64 Delphi personality)
  • Embarcadero RAD Studio 12 Athens (Win32&Win64 Delphi personality)

Operating systems

  • Windows XP
  • Windows Server 2003
  • Windows Vista
  • Windows Seven
  • Windows Server 2008
  • Windows Server 2008 R2
  • Windows 8
  • Windows 8.1
  • Windows Server 2012
  • Windows Server 2012 R2
  • Windows 10
  • Windows Server 2016
  • Windows Server 2019
  • Windows 11


Installation

Remove all old versions of MSICS before intallation of the new version!

  1. Unpack MSICS_Sources.7z into desired folder.
  2. Run your Delphi/RAD application.
  3. Open menu Tools|Options, navigate to Environmet options|Delphi options|Library (Win-32) and add Common and MSICS folder into Library path.
  4. Optionally uncheck 'Notify on language exceptions' option in Debugger Options|Language Exceptions.
  5. Open Common\MiTeC_Common_xxx1.dpk which is a runtime package containing common used routines. Click Compile button or select Compile item from context menu in Project manager.
  6. Then open MSICS\MSICS_xxx1_Rtl.dpk (runtime source for all components) and then click on the Compile button or select Compile item from context menu in Project manager.
  7. Then open designtime package MSICS\MSICS_xxx1_Dsgn.dpk and then click on the Install button or select Install item from context menu in Project manager.

You should see the "MSIC Suite" tab on the component palette after succesfull installation.

1 ) xxx is shortcut for appropriate Delphi/FPC version, see table below

RAD5 | CodeGear RAD Studio 2007
RAD6 | CodeGear RAD Studio 2009
RAD7 | Embarcadero RAD Studio 2010
RAD8 | Embarcadero RAD Studio XE
RAD9 | Embarcadero RAD Studio XE2
RAD10 | Embarcadero RAD Studio XE3
RAD11 | Embarcadero RAD Studio XE4
RAD12 | Embarcadero RAD Studio XE5
RAD14 | Embarcadero RAD Studio XE6
RAD15 | Embarcadero RAD Studio XE7
RAD16 | Embarcadero RAD Studio XE8
RAD17 | Embarcadero RAD Studio 10 Seattle
RAD18 | Embarcadero RAD Studio 10.1 Berlin
RAD19 | Embarcadero RAD Studio 10.2 Tokyo
RAD20 | Embarcadero RAD Studio 10.3 Rio
RAD21 | Embarcadero RAD Studio 10.4 Sydney
RAD22 | Embarcadero RAD Studio 11 Alexandria
RAD23 | Embarcadero RAD Studio 12 Athens
FPC | Free Pascal/Lazarus


Version History

14.7.1 10.11.2023

+ TMiTeC_SMBIOS - SMBIOS 3.7 compliance and bug fixes

+ TMiTeC_SMBIOS - LoadFromFile, SystemString, InstalledMemory and MemoryType functions added

+ TMiTeC_Machine - Hyper-V session detection added

+ Demo 36 added - working with TMiTeC_SMBIOS

+ TMiTeC_EventLog - ExpandMessages, NewAPIAvailable properties added

+ TMiTeC_EventLog - OnExpandMessage event added

* TMiTeC_EventLog - bug fixes

+ TMiTeC_OperatingSystem - Game Mode detection (for Win >=10)

+ Delphi 12 Athens compatibility

14.7.0 7.7.2023

* TMiTeC_SMBIOS - completely rewritten (MSI_DMA.pas removed, MiTeC_Firmware.pas added)

+ TMiTeC_Monitor - EDID decoding enhanced, new fields

+ TMiTeC_Display - WDDM version detection enhanced

+ TMiTeC_WiFi - added 802.11ad and 802.11ax types detection

* TMiTeC_WiFi - Channel number evaluation and wifi detection fixed

+ TMiTeC_BitLocker - BitLocker status and recovery keys

* Internal code optimizations

+ TSysProcMonThread - added GDI handles enumeration

* TSysProcMonThread - fixed Environment enumeration for Wow64 processes

+ Demo 35 added - working with Network Configuration class

14.6.1 3.1.2023

+ TSysProcMonThread - added property EvaluateCPUTemp which triggers CPU package temperature detection on/off

+ TSysProcMonThread - added Protected Process Light (PPL) detection

+ TSysProcMonThread - ASLR, DEP, CF Guard and Stack Protection detection added

* TSysProcMonThread - Physical CPU count and CPU Clock evaluation fixed

* TMiTeC_Storage - fixed serial numbers and NVMe temperature detection

+ TMiTeC_Storage - Added World Wide Name and Media Rotation Rate detection

+ TMiTeC_OperatingSystem - Windows Server 2016+ display version detection added

+ TMiTeC_Machine - property EvaluateThermalZones

+ TMiTeC_Machine - property ThermalZones, ThermalZoneCounters added

* Lazarus/Free Pascal compatibility fixed

* Internal code optimizations

14.6.0 24.10.2022

+ TMiTeC_OperatingSystem - System Code Integrity options detection added

* TMiTeC_OperatingSystem - LiveID detection fixed

+ TMiTeC_OperatingSystem - True windows name and version and compatibility mode detection enhanced and precised

- TMiTeC_OperatingSystem - OSBuild property removed

- TMiTeC_OperatingSystem - UpdateBuildRevision property added

+ TMiTeC_SMBIOS - UEFI Secure Boot status detection added

+ TMiTeC_SMBIOS - SMBIOS 3.6 compliance

* TMiTeC_SMBIOS - Fixed BIOS size evaluation

* TSysProcMonThread - process CPU usage fixed under Windows Vista

+ TSysProcMonThread - CPU package temperature added (experimental, only on machines with appropriate thermal zone available) - properties CPUTempAvailable and CPUTemp

* TMiTeC_Storage - HDD SSD temperature detection fixed

* TMiTeC_Network - Adapter max speed detection fixed

* Demo 02 - memory detection fixed

+ Demo 19 - CPU temperature added

+ TMiTeC_EventLog - Backup and ClearLog functions added

14.5.2 21.6.2022

* TMiTeC_CPU - Fixed CPU cache evaluation

* TMiTeC_Storage - Fixed crash on systems with NVMe disks with RAID bus.

* TSysProcMonThread - Max CPU speed fixed

* TSysProcMonThread - Installed memory detection fixed

- !!!! DEVELOPMENT AND COMPATIBILITY FOR DELPHI 2005,2006 HAS BEEN ENDED !!!!!!!!

14.5.1 10.9.2021

+ TMiTeC_CPU - added new AMD and Intel processor detection

+ TMiTeC_OperatingSystem - added DisplayVersion property (ReleaseID becomes obsolete)

+ Windows 11 compatibility

+ Delphi 11 Alexandria compatibility

14.5.0 25.3.2021

+ TSysProcMonThread - Added process username to sampling data

+ TMiTeC_Display - added GPU property indicating GPU presence

* TMiTeC_CPU - fixed cpu core and thread count detection

+ TMiTeC_CPU - added SocketCount and SocketDesignation properties

* TMiTeC_SMBIOS - fixed cache size detection when its size exceeding word boundary

14.4.0 14.12.2020

* TMiTeC_Machine - domain detection fixed

+ TMiTeC_AD - Active Directory object properties evaluation enhanced

* TPerfMonThread - Multi-instance counters evaluation fixed

+ TPerfMonThread - GPU processes and engines monitoring added

+ TMiTeC_Display - property LUID, PhysID, DriverDesc, DriverVersion, Location, WDDM version and GPU node enumeration added

* TMiTeC_Storage - SUBST drives are now correctly evaluated

+ TMiTeC_Storage - SSD NVMe disks temperature detection

* TMiTeC_Internet - Default internet browser and email client detection fixed

+ TMiTeC_Security - Added product version

+ TPerfMonThread - Added Demo 33 - GPU Utilization

* TMiTeC_CPU - Codename and technology evaluation enhanced

+ TMiTeC_CPU - CPUIDSignature and MicroCodeRevision properties added

* TSysProcMonThread - Fixed process module enumeration

+ TMachineJournal - Added Power event 41 evaluation

+ TMiTeC_SMBIOS - Table 2 (Mainboard) compeletd

+ TMiTeC_SMBIOS - Table 3 (Chassis) completed

+ TMiTeC_SMBIOS - Table 5 (Memory Controller) completed

+ TMiTeC_SMBIOS - Table 9 (System Slots) completed

+ TMiTeC_SMBIOS - Table 12 (System Configuration Options) added

+ TMiTeC_SMBIOS - Table 13 (BIOS Language Information) added

+ TMiTeC_SMBIOS - Table 34 (Management Devices) added

+ TMiTeC_SMBIOS - SMBIOS value reading code example added

+ TMiTeC_SMBIOS - SMBIOS now saves SMBIOS raw memory to SIF file and reconstructs all data from this record (if available) on load

+ TMiTeC_Devices - Added Parent field to TDevice to ensure correct device hierarchy

+ MSIX application - UI enhanced and polished

+ MSIX application - added embedded vendor and product database so that VendorID and DeviceID/ProductID are now translated to real names

+ MSIX application - Bus tree is now correctly hierarchised

+ ROM BIOS Explorer application - UI enhanced and polished

14.3.0 1.6.2020

+ TSysProcMonThread - Thread description detection (Windows 10+)

+ TMiTeC_CPU - CPU features detection completely rewritten to be compilant with latest models

+ Delphi 10.4 compatibility

14.2.0 19.4.2020

* TMiTeC_MUS - Fixed available updates detection in 32-bit version

+ TMiTeC_MUS - Added Update History detection and available updates detection information extended

+ TMiTeC_MUS - Added Demo 32

* TMiTeC_Storage - Fixed assigning logical drives to physical devices

+ TSysProcMonThread - Added additional settings properties (PerformanceMeasuring, EvaluateSecurityInfo, RetrieveProcessIcon, RetrieveProcessVersionInfo)

14.1.0 17.3.2020

+ Trusted Platform Module detection added ( TMiTeC_Machine.TPM )

* Windows Product Key decoding rewritten and fixed

+ Added Windows available updates detection (MicrosoftUpdateSession)(MSI_MUS.pas, TMiTeC_MUS )

14.0.0 1.3.2020

+ TProcListMonThread, TSysMonThread, TProcMonThread and TSysModListMonThread merged to new one - TSysProcMonThread (MSI_ProcListMon.pas, MSI_SysMon.pas, MSI.ProcMon.pas, MSI_SysModListMon -> MSI_SysProcMon.pas)

* Some types were moved from MiTeC_Routines.pas to new MiTeC_CommonDefs.pas (e.g. TVersionInfo, TWindowRecord, TProcessRecord etc.)

+ TMiTeC_SysProcMon - CPU usage measuring rewritten and precised - process cpu cycle time is used to usage calculation

+ TMiTeC_SysProcMon - CPU clock frequency evaluation rewritten - now it is based on real power distribution

+ TMiTeC_SysProcMon - Handle enumeration rewritten to reflect latest available APIs

+ TMiTeC_SysProcMon - System process module enumeration added

+ TMiTeC_SysProcMon - Windows 2000 compatibility fixed

+ TMiTeC_SysProcMon - Thread start address symbol evaluation

+ TMiTeC_Security - added product state, component rewritten->new interface

+ TMiTeC_SMBIOS - Windows 2000 compatibility fixed

+ TMiTeC_Storage - added SMART data reading for USB disks

+ TMiTeC_SMBIOS - initial SMBIOS 3.4 compliance

+ TMiTeC_SMBIOS - Hardware Security table 24 added

+ TMiTeC_SMBIOS - OEM strings table 11 added

+ FreePascal/Lazarus compatibility

13.5.0 3.11.2019

+ TMiTeC_SMBIOS WindowsProductKey property added - contains Windows Product Key read from ACPI.MSDM table

+ TMiTeC_SMBIOS UEFIGUID property added - contains UEFI GUID read from ACPI.UEFI table

+ TMiTeC_SMBIOS SMBIOS 3.3 compliance

* TProcMonThread handles enumeration fixed

* TProcMonThread Process monitor memory leak fixed

+ TProcMonThread Average CPU usage added to thread record, many new properties added, DpiAwareness detection enhanced

* TMiTeC_EventLog message expansion precised

+ TMiTeC_OperatingSystem Application theme mode and system theme mode detection added

+ TMiTeC_EventLog new WinEvt API implemented (MiTeC_WinEvt.pas)

+ Library for working with certificates rewritten and greatly improved (MiTeC_Cert.pas)

+ TProcListMonThread new TotalProcessPrivateBytes and TotalProcessWorkingSet properties, DpiAwareness detection enhanced

+ TSysMonThread new PagedPool and NonPagedPool class functions

+ TMiTeC_CPU Physical CPU and Thread count calculation fixed

13.4.0 14.6.2019

* TMiTeC_SMBIOS detection fixed

* TMiTeC_OperatingSystem VMWare/VirtualPC/VirtualBox session identification fixed

* TProcMonThread handles enumeration fixed

+ TProcMonThread file handle file position evaluated in handles detection

* TMiTeC_TCPIP adapter detection fixed

13.3.0 17.4.2019

+ TMiTeC_SMBIOS tables 16,22,39,41,43,204,219,221 detection added + SMBIOS 3.2 compliance added

+ TProcListMonThread process priority class and affinity added

+ TProcMonThread process priority class and affinity added

+ ROM BIOS Explorer enhanced (version 2.0)

+ TMiTeC_DeviceMonitor volume connect/disconnect event now correctly returns multiple drives

13.2.1 29.12.2018

+ Delphi 10.3 Rio compatibility fixed

+ TProcMonThread property ChildInstancesPrivateBytes added

13.2.0 25.11.2018

+ Delphi 10.3 Rio compatibility added

+ TMiTeC_Network IPv6 support

+ TNetworkConfiguration IPv6 support

+ TSvcListMonThread service record enhanced (ControlsAccepted)

+ TMiTeC_Storage device info record enhanced (VolumeLabel, LogicalSerial, LogicalSize)

+ TMiTeC_Software install record enhanced (HelpLink, AboutLink, InfoLink, UpdateLink)

13.1.0 21.9.2018

+ TMiTeC_Monitor detection enhanced and precised (Bounds,WorkArea,MonitorNum,DPI)

+ Demo 30 added - monitor detection

* TMiTeC_WEI - Windows Experience Index evaluation fixed

13.0.0 15.9.2018

* MiTeC_Devices property removed from TMiTeC_Machine , TMiTeC_Monitor , TMiTeC_Network , TMiTeC_Display and TMiTeC_Media , detection rewritten to Config Manager Setup API

+ TMiTeC_Devices detection rewritten to Config Manager Setup API

- TMiTeC_Media .SoundCardIndex and GamePortIndex properties removed

+ TMiTeC_Media .SoundCardName, SoundCardManufacturer, SoundCardHardwareID and SoundCardLocation properties added

+ TMiTeC_USB . GetDevicePowerState function added

+ TMiTeC_USB detection enhanced (featured devices, powerstate)

+ TMiTeC_Monitor detection enhanced (resolution, primary, index)

+ Demos 04,05,13 completely rewritten

+ Windows Experience Index evaluation added ( TMiTeC_OperatingSystem . WindowsExperienceIndex )

12.8.0 8.8.2018

+ CRC routines enhanced and fixed (MiTeC_CRC.pas)

+ AES routines enhanced and fixed (MiTeC_WinCrypt.pas)

+ Demo 29 added - working with network utilities

* EventLog bugs fixed (MiTeC_EventLog.pas, MSI_EventLog.pas)

* Thread wait states updated (MiTeC_NativeDefs.pas)

* XP compatibility fixed

12.7.0 25.6.2018

+ Working with certificates enhanced (MiTeC_Cert.pas)

+ Network Configuration class enhanced (MiTeC_NCC.pas)

+ Demo 28 added - working with certificates

* All windows declarations moved to new unit MiTeC_Windows.pas

* All class helpers moved to new unit MiTeC_Helpers.pas

* All list classes moved to new unit MiTeC_Lists.pas

- MiTeC_StringsHelper.pas removed

12.6.0 26.4.2018

+ ICMP Echo API interface (MiTeC_IcmpApi.pas)

+ Windows Trust API interface (MiTeC_WinTrust.pas)

+ Windows CryptUI API interface (partial) (MiTeC_CryptUI.pas)

+ Working with certificates and AuthentiCode (MiTeC_Cert.pas)

+ Network Configuration class (MiTeC_NCC.pas)

+ Working with IPv4 and IPv6 (MiTeC_IPTypes.pas) - replaces functions from MiTeC_NetUtils.pas

+ Demo 18 enhanced (AuthentiCode)

+ Windows Server 2016 compatibility

+ Volume Shadow Service API interface (MiTeC_VssApi.pas)

+ TMiTeC_OperatingSystem .OSBuild added

+ Machine Journal class (MiTeC_MachineJournal.pas)

* TMiTeC_Engines .NET detection refined

- MiTeC additional components (TWebBrowserEx,TMGauge,TMCategoryButtons,TWheelScrollBox,etc.) removed from package

12.5.0 9.1.2018

- !!!! DEVELOPMENT AND COMPATIBILITY FOR DELPHI 7 HAS BEEN ENDED !!!!!!!!

+ TMiTeC_USBHistory : USB usage detection component

+ TMiTeC_WLANC : known Wi-Fi networks enumeration (including network keys)

+ TMiTeC_Firewall : enumerates settings and rules from Windows Firewall

* TMiTeC_ProcessList : large memory leak fix

* TMiTeC_CPU : memory leak fix

* TMiTeC_Network : protocols,clients and services detection fix

* TSvcListMonThread : service startup detection enhanced (delayed start, trigger start)

+ Added Demo 25 for TMiTeC_USBHistory demonstration

+ Added Demo 26 for TMiTeC_WLANC demonstration

+ Added Demo 27 for TMiTeC_Firewall demonstration

12.4.0 18.11.2017

+ TMiTeC_NetCreds : cached network credentials enumeration (including passwords)

+ TProcMonThread : USER and GDI handles evaluation

* TMiTeC_Startup : Task scheduler jobs enumeration bug fix

+ TProcListMonThread : USER and GDI handles evaluation

+ TMiTeC_OperatingSystem : Windows 10 ReleaseID detection

* TPerfMonThread : Counter enumeration bug fix

12.3.0 27.5.2017

+ Free Pascal Compiler 3.x/Lazarus compatibility

+ TProcMonThread : modules evaluated on-the-fly

+ TProcMonThread : thread start address evaluation

+ THndListMonThread : added, provides real-time monitoring of handles of specified type and their properties (MSI_HndListMon.pas)

+ TMiTeC_ProcessList : added Handles enumeration

+ TMiTeC_EventLog : added event OnReadEventLog allowing eventlog reading cancellation

* TProcMonThread : fixed file handle enumeration bug

+ TMiTeC_Startup : Task scheduler jobs run at boot and logon included (Vista+)

+ TProcListMonThread : added max I/O process evaluation

12.2.3 31.3.2017

+ Delphi 10.2 Tokyo compatibility

12.2.2 22.2.2017

* TPerfMonThread bug fixes

* TSysMonThread bug fixes

* TSvcListMonThread bug fixes

12.2.1 25.1.2017

+ TPerfMonThread bug fixes and enhancements

12.2.0 22.1.2017

+ TSysMonThread enhanced (installed memory, system cache)

+ TMiTeC_Devices enhanced (Computer, SoundCard)

+ Added TPerfMonThread for real-time monitoring of performance counters (MSI_PerfMon.pas)

+ Added Demo 21 for TPerfMonThread demonstration

* TProcMonThread bug fixes

* TProcListMonThread bug fixes

* Performance Counter Viewer application rewritten using new Performance Data Helper API

* TMiTeC_Display , TMiTeC_Machine , TMiTeC_Media , TMiTeC_Monitor and TMiTeC_Network now uses TMiTeC_Devices externally via new property MiTeC_Devices.

12.1.0 23.11.2016

+ TSysMonThread enhanced (Power, battery, ...)

+ TProcMonThread enhanced (modules, handles, windows enumeration)

+ Added TProcListMonThread for real-time monitoring of running processes (MSI_ProcListMon.pas)

+ Added TSvcListMonThread for real-time monitoring of installed services and drivers (MSI_SvcListMon.pas)

+ Added TSysModListMonThread for real-time monitoring of system modules (MSI_SysModListMon.pas)

+ Added TNetConMonThread for real-time monitoring of network connections (MSI_NetConMon.pas)

+ Added Demo 20 for TNetConMonThread demonstration

* TMiTeC_ProcessList rewritten from the scratch using new TProcListMonThread and TSvcListMonThread

* Demo 06 and 18 rewritten using new TProcListMonThread and TSvcListMonThread

12.0.0 2.10.2016

- TMiTeC_CPUUsage component removed (MSI_CPUUsage.pas)

+ TSysMonThread (MSI_SysMon.pas) added, provides cpu usage, cpu clock and memory measuring in realtime

+ TProcMonThread added, process monitoring (cpu, io, memory usage) including process threads (MSI_ProcMon.pas)

+ Added new demo for TSysMonThread and TProcMonThread ( 18,19 )

* TMiTeC_ProcessList optimized (MSI_Processes.pas)

* Fixed all compiler warnings

+ new component icons

+ new HTML Help

* removed all obsolete (Win9x, D5, D6) code

* removed compatibility with old SIS files

* TMiTeC_NTSpecific and TMiTeC_VistaSpecific properties were moved to TMiTeC_OperatingSystem and components removed (MSI_OS.pas)

- TMiTeC_Resources removed (MSI_Memory.pas)

- MiTeC_D5C.pas and MiTeC_D6C.pas removed

* MiTeC_SIS.pas renamed to MiTeC_SIF.pas

+ User-defined data storage mechanism enhanced - TMiTeC_Component . SaveToStorage , LoadStorageInfo

+ Added new demo for StreamCodeProcedure usage (how to compress/encrypt and decompress/decrypt data in System Information File) ( 02 )

- MiTeC_Console removed (MSI_Console.pas)

11.6.3 19.7.2016

+ Single process monitoring routines and demo (MSI_Processes.pas)

+ Added DisableWMI property to TMiTeC_SMBIOS to optionally disable WMI detection method

* Bug fix in TMiTeC_DeviceMonitor (MSI_DeviceMonitor.pas)

11.6.2 14.5.2016

* Storage devices serial number detection enhanced

+ Delphi 10.1 Berlin compatibility

11.6.1 4.4.2016

* Display adapter memory size detection corrected

* Operating system version detection corrected

* Windows 2000/XP compatibility fixed

+ Network adapter detection enhanced (alias,dns,dns suffix,ipv4,ipv6)

11.6.0 4.2.2016

+ Disk detection rewritten, SMART threshold values and IdentifyDeviceData added (TMiTeC_Storage)

+ USB device ejection (for safe removal) (TMiTeC_USB)

+ PerfLib: New demo application

* APM detection bug fixes

* SMBIOS detection bug fixes

* EventLog detection bug fixes

11.5.9 11.12.2015

* Disk detection bug fixes

* CPU topology detection bug fixes

* APM detection bug fixes

+ Network adapters type recognition updated

+ Solid State Drive detection

+ New network adapters enumeration demo

! Delphi 5,6 support ended

11.5.8 5.10.2015

+ Delphi 10 Seattle compatibility

+ Samsung SSD temperature detection

+ Version Information reader and patcher (MiTeC_VersionInfo.pas)

+ New app Version Info Editor

* Fixed APM CPU frequency detection

11.5.7 5.8.2015

+ Windows 10 compatibility

+ Windows Live ID detection added (Win8+) (TMiTeC_OperatingSystem)

+ Logged user account image retrieval added (MiTeC_SysUtils.RetrieveUserAccountPicture)

11.5.6 3.6.2015

+ XE8 compatibility

11.5.5 22.3.2015

* Installed software detection improved (MSI_Software.pas)

* Domain detection fixed (MSI_Machine.pas)

+ Initial support for Windows 10

* Environment variables detection bug fixed (only first 4096 chars was processed)

* Device detection bug fixed (some devices with the same HardwareID were not listed)

+ Last shutdown datetime detection added (TMiTeC_Machine)

+ WinPE version detection

* Windows 8.1 product key detection corrected

+ MiTeC OnOff Switches is now bundled with MSICS

11.5.4 7.9.2014

+ Delphi XE7 compatibility

+ MiTeC_PerfUtils.pas added for easier work with Performance Library

+ Routines for process CPU usage evaluation added (MSI_CPUUsage.pas)

11.5.3 30.8.2014

* Bug fixes

11.5.2 18.5.2014

+ Delphi XE6 compatibility

* Bug fixes

+ Domain/Workgroup detection enhanced (MSI_Machine)

+ Inter-process communication interface added (MiTeC_IPC.pas)

11.5.1 1.11.2013

* Fixed Windows 8.x activation check

* Fixed Windows 8.x product key decoding

11.5.0 23.10.2013

+ UEFI detection (MSI_SMBIOS.pas)

+ SMBIOS 2.8 support (MSI_SMBIOS.pas)

+ Genuine (Activated) Windows detection (MSI_OS.pas)

+ Antivirus, AntiSpyware and Firewall detection (MSI_Security.pas)

+ Wi-Fi available networks detection (MSI_WIFI.pas)

11.4.0 29.9.2013

+ Delphi XE5 compatibility

+ Compatibility mode detection -> true windows version

+ WinPE compatibility

+ Windows 8.1 compatibility

* Autoruns detection fixed and enhanced (TMiTeC_Startup)

* Microsoft product registration detection fixed and enhanced (TMiTeC_MSProduct)

11.3.0 1.9.2013

* Fixed VMWare virtual machine detection

* Fixed Microsoft Office product detection

* Fixed Active Directory detection

11.2.0 24.7.2013

+ Added procedure Clear for all component. It clears all data.

* Fixed bug in TMiTeC_Startup

* Fixed storage device serial number detection bug

11.1.0 16.5.2013

+ XE4 compatibility

11.0.0 8.4.2013

+ XE3 compatibility

+ Windows 8 compatibility

+ EventLog component

+ ActiveDirectory component

+ Enhanced process detection (TMiTeC_ProcessList)

+ Added session capability scan for all components (it allows scan e.g. logged user from a service, or different users in Terminal Services environment)

+ New file storage format (SIF) with backward compatibility and with encoding and/or compression capability

+ New ActiveDirectory Explorer demo application

+ Many new APIs added (Terminal Services, SQLite 3 etc.)

- Overview dialog removed from TMiTeC_SystemInfo (MSI_GUI.pas) to make it more lightweight

* MSI_GUI.pas renamed to MSI_SystemInfo.pas

+ TMiTeC_Startup completely rewritten, better and enhanced detection, easier data handling

* Internal data storage in TMiTeC_Devices rewritten to remove memory leaks

* Internal data storage in TMiTeC_TCPIP rewritten to remove memory leaks

+ Multiple display adapters support (TMiTeC_Display)

+ BIOS/ECF information detection enhanced (TMiTeC_BIOS)

+ Process handles enumeration

+ SMBIOS Electrical Current Probes, Voltage Probes and Cooling Devices enumeration

10.9.2 10.9.2012

+ support for SMBIOS 2.7.1

* fixed Delphi 5 compatibility

10.9.1 13.4.2012

+ initial support for Windows 8

* enhanced compatibility with XE2 (32 and 64-bit)

* fixed CPU core and thread number evaluation

+ added Machine GUID detection (TMiTeC_OperatingSystem)

* fixed XML UTF encoding

10.9.0 9.11.2011

+ support for Delphi XE2 (32 and 64-bit)

+ support for Delphi XE

* fixed installed programs installation date

* fixed and enhanced CPU cache detection

* fixed CPU core and thread number evaluation

* fixed storage devices detection (serials and signatures)

* fixed MS products serial numbers detection

10.8.9 18.1.2010

+ support for SMBIOS 2.6

+ added support for x64 OS editions

+ MS Product Digital IDs detection enhanced to get all installed

+ OS detection completely rewritten

* fixed Audio detection

* many user reported bugs fixes

10.8.8 9.12.2009

+ support for Intel i7 processors

+ added two new properties to TMiTeC_Software - property SystemComponents and property OnlyRemovable and detection routine has been fixed and enhanced.

+ Monitor detection enhanced

* fixed compatibilty with Delphi 5

* fixed many user repoted bugs

10.8.7 17.9.2009

+ compatibility with RAD 2010

+ full support for Windows 7 and Server 2008

+ CPU detection corrected to be compliant with latest CPUs

+ EventLog detection highly improved

+ added SMBIOS detection via WMI to be compliant with latest SMBIOS versions

* fixed many user repoted bugs

10.8.6 30.1.2009

+ compatibility with RAD 2009 Unicode

+ initial support for Windows Seven

* MiTeC_Advapi rewritten to be compatible win RAD 2009

+ added MiTeC_Svc to enable service functioning in earlier versions of Delphi

*/+ fixed many bugs in MSI_Processes and added some new or better functionality

* fixed load bugs in MSI_OS and MSI_Machine (date props were not loaded from storage file)

* fixed bugs in MSI_CPUUsage under Server 2008 and Seven

10.8.4 23.9.2008

+ added Delphi 2009 (Unicode) compatibility

* bug fixes

10.8.3 28.3.2008

+ added domain detection (TMiTeC_Machine)

+ added session detection (VMWare,VirtualBox,VirtualPC,QEMU,Terminal Server,Citrix) (TMiTeC_Machine)

10.8.2 3.3.2008

+ Windows Server 2008 compatibility

* many minor bug fixes

10.8.1 19.9.2007

* fix problem with Bluetooth detection under OS < XPSP2

* fix bug causing exception under Win9x in TMiTeC_Network

* minor bug fixes

+ many APIs extensions (MiTeC_IpHlpAPI.pas, MiTeC_NetAPI.pas)

10.8.0 15.8.2007

* XML report bugs fixed

* fixed problem with BSOD on some systems during Storage detection

+ added Network Environment (shares, open files, sessions, connections) detection to TMiTeC_Network

+ added Bluetooth devices detection (MSI_BT.pas)

+ added new demo (11) demonstrating TMiTeC_BT (Bluetooth)

+ added Bluetooth device connection/disconnection signaling in TMiTeC_DeviceMonitor

+ added common device recognizing in TMiTeC_DeviceMonitor

* fixed bug in MiTeC_CPUUsage (first returned value is negative)

* prevent to multiple detect same monitors (TMiTeC_Monitor)

10.7.0 12.4.2007

* APM detection completely rewritten, now detects bateries and processor idle states too (TMiTeC_APM)

+ Power Policy Applicator API added (MiTeC_PowrProf.pas)

+ new demo (10) featuring new APM added

+ CPUUsage now measures all available processors

* minor bug fixes

10.6.1 31.1.2007

* added forgotten XML report routine for TMiTeC_Disk

* fixed OS edition recognition for Windows Vista x64

* fixed device description, name and location detection under Windows Vista (TMiTeC_Devices)

* fixed AMD CPU detection (TMiTeC_CPU)

* fixed bug in APM battery status (TMiTeC_APM)

* fixed SMBIOS reading error under 64bit OS (TMiTeC_DMA)

10.6.0 22.12.2006

+ added SMARTDetect property in TMiTeC_Storage to optionally choose S.M.A.R.T. attributes reading. This can cause restart on some win9x machines.

+ added Vista compatibility

+ added TMiTeC_VistaSpecific subcomponent to TMiTeC_OperatingSystem (MSI_OS.pas)

+ OS detection rewritten (functions GetOS and RecognizeOS in MiTeC_Routines.pas replaced by GetOSName)

+ added OSEdition, OSName, BuildLab and VistaSpecific properties to TMiTeC_OperatingSystem

- property TMiTeC_OperatingSystem.CSDEx removed

* fixed error in XML reports (bad replacing of #0..#31 chars in data)

10.5.0 27.11.2006

* VMWare and VPC properties removed from TMiTeC_Machine to prevent automatic calling of VMWare and VPC detecting routines that can cause machine reboot. Use standalone IsVPC and IsVMWare functions instead if needed.

* fixed bug in TMiTeC_Storage (Under non-admin rights some devices were not succesfully detected)

* fixed bug in TMiTeC_ASPI32 (Bad HostAdapter,LUN and Target detection)

+ XML reports are back! New format and XSLT file for viewing embedded.

+ Dual Core (Intel, AMD) processors detection added (2 new properties: CorePerPackage, LogicalPerCore)

+ new property TMiTeC_CPU.Architecture added to detemine 64bit processors

* TMiTeC_USB.ConnectedDevices returns real number of connected devices

* Windows 95 OS versions detection fixed (TMiTeC_OperatingSystem)

* SMBIOS reading optimized for some unusual locations in memory

+ added Apple QuickTime and Microsoft Windows Installer engines detection (TMiTeC_Engines)

+ added new properties DriverPath, DriverVersion and Monitor to TMiTeC_Printers

+ added new application Test for component testing

+ added IsWow64 (MiTeC_Routines) variable to recognize if 32bit app running under 64bit os.

10.4.0 19.7.2006

* fixed memory leaks in TMiTeC_USB, TMiTeC_MSProduct and TMiTeC_Printers.

* fixed critical bug in TMiTeC_Storage (throws exception under special conditions)

* fixed bug in TMiTeC_Storage (bad assignment of logical drive to its layout)

* fixed runtime packages (*.dpk) for D5-D2005 (missing files)

* fixed IsNT and IsNT5 variable (MiTeC_Routines.pas) for XP64

10.3.0 14.7.2006

* fixed and improved Hotfix detection (property TMiTeC_NTSpecific.Hotfixes removed, now all info is in property TMiTeC_NTSpecific.Update[Index: cardinal] and TMiTeC_NTSpecific.UpdateCount)

* fixed and improved storage devices detection (TDeviceInfo.Vendor removed, vendor info in now part of TDeviceInfo.Model, TDeviceInfo.VendorStr removed)

* fixed DotNet version detection

+ NEW component TMiTeC_MSProduct (MSI_MSProduct.pas) added. It detects some Microsoft products installed and their product keys

+ NEW component TMiTeC_DriveContent (MSI_DriveContent.pas) added. It scans and saves specified drive content

+ NEW component TMiTeC_DiskMonitor (MSI_DiskMonitor.pas) added. It watches specified drive or path and fires event when specified event occurs

+ added new demo DirMonitor

+ fixed TMiTeC_Internet (MSI_OS.pas) default internet browser detection and added two new properties DefaultBrowsername and DefaultMailClientName

+ Runtime packages were split to two files. Common routines (MSI_Common_XXX.dpk) and MSICS files (MSICS_XXX_Rtl.dpk).

* many fixes and minor improvements

10.2.0 9.3.2006

+ CPU feature flags detection rewritten and some flags added

+ added conditional compile of load/save to storage file capability

+ USB enumeration improved, underlying devices of USB device detection added (e.g. disk drives, mouse etc.)

+ NEW component TDeviceMonitor added. Fires event when any device (usb,firewire,etc.) or volume (network disk,etc.) is connected/disconnected (see demo 8)

+ Added two new properties in TMiTeC_Machine for virtual machine detecting (VMWare, VirtualPC)

+ added new application WMI Explorer

* fixed bug in TMiTeC_Storage under VMWare running Win9x

+ added two new interface units MiTeC_LSAAPI.pas and MiTeC_NTSecAPI.pas for Windows security operations

10.1.0 2.2.2006

+ added WMI support (MiTeC_WbemScripting_TLB.pas, MiTeC_WMI.pas)

+ added new property TMiTeC_NTSpecific.NumberOfLicensedUsers

+ added new property TMiTeC_NTSpecific.NumberOfUsers

+ added new property TMiTeC_NTSpecific.UpdateCount and TMiTeC_NTSpecific.Update[index] ... collects info about OS updates and hotfixes

- property TMiTeC_NTSpecific.HotFixes becomes obsolete but not deleted

+ added new application WMI Explorer

+ added new WMI demo (7)

+ added WinXP64 recognition

+ added CD/DVD device read/write capabilities recognition (NT only)

+ added storage device type, media type and bus type recognition (NT only)

+ added storage device detection under non-admin rights (NT only)

10.0.0 2.1.2006

+ Added new possibility to save/load all data from/to every component. This can be done by using two new methods: SaveToStorage and LoadFromStorage. The Microsoft OLE Structured Storage is used for data storage. New property StorageFileName contains current loaded storage filename and property StorageInfo contains information about loaded storage data. Property LiveData indicates if component contains "live data" from running machine or loaded offline data from storage file.

+ MSI application completely rewritten to support new load/save capability and now contains Summary Report capability to evaluate opened data in many categories.

+ added BDS4 (Delphi 2006) compatibility

- method Report was removed (all XML reports were moved to new file MSI_XML_Reports.pas (for TMSI_GUI this procedure is in MSI_GUI.pas) and now are standalone procedures).

- XML reports are no longer supported.

- event OnReport was removed

* TMiTeC_Startup completely rewritten, data are now TStrings with items formatted as Name=RunComand

* fixed GetSysInfo OLE AV

* fixed many minor bugs

9.4.3 1.11.2005

* fixed SMBIOS reading under non-admin rights

9.4.2 18.10.2005

+ added SMBIOS reading under W2003 Server SP1

* minor fixes

9.4.1 26.9.2005

* fixed bug in allocating/deallocating of dynamic arrays (many memory leaks removed)

* fixed HDD temperature detecting bug

* minor fixes

9.4.0 16.9.2005

* fixed AV bug in CPU detection, fixed physical and logical processor recognition and CPUID execution affinity setting

+ TMiTeC_Storage redesigned to be more intuitive, added drive location address enumeration and HDD temperature evaluation

* fixed bug in HotFix enumeration (invalid data for value Installed)

* fixed small memory leak in TMiTeC_ProcessList

+ added OnDebug event to TMiTeC_MSIC_Component for debug purposes

9.3.0 17.8.2005

* fixed CPU speed measuring and Pentium 4 Family 15

9.2.0 13.8.2005

* fixed wrong graphic card detection under Win9x

* fixed small bug (adapters not cleared on refresh) in MSI_Network.pas

* TInstallRecord.Installdate changed from TDatetime to shortstring (MSI_Software) to prevent datetime decode error (too many formats)

+ added installed software detection for Current User only instalation.

* CPU speed measuring precised to get nominal processor speed

* CPU recognition of Family 6 Model 11 Intel and Family 15 processor corrected.

* Demo 1 redesigned

9.1.0 31.5.2005

* memory leak in TMiTeC_ProcessList removed

+ added new function GetProcessCommandLine (MiTeC_Routines.pas)

9.0.0 24.5.2005

* all TPersistent classes (subcomponents) were renamed to TMiTeC_%old_name% and become real standalone components (TComponent) based on special TMiTeC_MSIC_Component base class. Refresh methods (Refresh, GetInfo) renamed to RefreshData and now is virtual.

+ OnReport event added. It provides possibility to override standard XML report with custom one.

* Storage detection completelly rewritten (TStorage)(no backward compatibility with old one) Win9x devices are now detected, logical disks are mapped to physical devices.

* Printer detection completelly rewritten (TPrinters)(no backward compatibility with old one)

* property TMiTeC_BIOS.Name was renamed to NameString

* property TMiTeC_Machine.Name was renamed to MachineName

* fixed bug in TMiTeC_Printers (list index out of bounds)

* fixed bad detecting of some devices

* fixed Pentium III detection

* fixed Pentium III detection

+ HTML help added

8.7.5 12.1.2005

+ CPU detection completely rewritten, now supports SMP a newest processors

* Some memory leaks fixed

* User reported bugs fixed

8.7.3 3.12.2004

+ Added InstallDate and ProductKey detection under Win9x (these props were moved from TNTSpecific to TOperatingSystem)

+ Added Delphi 2005 compatibility

+ TSoftware rewritten, added InstallDate, InstallSource and Company name info

* User reported bug fixes

8.7.2 14.10.2004

* Fixed InstallDate error under Win9x

8.7.1 11.10.2004

+ Added InstallDate property in TNTSpecific (MSI_OS.pas)

+ Added Browser Helper Objects enumeration in TStartup (MSI_Startup)

* Minor fixes in TUSB (MSI_USB.pas), TInternet (MSI_OS.pas)

8.7.0 7.9.2004

+ Added Win2K/XP/2003 ProductKey detection (TNTSpecific.ProductKey)

+ Added TProcessList new property for detection range

* Fixed memory leaks and bugs in TProcessList

* Fixed TSMBIOS bugs

* Extended hotfix description added (TNTSpecific.HotFixes)

* Precised EDID decoding (TMonitor)

* Minor bug fixes

8.6.5 17.6.2004

* Minor bug fixes

8.6.4 3.6.2004

* CPU frequency calculating precised (TCPU)

* Fixed bug in TConnections (MiTeC_Shares.pas)

* Fixed special character coding in XML reports

* Fixed proxy detection (TInternet)

8.6.3 23.4.2004

* Fixed bug in TMonitor caused unreadable chars occurence in Monitor name

* Fixed problem with service listing under Win2003 server

8.6.2 8.4.2004

* Bug fixes

+ Added detection for Intel Centrino (TCPU)

8.6.1 30.3.2004

* Bug fixes in TProcessList / TNetwork / TTCPIP

8.6 25.3.2004

* Bug fixes in TDMA / TSMBIOS / TDevices

+ Added AMD Athlon 64, Athlon 64 FX and Opteron recognition (TCPU)

+ Added Transmeta Efficeon recognition and smoother Crusoe numbering recognition (TCPU)

* TNetwork.Adapters property splitted to two ones: VirtualAdapters and Physical Adapters. Property NetworkCard and CardAdapterIndex was removed.

* TOperatingSystem.ProxyServer property type changed to TStrings.

+ Added OpenGL, Internet Explorer and .NET Framework version detection (TEngines).

+ TProcessList is now fully implemented

+ Added new application Process Viewer (demonstrates all possibilities of TProcessList)

+ In design time the Refresh method is not called automatically, see new property _Refresh

+ Categorized properties (D6,D7)

8.5 6.11.2003

* Error handling is now conditionally defined

+ Added NetBIOS API unit (MiTeC_NetBIOS.pas)

+ Added VendorID,DeviceID,SubSysID and Revision to TDevice record (MSI_Devices.pas)

+ Added new subclass TMonitor (MSI_Monitor.pas) with Monitor detection (EDID)

8.4 10.10.2003

* New error handling and journaling (MSI_ExceptionStack.pas, MiTeC_Journal.pas)

* Fixed bug in TDevices.Report (bugs in XML formatting and syntax)

* Fixed bug in TDMA/TSMBIOS (exception under non admin rights under NT, reading only first 256 bytes of 64K memory block)

* Fixed bug in TStorage (now can detect fixed drives under NT without admin rights)

+ Added Memory Devices enumeration in TSMBIOS amd bug fixes

8.3 19.8.2003

+ (Re)Added "load from file" possibility to TDMA/TSMBIOS

+ Added USB devices enumeration (MiTeC_USB.pas, MSI_USB.pas) + new demo

+ Added new process enumeration (MSI_Processes) + new demo

+ Added HotFixes for NTSpecific info in TOperatingSystem

+ Added On-Board Devices evaluation in TSMBIOS

+ Added SMBIOS 2.3.4 compatibility

+ Added detection of AMD Opteron, Intel PM, NSC and SiS processors

+ Added software version in TSoftware

- Removed files MiTeC_EnumNT, MiTeC_Enum9x, MiTeC_PerfLibNT, MiTeC_PerfLib9x, MiTeC_ToolHelp32

* CompInfo application completely rewritten and renamed to MSI

* Storage devices enumeration rewritten (MSI_IDE/TIDE renamed to MSI_Storage/TStorage) + new demo

* Fixed bugs in OS detection

* Most of memory leaks removed

8.2 9.4.2003

* Fixed CPU Cache detection bug

* Fixed CPU speed detection ("division by zero" error)

* Fixed bug in SMBIOS under VMware

* Extended and precised SMBIOS detection

+ OS detection precised (Windows Server 2003 etc. support added)

+ Added East Europe charset support in XML report

+ Added GetCPUUsage function to MSIC.DLL

8.1 24.3.2003

* Bug fixes (TCPU, TMemory)

* XML Bug fix

+ Added ShadeBlend and ColorManagement display capabilities enum, Video BIOSString, Physical video size and Device Driver Version properties (TDisplay)

+ New Direct Memory Access component (MSI_DMA)

+ ROM BIOS Explorer rewritten

+ SMBIOS completely rewritten using TDMA

+ TMStorageDevices rewritten, renamed to TIDE (MSI_IDE.pas) and included to MSystemInfo

+ Added resource enumeration for devices (only NT) (TDevices)

+ Redesigned Devices report

+ New demos

+ Added System Overview page to Report Viewer

+ Added interface file for MSIC.DLL and simplified function calling

8.0 24.2.2003

* Many bugs fixed

+ Full startup enumeration (TStartup)

+ Added HDD info evaluation from registry (TMStorageDevices) + New demo for TMStorageDevices

* CPU detection precised (Intel, AMD)

+ Added Intel Itanium, Northwood and Prestonia support (TCPU)

+ Added CPU architecture flag (TCPU)

+ Reports are rewritten to XML output

+ Added standalone XML Report Viewer

+ Added VerticalRefreshRate detection (NT only) (TDisplay)

+ Added Windows .NET recognition (TOperatingSystem)

- Removed ControlPanel Applet application

+ Added MSIC.DLL for access to MSI data from any application (see Demo)

7.73 11.11.2002

+ Added Startup evaluation in SYSTEM.INI (TStartup).

Handle Memory Controller Information specially as some BIOSes (Award Modular BIOS v4.51PG, P6BX-A+ Ver 3.2c, 11/28/1998) (TSMBIOS). (it caused bad memory module recognition)

* Fixed bug in DAO/ADO version detection (MSI_Engines)

* Bug fixes

7.72.1 20.10.2002

+ Delphi 7 compatibility added

7.72 16.9.2002

+ Extended memory detection in TSMBIOS (if table 6 does not get info, using table 17)

+ Added support for Mobile Tualatin (TCPU)

* Memory leaks in MSI_Network removed and list index bug fixed

* Fixed all "silent exceptions" (i hope) thrown when "Stop On Delphi exception" in IDE is set on.

7.71 11.9.2002

* Minor bug fixes

7.7 29.8.2002

+ Added interface for some undocumented native Win API (MiTeC_Native.pas)

+ Added unit for shell extensions (context menu command, file type associations...) (MSI_Shell.pas)

+ Added HDD Serial, Model and Revision number and geometry info detection as standalone component (TMStorageDevices in MSI_SD.pas)

* Package split to runtime and designtime part

* Many bug fixes (TSMBIOS, TPrinters, TTimeZone, TDisplay, TNetwork etc.)

7.62 18.4.2002

* Reimplemented CPU detection part (TCPU)

* many properties added or renamed

+ added Intel Willamette, Transmeta Crusoe and VIA C3 processors support (TCPU)

+ Reimplemented CPU Cache detection (TCPUCache)

* fixed Intel cache detection

* added support for AMD Duron and AMD Athlon Level 2 Cache detection and description

+ Added Hyper-Threading Technology cpu feature flag detection (TCPUFeatures)

+ Enhanced SMBIOS Table Access (TSMBIOS)

* Fixed bugs in TCP/IP configuration detection (TTCPIP)

7.61 9.4.2002

+ Re-added BIOS detection (TBIOS in MSI_Machine.pas)

* TCP/IP detection bug fixes and enhancements (TTCPIP)

* Display detection bug fix (TDisplay)

7.6 8.4.2002

* SMBIOS bug fixes

+ More SMBIOS details enumerated

+ Added TCP/IP configuration detection (TTCPIP in MSI_Network.pas, MiTec_IpHlpAPI.pas)

7.5 18.3.2002

* SMBIOS si now read under any type of account in NT systems, not only Local Admin.

7.4 4.3.2002

+ Added SMBIOS/DMI enumeration (TSMBIOS in MSI_SMBIOS.pas) - TMachine reimplemented

+ New application ROM BIOS Explorer added

* Resources info moved to separate object TResources (MSI_Machine.pas)

* Minor fixes

7.32 26.2.2002

* MSI_Overview.pas and MSI_DetailDlg.pas added to package to prevent compilation problems under Delphi 5 Enterprise

7.31 19.2.2002

* Fixed some memory leaks (TMachine)

7.3 14.2.2002

+ Reimplemented Win9x resources detection, now available under all platforms. (TMemory)

+ System Overview dialog is now live (dynamically shows memory, resources, cpu usage etc.)

+ Added new unit MiTeC_Params managing application parameters

* MiTeC_Routines splitted to MiTeC_Dialogs, MiTeC_StrUtils, MiTeC_Datetime

7.2 5.2.2002

+ Added AMD Athlon/Duron recognition (TCPU)

+ Extended console demo application

+ Reimplemented device detecting under Win9x (TDevices)

7.1 8.1.2002

+ Added more info in ASPI32 configuration

+ Added Locale information (TLocaleInfo in MSI_OS)

7.0 4.1.2002

+ Added Intel Cache Description (TCPU)

+ Added DS,ACPI,TM,SSE2,SS,CLFSH cpu features detection (TCPU)

* Fixed Pentium III/Celeron and OverDrive recognition (TCPU)

+ Added Process Enumeration (MSI_EnumNT, MSI_Enum9x)

+ Added Service Enumeration for NT (MSI_EnumNT, MiTeC_AdvAPI)

+ Added Driver Enumeration for NT (MSI_EnumNT, MiTeC_AdvAPI)

+ Added Account Enumeration for NT (MSI_AccountsNT)

+ Added Scheduled Task enumeration for NT (MiTeC_JobsNT)

+ Added Event Log enumeration for NT (MiTeC_EventLogNT)

+ Added ASPI32 Configuration detection (MiTeC_WnASPI32, MSI_Engines)

* MSI_DirectX removed, TDirectX moved to TEngines (MSI_Engines)

+ New demos

6.4 13.11.2001

* Minor fixes

* Added TMachine.DELL_ServiceTag for DELL machines

6.3 12.10.2001

* Many XP and bug fixes

* TSoftware.Installed property renamed to TSoftware.Products

+ Added uninstall string info for installed software (TSoftware.Uninstalls)

6.2 16.8.2001

+ ASPI version detection added (TEngines)

+ Added sharepoints, sessions and open files enumeration (MiTeC_Shares.pas)

* Minor code changes

6.1 13.8.2001

+ Added some internet settings (TOperatingSystem.TInternet)

+ Added ExceptionMode property to some comps to decide what to do when exception is thrown during refresh

* Minor bug fixes

6.0 24.7.2001

!!!! DEVELOPMENT AND COMPATIBILITY FOR DELPHI 2,3,4 HAS BEEN ENDED!!!!!!!!

+ Delphi 6 compatible (all read-only properties are now really read-only, be sure to configure Object Inspector to show them)

+ Added new object TMSI (like TMSystemInfo but no editors and no components) for using in console applications (MSI_Console.pas)

+ TMSystemInfo moved to new unit MSI_GUI.pas (MSystemInfo.pas contains only register and editors code now)

5.6 26.6.2001

+ Added Performance Library objects (NT & 9x)

+ Added Microsoft ADO detection (TEngines)

+ Added NT Service Pack 6a detection (TOperatingSystem)

+ Added Windows XP detection (TOperatingSystem)

+ Added DVD Region detection (TOperatingSystem, only >Win95)

+ Added Product Key and Product ID (TOperatingSystem)

+ TPrinters reimplemented and Port info added

* Some memory leaks removed

5.5 11.6.2001

* Fixed bug in TDisk.SetDisk causing bad UNC displaying

* Fixed bug in TDisplay.GetInfo causing AV

* Fixed TMCPUUsage under Win9x

5.4 31.5.2001

* Fixed bug in TStartup causing Access violation.

+ Added apps run from WIN.INI in TStartup.

+ Added new component TMCPUUsage for CPU usage watching.

5.3 14.5.2001

* Control Panel applet renamed to MSI.cpl

* CPU Cache and CPUID detection bugs fixed in TCPU.

* TMedia now enumerates all sound devices.

* TDisk.DriveType property renamed to MediaType.

* Network, Sound and Display properties detecting reimplemented and fixed (now TDevices is used to obtain installed adapters).

* TDisplay.Adapters reanemd to TDisplay.Adapter and cast to string.

* TDisplay.DACs renamed to TDisplay.DAC and cast to string.

* TDisplay.Chipsets renamed to TDisplay.Chipset and cast to string.

* TDisplay.Memories renamed to TDisplay.Memory and cast to integer.

+ Pentium IV detection added in TCPU.

+ Added Startup programs enumeration (TStartup).

+ Added Windows NT and 2000 specific information in TOperatingSystem (TNTSpecific).

+ TNetword.CardAdapterIndex property added. Identifies what item in TNetwork.Adapters is physical network card.

+ TMedia.GamePortIndex property added. Identifies what item in TMedia.Devices is GamePort.

+ TMedia.SoundCardIndex property added. Identifies what item in TMedia.Devices is physical sound card.

- TDisplay.Accelerators property removed (it seems to be never used).

- TCPU.BusSpeed property removed (this value was only estimated and in many causes was wrong).

- TDisk.Model property removed (never used).

5.2 14.5.2001

+ Added component and property editor

+ Added Microsoft DAO detection

+ Added process enumeration

+ Added NT product type identification

+ Added Control Panel applet based on this component

* Report format changed

* CPU Cache detection reimplemented

5.1 ?

+ Enhanced CPU name recognition

+ Fixed bugs in device detection

5.0 ?

+ Reimplemented and rearranged CPU detection

+ Added device class recognition

+ Fixed bugs in device detection

+ Demo application rearranged

* Source split to more files

4.5 ?

+ Reimplemented device detection. Now all installed devices are detected

- TDevices published properties removed except Printers (renamed)

+ New TDevices public property DeviceCount and Devices[Index] added

+ Delphi 3 compatibility forced

4.4 16.3.2001

+ Reimplemented CPU features detection

+ Added new CPU features detection (3D Now!, SIMD...)

* All TCPUFeatures properties renamed

+ Added TCPU properties VendorID_Raw and Vendor_Raw

4.3 ?

+ Added additional device detection (Infrared, Image, Tape...)

+ Fixed some user reported bugs

Remain of history is lost in the darkness


Demos and Applications

Applications

Demos

Active Directory Explorer

Demo 01 - Complex system information demo

MiTeC System Information X

Demo 02 - StreamCodeProcedure demo (how to compress/encrypt and decompress/decrypt data in System Information File)

Performance Counter Viewer

Demo 03 - Installed software and Microsoft® product enumeration demo

MSICS Test

Demo 04 - USB devices enumeration demo

Version Info Editor

Demo 05 - Storage devices enumeration demo

WMI Explorer

Demo 06 - Processes and services enumeration demo

Demo 07 - WMI system information demo

Demo 08 - Device Monitor demo

Demo 09 - Directory Monitor demo

Demo 10 - Advanced Power Management demo

Demo 11 - Bluetooth device enumeration demo

Demo 12 - EventLog browsing demo

Demo 13 - Device manager demo

Demo 14 - CPU test demo

Demo 15 - AntiVirus, AntiSpyware and Firewall enumeration demo

Demo 16 - Wi-Fi network enumeration demo

Demo 17 - Network interface enumeration demo

Demo 18 - Process real-time monitor demo

Demo 19 - Process and system monitor demo

Demo 20 - Network connections monitor demo

Demo 21 - Performance counters demo

Demo 22 - Handles enumeration

Demo 23 - Task Scheduler interface

Demo 24 - Network Credentials

Demo 25 - USB History

Demo 26 - Known Wi-Fi networks

Demo 27 - Windows Firewall

Demo 28 - Working with certificates

Demo 29 - Working with Network utlities

Demo 30 - Monitor detection

Demo 31 - Drive Content

Demo 32 - Available and installed Windows updates

Demo 33 - GPU Utilization

Demo 34 - Firmware and SMBIOS

Demo 35 - Network Configuration Class

Demo 36 - SMBIOS


Registration

MSICS is freeware in compiled form.

If you want to get full source code of MSICS and all applications you must register.

License types and prices are published on MSICS site .

You are granted a non-exclusive, royalty-free right to reproduce and redistribute executable files created using the Software (the "Executable Code") in conjunction with software products that you develop and/or market (the "Applications").

The registered version with source code allows the user to produce any changes in the source code for personal use without agreement with the author.

After registering you will get any further version of MiTeC System Information Component Suite sources for free.

Purchased registered version is delivered as soon as possible by e-mail.

Click on PayPal logo below to get to order page


Components

TMiTeC_AD | TMiTeC_Monitor
TMiTeC_APM | TMiTeC_MSProduct
TMiTeC_BT | TMiTeC_Network
TMiTeC_CPU | TMiTeC_OperatingSystem
TMiTeC_DeviceMonitor | TMiTeC_Printers
TMiTeC_Devices | TMiTeC_ProcessList
TMiTeC_Disk | TMiTeC_Security
TMiTeC_DiskMonitor | TMiTeC_SMBIOS
TMiTeC_Display | TMiTeC_Software
TMiTeC_DMA | TMiTeC_Startup
TMiTeC_DriveContent | TMiTeC_Storage
TMiTeC_Engines | TMiTeC_SystemInfo
TMiTeC_EventLog | TMiTeC_USB
TMiTeC_Machine | TMiTeC_WiFi
TMiTeC_Media | TMiTeC_Firewall
TMiTeC_Memory | TMiTeC_MUS

TMiTeC_NetCreds

TMiTeC_USBHistory

TMiTeC_WLANC


TMiTeC_Component

Components ››

TMiTeC_Component is ancestor for most of MSICS components. It contains data manipulation functions for writing and reading data to/from System Information File and some common properties.

MSI_Common.pas

TObject → TPersistent → TComponent → TMiTeC_Component

Methods

Clear | public | Clears all data
LoadFromStorage | public | Loads data from System Information File
RefreshData | public | Refreshes data from current system
SaveToStorage | public | Saves data to System Information File
SetSession | public | Sets session ID. Subsequent RefreshData takes it into consideration when detecting dependent data. You can use it for gathering data e.g. from service for different logged users (every logged user has its own session)
LoadStorageInfo | public | Loads TStorageInfoRecord or any other user defined header from System Information File

Properties

_About | published, read-only | string | Contains copyright, suite name and version
_Refresh | published, read-only | string | Serves as button for getting system information in design time in Object Inspector
ConvertTimeToLocal | public | boolean | If True all timestamps dependent on timezones are converted to local time else all timestamps are left intact
DataAvailable | public, read-only | boolean | True indicates there are data gathered from current system or loaded from System Information File
LiveData | published, read-only | boolean | True indicates data is from from current system, False indicates data was loaded from System Information File
LoggedUser | public, read-only | string | Contains name of logged user (in case parent application is service then it contains not service accoutn but really logged user)
SessionID | public, read-only | Cardinal | Contains session ID of logged user session
SessionType | public, read-only | TSessionTypes | Contains active session types
SID | public, read-only | string | Contains SID (security identifier) of logged user
StorageFilename | public, read-only | string | If data was loaded from System Information File it contains its filename otherwise is empty
StorageInfo | public, read-only | TStorageInfoRecord | if data was loaded from System Information File it contains information about this file and contained data
StreamCodeProc | public, read-only | TCodeStreamProcedure | References used encoding procedure for data reading/writing from/to streams to System Information File

Events

OnReadHeader | public | THeaderReader | Event fires when Summary Information is read from System Information File . When assigned it replaces default header reader.
OnWriteHeader | public | THeaderWriter | Event fires when Summary Information is written to System Information File . When assigned it replaces default header writer.


RefreshData

Components ›› TMiTeC_Component ››

Referenced by: TMiTeC_Component

procedure RefreshData(AScanObjects: TScanObjects = soAll); virtual;

Description

Refreshes data from current system. AScanObjects parameter has sense only when called from TMiTeC_SystemInfo .


Clear

Components ›› TMiTeC_Component ››

Referenced by: TMiTeC_Component

procedure Clear; virtual; abstract;

Description

Clears all data


SetSession

Components ›› TMiTeC_Component ››

Referenced by: TMiTeC_Component

procedure SetSession(ASessionID: Cardinal);

Description

Sets session ID. Subsequent RefreshData takes it into consideration when detecting dependent data. You can use it for gathering data e.g. from service for different logged users (every logged user has its own session)


SaveToStorage

Components ›› TMiTeC_Component ››

Referenced by: TMiTeC_Component

procedure SaveToStorage(const AFilename: string; var AWriteHeader: Boolean; AFormat: integer = 0; const AComment: string=''; ACodeStream: TCodeStreamProcedure = nil); virtual;

Description

Saves data to System Information File . AFormat is user-defined number saved into header which can be used for data format recognition in time of data loading. AComment is user-defined comment saved into header. ACodeStream is user-defined procedure for saving data in user-defined format.

See Also

Demo 02

demo


LoadFromStorage

Components ›› TMiTeC_Component ››

Referenced by: TMiTeC_Component

function LoadFromStorage(const AFilename: string; var AReadHeader: boolean; ACodeStream: TCodeStreamProcedure = nil): Boolean; virtual;

Description

Loads data from System Information File . ACodeStream is user-defined procedure for decoding data stored in user-defined format.

See Also

Demo 02

demo


LoadStorageInfo

Components ›› TMiTeC_Component ››

Referenced by: TMiTeC_Component

procedure LoadStorageInfo(const AFilename: string; AHeader: Pointer); virtual;

Description

Loads header from System Information File .

See Also

Demo 02

demo


TMiTeC_AD

Components ››

TMiTeC_AD provides Active Directory scanning and detection.

MSI_AD.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_AD

Methods

GetObjectAttributeNames | public | Retrieves all attribute names of given AD classname
RefreshComputers | public | Detects computers in directory service specified by ADBDatabse
RefreshDomain | public | Detects domain in directory service specified by ADBDatabse
RefreshGroups | public | Detects group in directory service specified by ADBDatabse
RefreshUsers | public | Detects users in directory service specified by ADBDatabse
SearchDirectory | public | Searches given directory service for specified object types

Properties

ADDatabase | published | string | Specifies the server or domain name used to bind to the object in the underlying directory service.
ComputerCount | public, read-only | Cardinal | Number of detected computers in scanned domain
Computers[Index: Integer] | public, read-only | TADObject | Access to indexed array of detected domain computers ( IADsComputer )
ComputersByIP[AIP: string] | public, read-only | TADObject | Access to indexed array of detected domain computers via IP address ( IADsComputer )
ComputersByName[AName: string] | public, read-only | TADObject | Access to indexed array of detected domain computers via name ( IADsComputer )
Domain | public, read-only | TADObject | Object representing current scanned domain ( IADsDomain )
GroupCount | public, read-only | Cardinal | Number of detected groups in scanned domain
Groups[Index: Integer] | public, read-only | TADObject | Access to indexed array of detected domain groups ( IADsGroup )
GroupsByName[AName: string] | public, read-only | TADObject | Access to indexed array of detected domain groups via name ( IADsGroup )
Password | published | string | Password used for connecting to scanned domain or directory service
User | published | string | Username used for connecting to scanned domain or directory service
UserCount | public, read-only | Cardinal | Number of detected users in scanned domain
Users[Index: Integer] | public, read-only | TADObject | Access to indexed array of detected domain users ( IADsUser )
UsersByName[AName: string] | public, read-only | TADObject | Access to indexed array of detected domain users via name ( IADsUser )

See Also

AD Explorer | application
MSIX | application


RefreshGroups

Components ›› TMiTeC_AD ››

Referenced by: TMiTeC_AD

procedure RefreshGroups;


RefreshUsers

Components ›› TMiTeC_AD ››

Referenced by: TMiTeC_AD

procedure RefreshUsers;


RefreshComputers

Components ›› TMiTeC_AD ››

Referenced by: TMiTeC_AD

procedure RefreshComputers;


RefreshDomain

Components ›› TMiTeC_AD ››

Referenced by: TMiTeC_AD

procedure RefreshDomain;


GetObjectAttributeNames

Components ›› TMiTeC_AD ››

Referenced by: TMiTeC_AD

procedure GetObjectAttributeNames(AADSPath,AUser,APwd,AClassname: WideString; AList: {$IFDEF UNICODE}TStringlist{$ELSE}TWideStrings{$ENDIF});


SearchDirectory

Components ›› TMiTeC_AD ››

Referenced by: TMiTeC_AD

procedure SearchDirectory(AADSPath,AUser,APwd: Widestring; AType: TADObjectType ; var AObjects: TADObjects );


TMiTeC_APM

Components ››

TMiTeC_APM retrieves AC, processor and battery power status

MSI_APM.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_APM

Properties

ACPowerStatus | published, read-only | TPowerStatus | Signals AC power type and presence
Battery[BatIndex: Byte] | public, read-only | TBatteryRecord | Array of enumerated present batteries
BatteryCount | published, read-only | Byte | Number of present batteries
BatteryChargeStatus | published, read-only | TBatteryState | Overall battery charge status
BatteryLifeFullTime | published, read-only | Cardinal | Overall battery life full time in seconds
BatteryLifePercent | published, read-only | Byte | Overall battery life percentage
BatteryLifeTime | published, read-only | Cardinal | Battery current time to in seconds
ProcessorCount | published, read-only | Byte | Number of logical processors
ProcessorPowerStatus[CPUIndex: Byte] | public, read-only | TProcessorPowerInformation | Processor power status array

See Also

Demo 01 | demo
Demo 10 | demo
MSIX | application


TMiTeC_BitLocker

Components ››

TMiTeC_BitLocker gathers information about BitLocker Data Encryption

MSI_BitLocker.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_BitLocker

Methods

IndexOf

public

Properties

Records[AIndex: Integer] | public, read-only | TEncryptableVolume
Count | published, read-only | integer

See Also

Demo 05


IndexOf

Components ›› TMiTeC_BitLocker ››

Referenced by: TMiTeC_BitLocker

function IndexOf(const ADriveLetter: string): integer;


TMiTeC_BT

Components ››

TMiTeC_BT detects all connected Bluetoth devices

MSI_BT.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_BT

Properties

DeviceCount | published, read-only | integer | Number of enumerated Bluetooth devices
Devices[Index: integer] | public, read-only | TBTDevice | Bluetooth device array

See Also

Demo 11 | demo
MSIX | application


TMiTeC_CPU

Components ››

TMiTeC_CPU gathers complex information about CPU and its caches

MSI_CPU.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_CPU

Methods

GetAvailableFeatures

public

Gets available feature flags for given feature set

Properties

APICID | published, read-only | Byte | Unique logical processor ID
Architecture | published, read-only | Word | PROCESSOR_ARCHITECTURE_AMD64 PROCESSOR_ARCHITECTURE_IA32_ON_WIN64 PROCESSOR_ARCHITECTURE_IA64 PROCESSOR_ARCHITECTURE_INTEL PROCESSOR_ARCHITECTURE_UNKNOWN
Brand | published, read-only | Integer | Brand number
Cache | published, read-only | TCPUCache | Cache information
CodeName | published, read-only | string | Codename
CoreCount | published, read-only | Byte | Total number of cores
CorePerPackage | published, read-only | Byte | Number of cores per physical package
CPUCount | published, read-only | Byte | Number of logical processors
CPUIDSupported | published, read-only | Boolean | CPUID instruction feature supported
CPUIndex | published | Byte | Physical processor (package) index
CPUName | published, read-only | string | CPU name
CPUPhysicalCount | published, read-only | Byte | Number of physical processors (packages)
CPUType | published, read-only | Integer | Reserved = 3 Secondary processor (for MP) = 2 Overdrive processor = 1 Primary processor = 0
Family | published, read-only | Integer | CPU family
FamilyEx | published, read-only | Integer | CPU extended family
FDIVBug | published, read-only | Boolean | FDIV bug presence flag
Features | published, read-only | TCPUFeatures | CPU supported features
Frequency | published, read-only | Cardinal | CPU frequency in MHz
GenericName | published, read-only | string | Generic CPU name (family, model, stepping)
IntelBrand | published, read-only | TIntelBrands | Intel processor brand
LogicalID | published, read-only | Byte | Logical ID of selected physical processor
LogicalPerCore | published, read-only | Byte | Number of logical processors (threads) per core
LogicalPerPackage | published, read-only | Byte | Number of logical processors (threads) per physical package
MarketingName | published, read-only | string | CPU marketing name
MaxCorePerPackage | public, read-only | Cardinal | Maximum supported number of cores per package
MaxLogicalPerCore | public, read-only | Cardinal | Maximum supported number of logical processors per core
MaxLogicalPerPackage | public, read-only | Cardinal | Maximum supported number of logical processors per physical package
Model | published, read-only | Integer | Model
ModelEx | published, read-only | Integer | Extended model
PhysicalID | published, read-only | Byte | Physical ID of selected physical processor
Revision | published, read-only | string | Revision
SerialNumber | published, read-only | string | Serial number
SocketCount | published, read-only | byte |
SocketDesignation | published, read-only | string |
Stepping | published, read-only | Integer | Stepping
SteppingEx | published, read-only | Integer | Extended stepping
Technology | published, read-only | string | Manufacturing process technology
ThreadCount | published, read-only | Byte | Number of all logical processors
Vendor | published, read-only | TCPUVendor | CPU Vendor

See Also

Demo 01 | demo
Demo 14 | demo
MSIX | application


GetAvailableFeatures

Components ›› TMiTeC_CPU ››

Referenced by: TMiTeC_CPU

procedure GetAvailableFeatures(AFLevel: TFeatureSet ; var AF: TAvailableFeatures );


TMiTeC_DeviceMonitor

Components ››

TMiTeC_DeviceMonitor catches USB, Bluetooth devices or TV/monitor connection/disconnection, volumes mount/unmount, CD/DVD insert/eject and other events from other devices

MSI_DeviceMonitor.pas

TObject → TPersistent → TComponent → TMiTeC_DeviceMonitor

Properties

Active | published | Boolean
CatchBluetooth | published | Boolean

Events

OnDeviceConnect | published | TDeviceChangeEvent
OnDeviceDisconect | published | TDeviceChangeEvent
OnMessage | published | TDeviceChangeMessage
OnVolumeConnect | published | TVolumeChangeEvent
OnVolumeDisconnect | published | TVolumeChangeEvent

See Also

Demo 08

demo


TMiTeC_Devices

Components ››

TMiTeC_Devices enumerates all known devices and their properties. (It does the same as Windows Device Manager)

MSI_Devices.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_Devices

Methods

GetDeviceByHardwareID | public
GetDeviceByHardwareIDAndDriver | public
GetResourceList | public

Properties

DeviceByName[AName: string] | public, read-only | TDevice
DeviceCount | published, read-only | Integer
Devices[Index: integer] | public, read-only | TDevice
CheckControl | published | Boolean
Computer | published, read-only | string
SoundCard | published, read-only | string

See Also

Demo 01 | demo
Demo 13 | demo
MSIX | application


GetResourceList

Components ›› TMiTeC_Devices ››

Referenced by: TMiTeC_Devices

procedure GetResourceList(var RL: TResourceList);


GetDeviceByHardwareID

Components ›› TMiTeC_Devices ››

Referenced by: TMiTeC_Devices

function GetDeviceByHardwareID(AHWID: string): Integer;


GetDeviceByHardwareIDAndDriver

Components ›› TMiTeC_Devices ››

Referenced by: TMiTeC_Devices

function GetDeviceByHardwareIDAndDriver(AHWID,ADriver: string): Integer;


TMiTeC_Disk

Components ››

TMiTeC_Disk detects properties of given logical disk

MSI_Disk.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_Disk

Properties

AvailableDisks | published, read-only | string
BytesPerSector | published, read-only | Cardinal
Capacity | published, read-only | Int64
Drive | published | string
FileFlags | published, read-only | TFileFlags
FileSystem | published, read-only | string
FreeClusters | published, read-only | Cardinal
FreeSpace | published, read-only | Int64
MediaPresent | published, read-only | Boolean
MediaType | published, read-only | TMediaType
SectorsPerCluster | published, read-only | Cardinal
Serial | public, read-only | Cardinal
SerialNumber | published, read-only | string
TotalClusters | published, read-only | Cardinal
UNCPath | published, read-only | string
VolumeLabel | published, read-only | string

See Also

Demo 01 | demo
Demo 05 | demo
MSIX | application


TMiTeC_DiskMonitor

Components ››

TMiTeC_DiskMonitor catches specified events in given directory

MSI_DiskMonitor.pas

TObject → TPersistent → TComponent → TMiTeC_DiskMonitor

Properties

Active | published | Boolean
Directory | published | string
UserComment | published | string
WatchAction | published | TWatchActionSet
WatchFilter | published | TWatchFilterSet
WatchSubtree | published | Boolean

Events

OnChange

published

TEventChange

See Also

Demo 09

demo


TMiTeC_Display

Components ››

TMiTeC_Display detects information about display adapters

MSI_Display.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_Display

Properties

Adapter[AIndex: Integer] | public, read-only | TDisplayAdapter |
AdapterCount | public, read-only | integer |
BIOSDate | published, read-only | string |
BIOSString | published, read-only | string |
BIOSVersion | published, read-only | string |
ColorDepth | published, read-only | Integer | Color depth in bits
ColorMgmtCaps | published, read-only | TColorMgmtCaps |
CurveCaps | published, read-only | TCurveCaps |
DeviceDriverVersion | published, read-only | Integer |
FontResolution | published, read-only | Cardinal | Font resolution in DPI
GPU | published, read-only | boolean | GPU presence
HorzRes | published, read-only | Integer | Horizontal size in pixels
HorzSize | published, read-only | Integer | Horizontal size in mm
LineCaps | published, read-only | TLineCaps |
Modes | published, read-only | TStrings |
PixelDiagonal | published, read-only | Integer | Diagonal width of the device pixel used for line drawing
PixelHeight | published, read-only | Integer | Relative height of a device pixel used for line drawing
PixelWidth | published, read-only | Integer | Relative width of a device pixel used for line drawing
PolygonCaps | published, read-only | TPolygonCaps |
RasterCaps | published, read-only | TRasterCaps |
ShadeBlendCaps | published, read-only | TShadeBlendCaps |
Technology | published, read-only | string |
TextCaps | published, read-only | TTextCaps |
VerticalRefreshRate | published, read-only | Cardinal | Vertical refresh rate in Hz
VertRes | published, read-only | Integer | Vertical resolution in pixels
VertSize | published, read-only | Integer | Vertical size in mm

See Also

Demo 01 | demo
MSIX | application


TMiTeC_DriveContent

Components ››

TMiTeC_DriveContent scans given disk or path for folders and files and gathers their properties and computes MD5 hash for specified extensions

MSI_DriveContent.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_DriveContent

Methods

ParseRecord | public
Scan | public
ScanPath | public

Properties

AvailableDisks | published, read-only | string
Content | published, read-only | TStrings
CurrentDrive | published, read-only | string
MD5Extensions | published | string
ScannedDrives | public, read-only | string

Events

OnFile | published | TOnFileEvent
OnFolder | published | TOnFileEvent

See Also

Demo 31


ParseRecord

Components ›› TMiTeC_DriveContent ››

Referenced by: TMiTeC_DriveContent

function ParseRecord(ARecord: string): TFileRecord;


Scan

Components ›› TMiTeC_DriveContent ››

Referenced by: TMiTeC_DriveContent

procedure Scan(ADisk: string; AClear: Boolean = True);


ScanPath

Components ›› TMiTeC_DriveContent ››

Referenced by: TMiTeC_DriveContent

procedure ScanPath(APath: string; AClear: Boolean = False);


TMiTeC_Engines

Components ››

TMiTeC_Engines checks system for installed engines and retrieves their versions and other properties

MSI_Engines.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_Engines

Properties

ADO | published, read-only | string | ActiveX Data Objects version
ASPI32 | published, read-only | TMiTeC_ASPI32 |
BDE | published, read-only | string | Borland Database Engine version
DAO | published, read-only | string | Data Access Objects version
DirectX | published, read-only | TMiTeC_DirectX |
IE | published, read-only | string | Internet Explorer core version
MSI | published, read-only | string | Microsoft Installer version
NET | published, read-only | string | .NET platform version
ODBC | published, read-only | string | Open Database Connectivity version
OpenGL | published, read-only | string | OpenGL version
QT | published, read-only | string | Apple QuickTime version

See Also

MSIX

application


TMiTeC_DirectX

Components ›› TMiTeC_Engines ››

TMiTeC_DirectX detects Microsoft® DirectX properties

MSI_Engines.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_DirectX

Properties

DirectD | published, read-only | TStrings
DirectMusic | published, read-only | TStrings
DirectPlay | published, read-only | TStrings
Version | published, read-only | string

See Also

TMiTeC_Engines

component


TMiTeC_ASPI32

Components ›› TMiTeC_Engines ››

TMiTeC_ASPI32 detects ASPI32 properties

MSI_Engines.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_ASPI32

Properties

ASPI | published, read-only | string
Configuration | public, read-only | TASPIConfig

See Also

TMiTeC_Engines

component


TMiTeC_EventLog

Components ››

TMiTeC_EventLog retrieves Windows Event Log messages for given source

MSI_EventLog.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_EventLog

Methods

Sort | public |
Backup | public | Backups specified EventLog container to specified evt file
ClearLog | public | Clears specified EventLog container

Properties

ContainerCount | published, read-only | Cardinal |
Containers[Index: Integer] | public, read-only | TLogContainer |
LookupSID | published | Boolean |
RecordCount | published, read-only | Cardinal |
Records[Index: Integer] | public, read-only | TLogRecord |
SourceFilter | published | string |
SourceName | published | string |
ForceOldAPI | published | boolean | forces using old API on Windows Vista and newer
Username | published | string | credentials for connecting to remote machine for new WinEvt API
Domain | published | string | credentials for connecting to remote machine for new WinEvt API
Password | published | string | credentials for connecting to remote machine for new WinEvt API
NewAPIAvailable | public | boolean | True if Windows Event Log API is available (Windows Vista and newer)
ExpandMessages | public | boolean | If True Event Log messages are expanded (slower)

Events

OnReadEventLog | public | TOnReadEventLog
OnExpandMessage | public | TOnExpandMessage

See Also

Demo 12 | demo
MSIX | application


Sort

Components ›› TMiTeC_EventLog ››

Referenced by: TMiTeC_EventLog

procedure Sort;


Backup

Components ›› TMiTeC_EventLog ››

Referenced by: TMiTeC_EventLog

procedure Backup(const AContainerName, AFilename: string);


ClearLog

Components ›› TMiTeC_EventLog ››

Referenced by: TMiTeC_EventLog

procedure ClearLog(const AContainerName: string);


TMiTeC_Firewall

Components ››

TMiTeC_Firewall enumerates settings and rules from Windows Firewall. It also introduces methods for rules management.

MSI_FW.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_Firewall

Methods

IsRuleEnabled | public
EnableRule | public
AddRule | public
RemoveRule | public

Properties

PrivateProfile | published, read-only | boolean
PublicProfile | published, read-only | boolean
DomainProfile | published, read-only | boolean
Rules[AIndex: Integer] | public, read-only | TRule
RuleCount | published, read-only | integer

See Also

Demo 27


IsRuleEnabled

Components ›› TMiTeC_Firewall ››

Referenced by: TMiTeC_Firewall

function IsRuleEnabled(const AName: string): Boolean;


EnableRule

Components ›› TMiTeC_Firewall ››

Referenced by: TMiTeC_Firewall

procedure EnableRule(const AName: string; AValue: Boolean = True);


AddRule

Components ›› TMiTeC_Firewall ››

Referenced by: TMiTeC_Firewall

procedure AddRule(ARecord: TRule );


RemoveRule

Components ›› TMiTeC_Firewall ››

Referenced by: TMiTeC_Firewall

procedure RemoveRule(const AName: string);


TMiTeC_Machine

Components ››

TMiTeC_Machine provides complex information about current workstation/server machine

MSI_Machine.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_Machine

Properties

BIOS | published, read-only | TMiTeC_BIOS |
CapsLock | published, read-only | boolean |
Computer | published, read-only | string |
IsInDomain | published, read-only | boolean |
JoinedTo | published, read-only | string | Name of domain or workgroup
LastBoot | published, read-only | TDateTime |
LastShutdown | published, read-only | TDateTime |
MachineName | published, read-only | string |
NumLock | published, read-only | boolean |
ScrollLock | published, read-only | boolean |
Session | published, read-only | TSessionTypes |
SessionProtocol | published, read-only | TSessionProtocol |
SMBIOS | published, read-only | TMiTeC_SMBIOS |
SystemUpTime | published, read-only | int64 |
EvaluateThermalZones | published | boolean |
ThermalZones | published, read-only | TStrings |
ThermalZoneCounters | published, read-only | TStrings |
TPM | published, read-only | TMiTeC_TPM |
User | published, read-only | string |

See Also

Demo 01 | demo
MSIX | application


TMiTeC_BIOS

Components ›› TMiTeC_Machine ››

TMiTeC_BIOS retrieves BIOS information for current machine

MSI_Machine.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_BIOS

Properties

BIOSData[AIndex: Integer] | public, read-only | TBIOSValue
BIOSDataCount | public, read-only | Integer
BIOSValue[AName: string] | public, read-only | TBIOSValue
Copyright | published, read-only | string
Date | published, read-only | string
ExtendedInfo | published, read-only | string
NameString | published, read-only | string

See Also

MiTeC_Machine

component


TMiTeC_TPM

Components ›› TMiTeC_Machine ››

TMiTeC_TPM retrieves Trusted Platform Module information for current machine

MSI_Machine.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_TPM

Properties

Activated | published, read-only | boolean
Enabled | published, read-only | boolean
InterfaceVersion | published, read-only | string
Manufacturer | published, read-only | string
ManufacturerId | published, read-only | integer
ManufacturerVersion | published, read-only | string
Model | published, read-only | string
Version | published, read-only | string

See Also

MiTeC_Machine

component


TMiTeC_Media

Components ››

TMiTeC_Media collects list of available media devices

MSI_Media.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_Media

Properties

AUX | published, read-only | TStrings
Devices | published, read-only | TStrings
MIDIIn | published, read-only | TStrings
MIDIOut | published, read-only | TStrings
Mixer | published, read-only | TStrings
SoundCardHardwareID | published, read-only | string
SoundCardIndex | published, read-only | Integer
SoundCardLocation | published, read-only | string
SoundCardManufacturer | published, read-only | string
SoundCardName | published, read-only | string
WaveIn | published, read-only | TStrings
WaveOut | published, read-only | TStrings

See Also

Demo 01 | demo
MSIX | application


TMiTeC_Memory

Components ››

TMiTeC_Memory detects memory properties

MSI_Memory.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_Memory

Properties

AllocGranularity | published, read-only | Integer
MaxAppAddress | published, read-only | Int64
MemoryLoad | published, read-only | Integer
MinAppAddress | published, read-only | Int64
PageFileFree | published, read-only | Int64
PageFileTotal | published, read-only | Int64
PageSize | published, read-only | Integer
PhysicalFree | published, read-only | Int64
PhysicalTotal | published, read-only | Int64
VirtualFree | published, read-only | Int64
VirtualTotal | published, read-only | Int64

See Also

Demo 01 | demo
MSIX | application


TMiTeC_Monitor

Components ››

TMiTeC_Monitor enumerates all connected monitors and their properties

MSI_Monitor.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_Monitor

Properties

Count | public, read-only | Cardinal
Monitors[Index: Integer] | public | TMonitorRecord

See Also

Demo 01 | demo
Demo 30 | demo
MSIX | application


TMiTeC_MSProduct

Components ››

TMiTeC_MSProduct enumerates installed Microsoft® products and their Product keys and IDs.

MSI_MSProduct.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_MSProduct

Properties

ProductCount | public, read-only | Cardinal
Products[AIndex: Cardinal] | public, read-only | TMSProduct

See Also

Demo 03 | demo
MSIX | application


TMiTeC_MUS

Components ››

TMiTeC_MUS gathers information about available and installed Windows updates (MicrosoftUpdateSession)

MSI_MUS.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_MUS

Properties

AvailableUpdateCount | published, read-only | integer
AvailableUpdates[AIndex: Integer] | public, read-only | TAvailableUpdateRecord
ErrorMessage | public, read-only | string
IncludeHidden | published | boolean
OnlineSearch | published | boolean
Refreshing | public, read-only | boolean
ScanOnlyHistory | published | boolean
UpdateHistory[AIndex: Integer] | public, read-only | TUpdateHistoryRecord
UpdateHistoryCount | public, read-only | integer
UpdatesAvailable | public, read-only | boolean

See Also

Demo 32


TMiTeC_NetCreds

Components ››

TMiTeC_NetCreds enumerates cached network credentials.

MSI_NetCreds.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_NetCreds

Properties

Records[AIndex: Integer] | public, read-only | TCredRecord
RecordCount | published, read-only | integer

See Also

Demo 24


TMiTeC_Network

Components ››

TMiTeC_Network retrieves network environment information

MSI_Network.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_Network

MSI_Network.pas

Properties

Clients | published, read-only | TStrings
IPAddresses | published, read-only | TStrings
MACAddresses | published, read-only | TStrings
PhysicalAdapters | published, read-only | TStrings
Protocols | published, read-only | TStrings
Resources | published, read-only | TMiTeC_NetResources
Services | published, read-only | TStrings
TCPIP | published, read-only | TMiTeC_TCPIP
VirtualAdapters | published, read-only | TStrings
WinSock | published, read-only | TMiTeC_Winsock

See Also

Demo 01 | demo
Demo 17 | demo
Demo 29 | demo
MSIX | application


TMiTeC_NetResources

Components ›› TMiTeC_Network ››

TMiTeC_NetResources enumerates network resources

MSI_OS.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_NetResources

Properties

ConnectionCount | public, read-only | Cardinal
Connections[Index: Cardinal] | public, read-only | TConnectionRecord
OpenFileCount | public, read-only | Cardinal
OpenFiles[Index: Cardinal] | public, read-only | TOpenFileRecord
SessionCount | public, read-only | Cardinal
Sessions[Index: Cardinal] | public, read-only | TNTSessionRecord
ShareCount | public, read-only | Cardinal
Shares[Index: Cardinal] | public, read-only | TNTShareRecord

See Also

TMiTeC_Network

component


TMiTeC_Winsock

Components ›› TMiTeC_Network ››

TMiTeC_WinSock retrieves Windows Winsock properties

MSI_OS.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_Winsock

Properties

Description | published, read-only | string
MajorVersion | published, read-only | Word
MinorVersion | published, read-only | Word
Status | published, read-only | string

See Also

TMiTeC_Network

component


TMiTeC_TCPIP

Components ›› TMiTeC_Network ››

TMiTeC_Network enumerates network adapters, their properties and network configuration

MSI_Network.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_TCPIP

Methods

FindAdapter | public
FindAddress | public
GetSubnetMask | public

Properties

Adapter[Index: Word] | public, read-only | TAdapter |
AdapterCount | published, read-only | Word |
AddressRecord[Index: Word] | public, read-only | TAddressRecord |
AddressRecordCount | published, read-only | Word |
BestInterfaceIdx | published, read-only | Cardinal | Current active adapter index used for network communication
DHCPScopeName | published, read-only | string |
DNSServers | published, read-only | TStrings |
DNSSuffixes | published, read-only | TStrings |
DomainName | published, read-only | string |
EnableDNS | published, read-only | Boolean |
EnableProxy | published, read-only | Boolean |
EnableRouting | published, read-only | Boolean |
HostName | published, read-only | string |
NodeType | published, read-only | TNodeType |
PrimaryDNSSuffix | published, read-only | string |

See Also

TMiTeC_Network

component


FindAdapter

Components ›› TMiTeC_Network ›› TMiTeC_TCPIP ››

Referenced by: TMiTeC_Network , TMiTeC_TCPIP

function FindAdapter(AName: string): Integer; overload;

function FindAdapter(AIntfIdx: Cardinal): Integer; overload;


FindAddress

Components ›› TMiTeC_Network ›› TMiTeC_TCPIP ››

Referenced by: TMiTeC_Network , TMiTeC_TCPIP

function FindAddress(AIP: string): Integer; overload;

function FindAddress(AIntfIdx: Cardinal): Integer; overload;


GetSubnetMask

Components ›› TMiTeC_Network ›› TMiTeC_TCPIP ››

Referenced by: TMiTeC_Network , TMiTeC_TCPIP

function GetSubnetMask(AIP: string): string;


TMiTeC_OperatingSystem

Components ››

TMiTeC_OperatingSystem collects all information about (Microsoft® Windows™) operating system

MSI_OS.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_OperatingSystem

Properties

BuildLab | published, read-only | string |
BuildNumber | published, read-only | Integer |
Comment | published | string |
CompatibilityMode | published, read-only | Boolean |
CSD | published, read-only | string |
DetectUpdatesAndHotfixes | published | Boolean |
DVDRegion | published, read-only | string |
Environment | published, read-only | TStrings |
Flags | published, read-only | Integer | The type of software the computer is running. Combination of these values .
Folders | published, read-only | TStrings |
GenuineWindows | published, read-only | Boolean |
InstallationType | published, read-only | string |
InstallDate | published, read-only | TDateTime |
InstalledSuites | published, read-only | TNTSuites |
Internet | published, read-only | TMiTeC_Internet |
LanguageID | published, read-only | string |
LicensedUsers | published, read-only | Cardinal |
LiveID | published, read-only | string |
LocaleInfo | published, read-only | TMiTeC_LocaleInfo |
MachineGUID | published, read-only | string |
MajorVersion | published, read-only | Integer |
MinorVersion | published, read-only | Integer |
NumberOfLicensedUsers | published, read-only | Integer |
NumberOfUsers | published, read-only | Integer |
OS | published, read-only | TOSVersion |
OSEdition | published, read-only | string |
UpdateBuildRevision | published, read-only | cardinal |
OSName | published, read-only | string |
ParentalControls | published, read-only | TStrings | List of account managed by Parental Controls
ProductID | published, read-only | string |
ProductInfo | published, read-only | Cardinal |
ProductKey | published, read-only | string |
ProductName | published, read-only | string |
ProductType | published, read-only | TNTProductType |
RegisteredOrg | published, read-only | string |
RegisteredUser | published, read-only | string |
ServicePackMajorVersion | published, read-only | Word |
ServicePackMinorVersion | published, read-only | Word |
TaskManager | published, read-only | string |
TimeZone | published, read-only | TMiTeC_TimeZone |
TrueWindowsVersion | published, read-only | string | Contains host operating system version when application runs in compatibility mode
TrueWindowsName | published, read-only | string | Contains host operating system name when application runs in compatibility mode
UpdateCount | published, read-only | Cardinal |
Updates[Index: Cardinal] | public, read-only | TUpdateRecord |
UserAccountControl | published, read-only | Boolean |
UsersPerLicense | published, read-only | Cardinal |
Version | published, read-only | string |
Virtualization | published, read-only | Boolean |
WindowsExperienceIndex | published, read-only | TMiTeC_WEI |
SystemThemeMode | published, read-only | TThemeMode |
AppThemeMode | published, read-only | TThemeMode |
DisplayVersion | published, read-only | string |
SystemCodeIntegrity | published, read-only | cardinal |
GameMode | published, read-only | boolean |

See Also

Demo 01 | demo
MSIX | application


TMiTeC_TimeZone

Components ›› TMiTeC_OperatingSystem ››

TMiTeC_TimeZone provides information about current timezone

MSI_OS.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_TimeZone

Properties

Bias | published, read-only | Integer
DaylightBias | published, read-only | Integer
DaylightName | published, read-only | string
DaylightStart | published, read-only | TDateTime
DisplayName | published, read-only | string
MapID | public, read-only | string
StandardBias | published, read-only | Integer
StandardName | published, read-only | string
StandardStart | published, read-only | TDateTime

See Also

TMiTeC_OperatingSystem

component


TMiTeC_Internet

Components ›› TMiTeC_OperatingSystem ››

TMiTeC_Internet retrieves Internet configuration

MSI_OS.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_Internet

Properties

ConnectionType | published, read-only | TConnectionType
DefaultBrowser | published, read-only | string
DefaultBrowserName | published, read-only | string
DefaultMailClient | published, read-only | string
DefaultMailClientName | published, read-only | string
ProxyServer | published, read-only | TStrings

See Also

TMiTeC_OperatingSystem

component


TMiTeC_LocaleInfo

Components ›› TMiTeC_OperatingSystem ››

TMiTeC_LocaleInfo enumerates given locale configuration

MSI_OS.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_LocaleInfo

Properties

AbbreviateCountryCode | published, read-only | string
AbbreviateLanguageName | published, read-only | string
CountryCode | published, read-only | string
CurrencyDecimalDigits | published, read-only | string
CurrencyDecimalSeparator | published, read-only | string
CurrencyThousandSeparator | published, read-only | string
DateSeparator | published, read-only | string
DecimalSeparator | published, read-only | string
DecimalThousandSeparator | published, read-only | string
FullCountryCode | published, read-only | string
FullLanguageEnglishName | published, read-only | string
FullLocalizeLanguage | published, read-only | string
InternationalMonetarySymbol | published, read-only | string
ListSeparator | published, read-only | string
LocaleID | published, read-only | Cardinal
LocalMonetarySymbol | published, read-only | string
LongDateFormat | published, read-only | string
LongDateOrder | published, read-only | TDateOrder
MeasurementSystem | published, read-only | TMeasureSystem
NegativeCurrencyMode | published, read-only | string
NumberOfDecimalDigits | published, read-only | string
PositiveCurrencyMode | published, read-only | TPositiveCurrencyMode
ShortDateFormat | published, read-only | string
ShortDateOrder | published, read-only | TDateOrder
TimeFormat | published, read-only | string
TimeFormatSpecifier | published, read-only | TTimeFormat
TimeSeparator | published, read-only | string
YearFormat | published, read-only | TYearFormat

See Also

TMiTeC_OperatingSystem

component


TMiTeC_WEI

Components ›› TMiTeC_OperatingSystem ››

TMiTeC_WEI provides Windows Experience Index evaluation

MSI_OS.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_WEI

Properties

SystemScore | published, read-only | single
CpuScore | published, read-only | single
MemoryScore | published, read-only | single
GraphicsScore | published, read-only | single
GamingScore | published, read-only | single
DiskScore | public, read-only | single

See Also

TMiTeC_OperatingSystem

component


TMiTeC_Printers

Components ››

TMiTeC_Printers enumerates installed printers and their properties

MSI_Printers.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_Printers

Properties

Comment[Index: Cardinal] | public, read-only | string
DefaultPrinter | published, read-only | string
Driver[Index: Cardinal] | public, read-only | string
DriverPath[Index: Cardinal] | public, read-only | string
DriverVersion[Index: Cardinal] | public, read-only | string
Location[Index: Cardinal] | public, read-only | string
Monitor[Index: Cardinal] | public, read--only | string
Port[Index: Cardinal] | public, read-only | string
PrinterCount | published, read-only | Cardinal
PrinterName[Index: Cardinal] | public, read-only | string
Share[Index: Cardinal] | public, read-only | string

See Also

Demo 01 | demo
MSIX | application


TMiTeC_ProcessList

Components ››

TMiTeC_ProcessList enumerates running processes, installed services and drivers and properties of these objects. It is based on TSysProcMonThread and TSvcListMonThread .

MSI_Processes.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_ProcessList

Properties

DetectionRange | published | TDetectionRange
HandleCount | public, read-only | Integer
Handles[Index: Integer] | public, read-only | THandleRecord
HandleTypes | published | TSystemHandleTypes
ProcessByPID[APID: Cardinal] | public, read-only | TProcessRecord
ProcessCount | published, read-only | Integer
Processes[Index: Integer] | public, read-only | TProcessRecord
ServiceCount | published, read-only | Integer
ServiceName[Name: string] | public, read-only | TServiceRecord
Services[Index: Integer] | public, read-only | TServiceRecord

See Also

MSIX

application


TMiTeC_Security

Components ››

TMiTeC_Security detects installed AntiVirus, AntiSpyware and Firewall software

MSI_Security.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_Security

Properties

property Items[AIndex: integer] | public, read-only | TSecurityProduct
Count | published, read-only | integer

See Also

Demo 15 | demo
MSIX | application


TMiTeC_SMBIOS

Components ››

TMiTeC_SMBIOS provides information from SMBIOS memory tables

MSI_SMBIOS.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_SMBIOS

Methods

LoadFromFile | public | Loads files saved by Reader .SaveToFile
VersionString | public | Returns string SMBIOS version
SystemString | public | Returns string representing the best fit for System name
InstalledMemory | public | Returns installed memory size computed from Table 17 (Memory devices)
MemoryType | public | Returns memory type string evaluated from Table 17 (Memory devices)

Properties

Battery[Index: integer] | public, read-only | TSMBIOS_Battery |
BatteryCount | public, read-only | integer |
BIOS_ECF_MajorVersion | published, read-only | Byte |
BIOS_ECF_MinorVersion | published, read-only | Byte |
BIOSCurrentLangIndex | public, read-only | byte |
BIOSDate | published, read-only | string |
BIOSCharacteristics | published, read-only | TSMBIOS_BIOSChars |
BIOSInstallableLangCount | public, read-only | byte |
BIOSLanguages | public, read-only | TStrings |
BIOSMajorVersion | published, read-only | Byte |
BIOSMinorVersion | published, read-only | Byte |
BIOSSize | published, read-only | Cardinal |
BIOSVendor | published, read-only | string |
BIOSVersion | published, read-only | string |
Cache[Index: Integer] | public, read-only | TSMBIOS_Cache |
CacheCount | public, read-only | Integer |
CoolingDevice[Index: Integer] | public, read-only | TSMBIOS_CoolingDevice |
CoolingDeviceCount | public, read-only | Integer |
CurrentProbe[Index: Integer] | public, read-only | TSMBIOS_CurrentProbe |
CurrentProbeCount | public, read-only | Integer |
HardwareSecurity | public, read-only | TSMBIOS_HardwareSecurity |
HPBIOSiSCINICPCIMACInfo[Index: Integer] | public, read-only | TSMBIOS_HP_221 |
HPBIOSiSCINICPCIMACInfoCount | public, read-only | Integer |
HPBIOSPXENICPCIMACInfo[Index: Integer] | public, read-only | TSMBIOS_HP_221 |
HPBIOSPXENICPCIMACInfoCount | public, read-only | Integer |
HPProLiantSystemRackLocator | public, read-only | TSMBIOS_HP_204 |
ChassisAssetTag | published, read-only | string |
ChassisBooUpState | published, read-only | byte |
ChassisContainedElementCount | published, read-only | byte |
ChassisContainedElements[Index: Byte] | public, read-only | TBytes |
ChassisHeight | published, read-only | byte |
ChassisManufacturer | published, read-only | string |
ChassisModel | published, read-only | TSMBIOS_Chassis |
ChassisNumberOfPowerCords | published, read-only | byte |
ChassisOEM | published, read-only | cardinal |
ChassisPowerSupplyState | published, read-only | byte |
ChassisSecurityStatus | published, read-only | byte |
ChassisSerial | published, read-only | string |
ChassisSKUNumber | published, read-only | string |
ChassisThermalState | published, read-only | byte |
ChassisVersion | published, read-only | string |
MainBoardAssetTag | published, read-only | string |
MainBoardContainedObjectHandles[Index: Byte] | public, read-only | word |
MainBoardChassisHandle | published, read-only | word |
MainBoardLocationInChassis | published, read-only | string |
MainBoardManufacturer | published, read-only | string |
MainBoardModel | published, read-only | string |
MainBoardNumberOfContainedObjectHandles | published, read-only | byte |
MainBoardSerial | published, read-only | string |
MainBoardType | published, read-only | byte |
MainBoardVersion | published, read-only | string |
ManagementDevice[Index: integer] | public, read-only | TSMBIOS_ManagementDevice |
ManagementDeviceCount | public, read-only | integer |
MemCtrlConfigurationHandles[Index: integer] | public, read-only | word |
MemCtrlCurrentInterleave | published, read-only | TSMBIOS_InterleaveSupport |
MemCtrlEnabledErrorCorrectingCapabilities | public, read-only | byte |
MemCtrlMaxSize | published, read-only | Word |
MemCtrlSlotCount | published, read-only | Byte |
MemCtrlSupportedInterleave | published, read-only | TSMBIOS_InterleaveSupport |
MemCtrlSupportedSpeeds | published, read-only | TSMBIOS_MemorySpeeds |
MemCtrlSupportedTypes | published, read-only | TSMBIOS_MemoryTypes |
MemCtrlSupportedVoltages | published, read-only | TSMBIOS_Voltages |
MemoryDevice[Index: Integer] | public, read-only | TSMBIOS_MemoryDevice |
MemoryDeviceCount | public, read-only | Integer |
MemoryModule[Index: Integer] | public, read-only | TSMBIOS_MemoryModule |
MemoryModuleCount | public, read-only | Integer |
OnBoardDevice[Index: Integer] | public, read-only | TSMBIOS_OnBoardDevice |
OnBoardDeviceCount | public, read-only | Integer |
OnBoardDeviceEx[Index: Integer] | public, read-only | TSMBIOS_OnBoardDeviceEx |
OnBoardDeviceExCount | public, read-only | Integer |
PMAErrorCorrectionType | published, read-only | TSMBIOS_PMAErrorCorrectionType |
PMALocation | published, read-only | TSMBIOS_PMALocation |
PMAMaximumCapacity | published, read-only | int64 | KB
PMANumberOfMemoryDevices | published, read-only | word |
PMAUse | published, read-only | TSMBIOS_PMAUse |
Port[Index: Integer] | public, read-only | TSMBIOS_Port |
PortCount | public, read-only | Integer |
Processor[Index: Integer] | public, read-only | TSMBIOS_Processor |
ProcessorCount | public, read-only | Integer |
ReadLocalMemory | published | Boolean |
Reader | public, read-only | TSMBIOS |
SystemConfigurationOptions | public, read-only | TStrings |
SystemManufacturer | published, read-only | string |
SystemModel | published, read-only | string |
SystemPowerSupplyAssetTagNumber | published, read-only | string |
SystemPowerSupplyCoolingDeviceHandle | published, read-only | word |
SystemPowerSupplyDeviceName | published, read-only | string |
SystemPowerSupplyChars | published, read-only | word |
SystemPowerSupplyInputCurrenyProbeHandle | published, read-only | word |
SystemPowerSupplyInputVoltageProbeHandle | published, read-only | word |
SystemPowerSupplyLocation | published, read-only | string |
SystemPowerSupplyManufacturer | published, read-only | string |
SystemPowerSupplyMaxPowerCapacity | published, read-only | word | mW
SystemPowerSupplyModelPartNumber | published, read-only | string |
SystemPowerSupplyPowerUnitGroup | published, read-only | byte |
SystemPowerSupplyRevisionLevel | published, read-only | string |
SystemPowerSupplySerialNumber | published, read-only | string |
SystemSerial | published, read-only | string |
SystemSlot[Index: Integer] | public, read-only | TSMBIOS_Slot |
SystemSlotCount | public, read-only | Integer |
SystemUUID | published, read-only | string |
SystemVersion | published, read-only | string |
TemperatureProbe[Index: Integer] | public, read-only | TSMBIOS_TemperatureProbe |
TemperatureProbeCount | public, read-only | Integer |
TPMDevice[Index: Integer] | public, read-only | TSMBIOS_TPMDevice |
TPMDeviceCount | public, read-only | Integer |
UEFIGUID | public, read-only | TGUID | UEFI GUID read from ACPI.UEFI table
UEFISecureBoot | public, read-only | boolean | USEFI Secure Boot status
VoltageProbe[Index: Integer] | public, read-only | TSMBIOS_VoltageProbe |
VoltageProbeCount | public, read-only | Integer |
WindowsProductKey | public, read-only | string | Windows Product Key read from ACPI.MSDM table

See Also

SMBIOS value reading | code example
Demo 01 | demo
Demo 36 | demo
MSIX | application


TMiTeC_Software

Components ››

TMiTeC_Software enumerates installed software including system updates and system components

MSI_Software.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_Software

Methods

SetLegal

public

Properties

AppPaths | public, read-only | TStrings
Count | published, read-only | Cardinal
InstallEntry[Index: Cardinal] | public, read-only | TInstallRecord
SecurityUpdates | published | Boolean
SystemComponents | published | Boolean

See Also

Demo 03 | demo
MSIX | application


SetLegal

Components ›› TMiTeC_Software ››

Referenced by: TMiTeC_Software

procedure SetLegal(Index: Integer; ALegal: boolean);


TMiTeC_Startup

Components ››

TMiTeC_Startup enumerates autostart entries (applications/modules loaded on system startup) except services. For service enumeration look at TMiTeC_ProcessList

MSI_Startup.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_Startup

Properties

Count | published, read-only | Cardinal
Records[AIndex: Cardinal] | public, read-only | TAutorun

See Also

MSIX

application


TMiTeC_Storage

Components ››

TMiTeC_Storage enumerates logical drives and physical storage devices as disks, tapes, CD/DVD etc.

MSI_Storage.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_Storage

Methods

FindPhysical

public

Properties

Logical[Index: Integer] | public, read-only | TDeviceInfo
LogicalCount | published, read-only | Integer
LogicalDisk[Sign: Char] | public, read-only | TDeviceInfo
Physical[Index: Integer] | public, read-only | TDeviceInfo
PhysicalCount | published, read-only | Integer
SMARTDetect | published | Boolean

See Also

Demo 01 | demo
Demo 05 | demo
MSIX | application


FindPhysical

Components ›› TMiTeC_Storage ››

Referenced by: TMiTeC_Storage

function FindPhysical(ALogical: char): Integer;


TMiTeC_SystemInfo

Components ››

TMiTeC_SystemInfo encapsulates most of MSICS components into one interface

MSI_SystemInfo.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_SystemInfo

Methods

ExportOverview | public
SetStorageName | public
SetLiveData | public

Properties

StreamCodeProc | public, read-only | TCodeStreamProcedure
FileName | published | string
CPU | published, read-only | TMiTeC_CPU
Memory | published, read-only | TMiTeC_Memory
OS | published, read-only | TMiTeC_OperatingSystem
Disk | published, read-only | TMiTeC_Disk
Machine | published, read-only | TMiTeC_Machine
Network | published, read-only | TMiTeC_Network
Display | published, read--only | TMiTeC_Display
Monitor | published, read-only | TMiTeC_Monitor
Media | published, read-only | TMiTeC_Media
Devices | published, read-only | TMiTeC_Devices
Storage | published, read-only | TMiTeC_Storage
USB | published, read-only | TMiTeC_USB
Engines | published, read-only | TMiTeC_Engines
APM | published, read-only | TMiTeC_APM
Printers | published, read-only | TMiTeC_Printers
Software | published, read-only | TMiTeC_Software
Startup | published, read-only | TMiTeC_Startup
ProcessList | published, read-only | TMiTeC_ProcessList
MSProduct | published, read-only | TMiTeC_MSProduct
Bluetooth | published, read-only | TMiTeC_BT
EventLog | published, read-only | TMiTeC_EventLog
ActiveDirectory | published, read-only | TMiTeC_AD
Security | published, read-only | TMiTeC_Security
WiFi | published, read-only | TMiTeC_WiFi

See Also

Demo 01 | demo
MSIX | application


ExportOverview

Components ›› TMiTeC_SystemInfo ››

Referenced by: TMiTeC_SystemInfo

procedure ExportOverview(sl: TStrings);


SetStorageName

Components ›› TMiTeC_SystemInfo ››

Referenced by: TMiTeC_SystemInfo

procedure SetStorageName(const AValue: string);


SetLiveData

Components ›› TMiTeC_SystemInfo ››

Referenced by: TMiTeC_SystemInfo

procedure SetLiveData(AValue: Boolean);


TMiTeC_USB

Components ››

TMiTeC_USB enumerates all connected USB devices and their properties

MSI_USB.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_USB

Methods

EjectDevice | public
FindDisk | public
IsEjectable | public
GetDevicePowerState | public

Properties

ConnectedDevices | public, read-only | Byte
USBNodeCount | public, read-only | Integer
USBNodes[Index: integer] | public, read-only | TUSBNode

See Also

Demo 01 | demo
Demo 04 | demo
MSIX | application


FindDisk

Components ›› TMiTeC_USB ››

Referenced by: TMiTeC_USB

function FindDisk(ADisk: char): TUSBNode ;


IsEjectable

Components ›› TMiTeC_USB ››

Referenced by: TMiTeC_USB

function IsEjectable(ANode: TUSBNode ): Cardinal;


EjectDevice

Components ›› TMiTeC_USB ››

Referenced by: TMiTeC_USB

function EjectDevice(AInst: Cardinal): Boolean;


GetDevicePowerState

Components ›› TMiTeC_USB ››

Referenced by: TMiTeC_USB

function GetDevicePowerState(ADeviceInstanceID, ADriverKey: string): TDevicePowerState ;


TMiTeC_USBHistory

Components ››

TMiTeC_USBHistory gathers information about USB usage

MSI_USBHistory.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_USBHistory

Properties

Records[AIndex: Integer] | public, read-only | TUSBRecord
RecordCount | published, read-only | integer

See Also

Demo 25


TMiTeC_WiFi

Components ››

TMiTeC_WiFi enumerates all detected or cached Wi-Fi networks and their properties

MSI_WiFi.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_WiFi

Properties

Cached | public | Boolean
NetworkCount | public, read-only | Integer
Networks[AIndex: Integer] | public, read-only | TWifiNetwork

See Also

Demo 16 | demo
MSIX | application


TMiTeC_WLANC

Components ››

TMiTeC_WLANC gathers information about known Wi-Fi networks and their configurations

MSI_WLANC.pas

TObject → TPersistent → TComponent → TMiTeC_Component → TMiTeC_WLANC

Properties

Records[AIndex: Integer] | public, read-only | TWLANCRecord
RecordCount | published, read-only | integer

See Also

Demo 26


Threads

TSysProcMonThread | TSvcListMonThread
TPerfMonThread | TNetConMonThread
THndListMonThread |


TSysProcMonThread

Threads ››

TSysProcMonThread monitors system and provides running processes, CPU, memory and disk monitoring and provides system information.

MSI_SysProcMon.pas

TObject → TThread → TSysProcMonThread

Methods

BaseBoardName | class public
BIOS | class public
BootTime | class public
Clear | public
ClearWatch | public
CPUName | class public
CreateSnapshot | public
CurrentCommitCharge | class public
DiskFileSystem | class public
DiskFreeSpace | class public
DiskTotalSpace | class public
DiskUserFreeSpace | class public
FindThreadProcess | class public
FreePageFile | class public
FreePhysMemory | class public
FreeVirtualMemory | class public
GetChildProcesses | public
GetProcessCommandLine | class public
GetProcessEnvironment | class public
GetProcessGDIHandles | class public
GetProcessHandles | class public
GetProcessHandlesEx | class public
GetProcessHandlesEx2 | class public
GetProcessImageName | class public
GetProcessList | public
GetProcessMemoryCounters | class public
GetProcessModules | class public
GetProcessPEB | class public
GetProcessPEB32 | class public
GetProcessThreads | class public
GetProcessWindows | class public
GetRecord | public
GetRecordByPID | public
GetThreadText | public
HandleCount | class public
InstallDate | class public
InstalledMemory | class public
IsProcessWatched | public
IsProcessWow64 | class public
LastShutdown | class public
LimitCommitCharge | class public
LoadThreadTexts | public
LogicalCPUCount | class public
MemoryLoad | class public
NonPagedPool | class public
PagedPool | class public
ProcessCount | class public
ReleaseID | class public
RemoveThreadText | public
SaveThreadTexts | public
SessionID | class public
SetThreadText | public
SetWatchedProcess | public
SystemCache | class public
SystemDisk | class public
SystemProductName | class public
ThreadCount | class public
TotalPageFile | class public
TotalPhysMemory | class public
TotalVirtualMemory | class public

Properties

ACPower | public, read-only | boolean |
BatteryRemaining | public, read-only | byte |
BatterySecondsRemaining | public, read-only | Int64 |
BatteryStatus | public, read-only | Cardinal |
CPUCoreCount | public, read-only | Byte |
CPURecords[Index: Byte] | public, read-only | TCPURecord |
CPUCurrentClock | public, read-only | cardinal |
CPUUsage | public, read-only | Integer |
CPUTempAvailable | public, read-only | boolean |
CPUTemp | public, read-only | double | CPU package temperature in °C
Interval | public | Cardinal |
LogicalCPUUsage[Index: Byte] | public, read-only | Integer |
MaxCPUUsageProcessID | public, read-only | cardinal |
MaxMemUsageProcessID | public, read-only | cardinal |
MaxIOUsageProcessID | public, read-only | cardinal |
TotalProcessPrivateBytes | public, read-only | uint64 |
TotalProcessWorkingSet | public, read-only | uint64 |
CPUMaxClock | public, read-only | cardinal |
CurrentProcess | public, read-only | TProcessRecord |
AutoSuspend | public | boolean |
RecordCount | public, read-only | integer |
SamplePeriod | public | cardinal |
SampleMethod | public | TSampleMethod |
CalculateHash | public | boolean |
EnumerateHandles | public | boolean |
EnumerateModules | public | boolean |
EnumerateThreads | public | boolean |
EvaluateSymbols | public | boolean |
EvaluateSecurityInfo | public | boolean |
PerformanceMeasuring | public | boolean |
RetrieveProcessIcon | public | boolean |
RetrieveProcessVersionInfo | public | boolean |
EvaluateProcessInfo | public | boolean |

Events

OnInterval | public | TSysMonNotifyEvent
OnSample | public | TSysProcMonSampleEvent

See Also

Demo 06 | demo
Demo 18 | demo
Demo 19 | demo
MSIX | application


BootTime

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function BootTime: TDateTime;


LogicalCPUCount

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function LogicalCPUCount: Byte;


MemoryLoad

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function MemoryLoad: Cardinal;


TotalPhysMemory

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function TotalPhysMemory: Int64;


FreePhysMemory

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function FreePhysMemory: Int64;


TotalPageFile

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function TotalPageFile: int64;


FreePageFile

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function FreePageFile: Int64;


TotalVirtualMemory

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function TotalVirtualMemory: Int64;


FreeVirtualMemory

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function FreeVirtualMemory: Int64;


DiskFreeSpace

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function DiskFreeSpace(const ADisk: string): Int64;


DiskUserFreeSpace

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function DiskUserFreeSpace(const ADisk: string): Int64;


DiskTotalSpace

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function DiskTotalSpace(const ADisk: string): Int64;


DiskFileSystem

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function DiskFileSystem(const ADisk: string): string;


SetThreadText

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

procedure SetThreadText(AID: Cardinal; const AText: string);


GetThreadText

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

function GetThreadText(AID: Cardinal): string;


RemoveThreadText

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

procedure RemoveThreadText(AID: Cardinal);


SaveThreadTexts

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

procedure SaveThreadTexts(const AFilename: string; ANoLock: Boolean = False);


SystemDisk

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function SystemDisk: string;


InstallDate

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function InstallDate: TDateTime;


SessionID

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function SessionID: Cardinal;


InstalledMemory

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function InstalledMemory: Int64;


SystemCache

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function SystemCache: Int64;


PagedPool

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function PagedPool: Int64;


NonPagedPool

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function NonPagedPool: Int64;


LimitCommitCharge

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function LimitCommitCharge: int64;


CurrentCommitCharge

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function CurrentCommitCharge: Int64;


ThreadCount

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function ThreadCount: Cardinal;


ProcessCount

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function ProcessCount: Cardinal;


HandleCount

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function HandleCount: Cardinal;


CPUName

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function CPUName: string;


SystemProductName

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function SystemProductName: string;


BaseBoardName

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function BaseBoardName: string;


BIOS

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function BIOS: string;


GetProcessImageName

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function GetProcessImageName(APID: Cardinal; AHandle: THandle): string;


GetProcessCommandLine

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function GetProcessCommandLine(APID: cardinal; AHandle: THandle): string;


GetProcessMemoryCounters

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function GetProcessMemoryCountersByPID(APID: Cardinal; AHAndle: THandle): TProcessMemoryCountersEx;


GetProcessGDIHandles

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class procedure GetProcessGDIHandles(APID: cardinal; var AList: TList);


GetProcessThreads

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class procedure GetProcessThreads(APID: Cardinal; AList: TList);


GetProcessHandles

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class procedure GetProcessHandles(APID: Cardinal; AHandle: THandle; AList: TList);


GetProcessHandlesEx

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class procedure GetProcessHandlesEx(APID: Cardinal; AHandle: THandle; AList: TList);


GetProcessHandlesEx2

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class procedure GetProcessHandlesEx2(APID: Cardinal; AHandle: THandle; AList: TList);


GetProcessModules

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function GetProcessModules(APID: Cardinal; AList: TList): boolean;


GetProcessWindows

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class procedure GetProcessWindows(APID: Cardinal; AOnlyVisible: Boolean; AList: TList);


GetProcessEnvironment

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class procedure GetProcessEnvironment(APID: Cardinal; AHandle: THandle; AList: TStringList);


LastShutdown

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function LastShutdown: TDateTime;


ReleaseID

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function ReleaseID: string;


Clear

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

procedure Clear;


GetRecord

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

procedure GetRecord(AIndex: Integer; var ARecord: TProcessRecord );


GetRecordByPID

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

procedure GetRecordByPID(APID: Cardinal; var ARecord: TProcessRecord );


GetChildProcesses

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

procedure GetChildProcesses(APID: Cardinal; AList: TStringList);


SetWatchedProcess

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

procedure SetWatchedProcess(APID: Cardinal; AValue: boolean);


IsProcessWatched

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

function IsProcessWatched(APID: Cardinal): boolean;


ClearWatch

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

procedure ClearWatch;


LoadThreadTexts

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

procedure LoadThreadTexts(APID: Cardinal; const AFilename: string; ANoLock: Boolean = False);


GetProcessList

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

procedure GetProcessList(AList: TList);


SetThreadDesc

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

procedure SetThreadDesc(AID: Cardinal; const ADescription: string; const AFilename: string = '');


GetThreadDesc

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

function GetThreadDesc(AID: Cardinal): string;


RemoveThreadDesc

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

procedure RemoveThreadDesc(AID: Cardinal; const AFilename: string = '');


FindThreadProcess

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function FindThreadProcess(AThreadID: Cardinal): Cardinal;


CreateSnapshot

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

procedure CreateSnapshot(out ASnapshot: TSystemSnapshot );


IsProcessWow64

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function IsProcessWow64(APID: Cardinal; AHandle: THandle): boolean;


GetProcessPEB

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function GetProcessPEB(APID: Cardinal; AHandle: THandle; var APEB: TPEB): boolean;


GetProcessPEB32

Threads ›› TSysProcMonThread ››

Referenced by: TSysProcMonThread

class function GetProcessPEB32(APID: Cardinal; AHandle: THandle; var APEB: TPEB32): boolean;


TSvcListMonThread

Threads ››

TSvcListMonThread monitors installed services and drivers in real-time and provides their properties.

MSI_SvcListMon.pas

TObject → TThread → TSvcListMonThread

Methods

Clear | public
GetList | public
GetRecord | public
GetRecordByDisplayName | public
GetRecordByName | public
GetServiceDependants | public
GetServicesByPID | public

Properties

AutoSuspend | public | Boolean
Interval | public | Cardinal
Types | public | TServiceTypes
RecordCount | public, read-only | integer

Events

OnInterval

public

TSvcListMonNotifyEvent

See Also

Demo 06

demo


GetRecord

Threads ›› TSvcListMonThread ››

Referenced by: TSvcListMonThread

procedure GetRecord(AIndex: Integer; var ARecord: TServiceRecord );


GetRecordByName

Threads ›› TSvcListMonThread ››

Referenced by: TSvcListMonThread

procedure GetRecordByName(const AName: string; var ARecord: TServiceRecord );


GetRecordByDisplayName

Threads ›› TSvcListMonThread ››

Referenced by: TSvcListMonThread

procedure GetRecordByDisplayName(const AName: string; var ARecord: TServiceRecord );


GetServiceDependants

Threads ›› TSvcListMonThread ››

Referenced by: TSvcListMonThread

procedure GetServiceDependants(const AName: string; AList: TStringList);


GetList

Threads ›› TSvcListMonThread ››

Referenced by: TSvcListMonThread

procedure GetList(AList: TList);

See Also

TServiceRecord


Clear

Threads ›› TSvcListMonThread ››

Referenced by: TSvcListMonThread

procedure Clear;


GetServicesByPID

Threads ›› TSvcListMonThread ››

Referenced by: TSvcListMonThread

procedure GetServicesByPID(APID: Cardinal; AList: TStringList);


TNetConMonThread

Threads ››

TNetConMonThread monitors network connections by processes in real-time and provides their properties. This class is so-called singleton - it means it ensures to be instantiated only once per application

MSI_NetConMon.pas

TObject → TThread → TNetConMonThread

Methods

Clear | public
GetList | public
GetRecord | public
SetLocalHostname | public
SetProcess | public
SetRemoteHostname | public

Properties

AutoSuspend | public | Boolean
Interval | public | Cardinal
RecordCount | public, read-only | integer

Events

OnInterval

public

TNetConMonNotifyEvent

See Also

Demo 20

demo


GetRecord

Threads ›› TNetConMonThread ››

Referenced by: TNetConMonThread

procedure GetRecord(AIndex: Integer; var ARecord: TNetConRecord );


GetList

Threads ›› TNetConMonThread ››

Referenced by: TNetConMonThread

procedure GetList(AList: TList);

See Also

TNetConRecord


Clear

Threads ›› TNetConMonThread ››

Referenced by: TNetConMonThread

procedure Clear;


SetProcess

Threads ›› TNetConMonThread ››

Referenced by: TNetConMonThread

procedure SetProcess(AIndex: integer; const AName: string; AVersionInfo: TVersionInfo ; AImageIndex: integer);


SetLocalHostname

Threads ›› TNetConMonThread ››

Referenced by: TNetConMonThread

procedure SetLocalHostname(AIndex: integer; const AName: string);


SetRemoteHostname

Threads ›› TNetConMonThread ››

Referenced by: TNetConMonThread

procedure SetRemoteHostname(AIndex: integer; const AName: string);


TPerfMonThread

Threads ››

TPerfMonThread monitors specified performance counters.

MSI_PerfMon.pas

TObject → TThread → TPerfMonThread

Methods

AddCounter | public
Clear | public
FindCounter | public
GetCounter | public
GetCounterInstances | class public
GetEnglishPerfCounterName | class public
GetLocalizedPerfCounterName | class public
MakeCounterName | class public
ParseCounterName | class public
ReadCounter | public
ReadPerfTexts | class public
RemoveCounter | public
AddGPUMonitoringCounters | public
IsGPUProcess | public
GetGPUProcessEngine | public

Properties

CounterCount | public, read-only | integer
Interval | public | cardinal
GPUMonitoringActive | puiblic | boolean
GPUMonitoringAvailable | public | boolean
GPU[ALUID: TLUID] | public | TGPU
GPUUtilization | public | double
GPUDedicatedUsage | public | double
GPUSharedUsage | public | double
GPUEngineUtilization[const ALUID: TLUID; const AEID: Cardinal] | public | double
GPUProcessUtilization[APID: Cardinal] | public | double
GPUProcessDedicatedUsage[APID: Cardinal] | public | double
GPUProcessSharedUsage[APID: Cardinal] | public | double

Events

OnInterval

public

TPerfMonNotifyEvent

See Also

Demo 21 | demo
Demo 33 | demo


GetCounter

Threads ›› TPerfMonThread ››

Referenced by: TPerfMonThread

procedure GetCounter(AIndex: Integer; out ACounter: TPerformanceCounter );


AddCounter

Threads ›› TPerfMonThread ››

Referenced by: TPerfMonThread

function AddCounter(const APath: string): boolean;


FindCounter

Threads ›› TPerfMonThread ››

Referenced by: TPerfMonThread

function FindCounter(APath: string): Integer;


RemoveCounter

Threads ›› TPerfMonThread ››

Referenced by: TPerfMonThread

procedure RemoveCounter(APath: string);


ReadCounter

Threads ›› TPerfMonThread ››

Referenced by: TPerfMonThread

function ReadCounter(APath: string): Double;


Clear

Threads ›› TPerfMonThread ››

Referenced by: TPerfMonThread

procedure Clear;


GetCounterInstances

Threads ›› TPerfMonThread ››

Referenced by: TPerfMonThread

class procedure GetCounterInstances(const APath: string; AList: TStringList);


ReadPerfTexts

Threads ›› TPerfMonThread ››

Referenced by: TPerfMonThread

class procedure ReadPerfTexts(ALocalized, AHelp: Boolean; AList: TStringList);


GetLocalizedPerfCounterName

Threads ›› TPerfMonThread ››

Referenced by: TPerfMonThread

class function GetLocalizedPerfCounterName(const APath: string): string;


GetEnglishPerfCounterName

Threads ›› TPerfMonThread ››

Referenced by: TPerfMonThread

class function GetEnglishPerfCounterName(const APath: string): string;


ParseCounterName

Threads ›› TPerfMonThread ››

Referenced by: TPerfMonThread

class procedure ParseCounterName(const APath: string; var AMachine,AObject,AInstance,AParentInstance,ACounter: string; var AInstanceIndex: Cardinal);


MakeCounterName

Threads ›› TPerfMonThread ››

Referenced by: TPerfMonThread

class function MakeCounterName(const AMachine,AObject,AInstance,AParentInstance,ACounter: string; AInstanceIndex: Cardinal): string;


AddGPUMonitoringCounters

Threads ›› TPerfMonThread ››

Referenced by: TPerfMonThread

function AddGPUMonitoringCounters: boolean;


IsGPUProcess

Threads ›› TPerfMonThread ››

Referenced by: TPerfMonThread

function IsGPUProcess(APID: Cardinal): boolean;


GetGPUProcessEngine

Threads ›› TPerfMonThread ››

Referenced by: TPerfMonThread

procedure GetGPUProcessEngine(APID: Cardinal; var ALUID: TLUID; var AEngineID: integer);


THndListMonThread

Threads ››

THndListMonThread monitors running processes in real-time and provides process properties, memory and CPU process usage.

MSI_HndListMon.pas

TObject → TThread → THndListMonThread

Methods

Clear | public
GetList | public
GetRecord | public
GetRecordByHandle | public

Properties

AutoSuspend | public | Boolean
Interval | public | Cardinal
Types | public, read-only | TSystemHandleTypes
RecordCount | public, read-only | integer

Events

OnCompleted

public

THndListMonNotifyEvent

See Also

Demo 22


GetRecord

Threads ›› THndListMonThread ››

Referenced by: THndListMonThread

procedure GetRecord(AIndex: Integer; var ARecord: THandleRecord );


GetRecordByHandle

Threads ›› THndListMonThread ››

Referenced by: THndListMonThread

procedure GetRecordByHandle(AHandle: Word; var ARecord: THandleRecord );


GetList

Threads ›› THndListMonThread ››

Referenced by: THndListMonThread

procedure GetList(AList: TList);

See Also

THandleRecord


Clear

Threads ›› THndListMonThread ››

Referenced by: THndListMonThread

procedure Clear;


Classes

TMachineJournal

TNetworkConfiguration


TMachineJournal

Classes ››

TMachineJournal scans Windows EventLog for specified events and creates action timeline.

MiTeC_MachineJournal.pas

TObject → TMachineJournal

Methods

Clear | public
Find | public
Save | public
RefreshData | public

Properties

Host | public | string
Machine | public | string
Count | public, read-only | Integer
Records[AIndex: integer] | public, read-only | TEventRecord


Clear

Classes ›› TMachineJournal ››

Referenced by: TMachineJournal

procedure Clear;


Find

Classes ›› TMachineJournal ››

Referenced by: TMachineJournal

function Find(AKind: TEventKind ; ATimestamp: TDateTime): Integer;


Save

Classes ›› TMachineJournal ››

Referenced by: TMachineJournal

procedure Save(const AFilename: string);


RefreshData

Classes ›› TMachineJournal ››

Referenced by: TMachineJournal

function RefreshData: Cardinal;


TNetworkConfiguration

Classes ››

TNetworkConfiguration provides detailed network configuration information.

MiTeC_NCC.pas

TObject → TNetworkConfiguration

Methods

FindAdapter | public
FindAddress | public
GetSubnetMask | public
SetIP | public
SetDNS | public
FindFirstOperational | public
FindFirstOperationalIntfIdx | public
GetTraffic | public
RefreshData | public
Clear | public

Properties

Adapter[Index: Word] | public, read-only | TAdapter
AdapterImageIndex[Index: Word] | public | integer
AdapterMark[Index: Word] | public | boolean
AdapterCount | public, read-only | Word
AddressRecord[Index: Word] | public, read-only | TAddressRecord
AdressRecordCount | public, read-only | word
ARPRecord[Index: Word] | public, read-only | TAdressRecord
ARPRecordCount | public, read-only | word
HostName | public, read-only | string
DomainName | public, read-only | string
ProxyEnabled | public, read-only | boolean
RoutingEnabled | public, read-only | boolean
DNSEnabled | public, read-only | boolean
PrimaryDNSSuffix | public, read-only | string
DHCPScopeName | public, read-only | string
DNSServers | public, read-only | TStrings
NodeType | public, read-only | TNodeType
BestInterfaceIdx | public, read-only | Cardinal
CurrentIP | public, read-only | string
CurrentMAC | public, read-only | string
CurrentNetwork | public, read-only | string


Clear

Classes ›› TNetworkConfiguration ››

Referenced by: TNetworkConfiguration

procedure Clear;


RefreshData

Classes ›› TNetworkConfiguration ››

Referenced by: TNetworkConfiguration

procedure RefreshData;


FindAdapter

Classes ›› TNetworkConfiguration ››

Referenced by: TNetworkConfiguration

function FindAdapter(AName: string): Integer; overload;

function FindAdapter(AIntfIdx: integer): Integer; overload;


FindAddress

Classes ›› TNetworkConfiguration ››

Referenced by: TNetworkConfiguration

function FindAddress(AIP: string): Integer; overload;

function FindAddress(AIntfIdx: Cardinal): Integer; overload;


GetSubnetMask

Classes ›› TNetworkConfiguration ››

Referenced by: TNetworkConfiguration

function GetSubnetMask(AIP: string): string;


SetIP

Classes ›› TNetworkConfiguration ››

Referenced by: TNetworkConfiguration

function SetIP(AIntfIdx: Cardinal; AStatic: Boolean; AIPv4,AMask,AGateway: string): Int64;


SetDNS

Classes ›› TNetworkConfiguration ››

Referenced by: TNetworkConfiguration

function SetDNS(AIntfIdx: Cardinal; AStatic: Boolean; APreferred,AAlternate: string): Int64;


FindFirstOperational

Classes ›› TNetworkConfiguration ››

Referenced by: TNetworkConfiguration

function FindFirstOperational: Integer;


FindFirstOperationalIntfIdx

Classes ›› TNetworkConfiguration ››

Referenced by: TNetworkConfiguration

function FindFirstOperationalIntfIdx: Cardinal;


GetTraffic

Classes ›› TNetworkConfiguration ››

Referenced by: TNetworkConfiguration

procedure GetTraffic(AIntfIdx: Cardinal; var AIn,AOut: UInt64);


TCPUCache

Classes ››

Referenced by: TMiTeC_CPU

TCPUCache = class(TPersistent)

published

property Level1: TCPUSegmentedCache ;

property Level2: TCPUCacheDetails ;

property Level3: TCPUCacheDetails ;

property Trace: TCPUCacheDetails ;

end;


TCPUCacheDetails

Classes ››

Referenced by: TMiTeC_CPU , TCPUSegmentedCache , TCPUCache

TCPUCacheDetails = class(TPersistent)

public

property Descriptors: TCacheDescriptors;

published

property Typ: Byte;

property Descriptor: string;

property Associativity: TCacheAssociativity ;

property LineSize: integer;

property Size: integer;

property Ways: integer;

property Partitions: integer;

property Level: integer;

property SharedWays: integer;

end;


TCPUSegmentedCache

Classes ››

Referenced by: TMiTeC_CPU , TCPUCache

TCPUSegmentedCache = class(TPersistent)

published

property Code: TCPUCacheDetails ;

property Data: TCPUCacheDetails ;

property Unified: TCPUCacheDetails ;

end;


TCPUFeatures

Classes ››

Referenced by: TMiTeC_CPU

TCPUFeatures = class(TPersistent)

published

property Standard: TCPUFeatureSet ;

property Extended: TCPUFeatureSet ;

property PowerManagement: TCPUFeatureSet ;

property SecureVirtualMachine: TCPUFeatureSet ;

property Instructions: string read GetInstructions;

end;


TCPUFeatureSet

Classes ››

Referenced by: TMiTeC_CPU , TCPUFeatures

TCPUFeatureSet = class(TPersistent)

public

property Features[Index: Byte]: TCPUFeature ;

property FeaturesByName[const Name: string]: TCPUFeature ;

published

property Count: Cardinal;

end;


TFirmware

Classes ››

TFirmware reads and provides access to SMBIOS and ACPI data and tables

MiTeC_Firmware.pas

TObject → TFirmware

Methods

GetSystemFirmwareTables | class
DumpSystemFirmwareTable | class
IsUEFI | class
UEFIGUID | class
UEFISecureBoot | class
WindowsProductKey | class
SMBIOSVersion | class
SMBIOS | class

See Also

Demo 34 | demo
MSIX | application
TMiTeC_SMBIOS | component


GetSystemFirmwareTables

Classes ›› TFirmware ››

Referenced by: TFirmware

class function GetSystemFirmwareTables(ATableSignature: Cardinal; AList: TStrings): boolean;


DumpSystemFirmwareTable

Classes ›› TFirmware ››

Referenced by: TFirmware

class function DumpSystemFirmwareTable(ATableSignature, ATableID: Cardinal; out AData: TBytes): Boolean;


IsUEFI

Classes ›› TFirmware ››

Referenced by: TFirmware

class function IsUEFI: Boolean;


UEFIGUID

Classes ›› TFirmware ››

Referenced by: TFirmware

class function UEFIGUID: TGUID;


UEFISecureBoot

Classes ›› TFirmware ››

Referenced by: TFirmware

class function UEFISecureBoot: boolean;


WindowsProductKey

Classes ›› TFirmware ››

Referenced by: TFirmware

class function WindowsProductKey: string; static;


SMBIOSVersion

Classes ›› TFirmware ››

Referenced by: TFirmware

class function SMBIOSVersion: string;


SMBIOS

Classes ›› TFirmware ››

Referenced by: TFirmware

class function SMBIOS(out AHeader: TSMBIOSHeader ; out AData: TBytes): boolean;


TSMBIOS

Classes ››

TSMBIOS reads and provides access to SMBIOS data and tables

MiTeC_Firmware.pas

TObject → TSMBIOS

Methods

Clear | public
SaveToStream | public
LoadFromStream | public
LoadFromAPI | public
LoadFromWMI | public
LoadFromRegistry | public
LoadFromROM | public
LoadFromSystem | public
FindTableRecord | public
FindTableIndex | public
GetTableName | public

Properties

Data | public, read-only | TBytes
MajorVersion | public, read-only | byte
MinorVersion | public, read-only | byte
DMIRevision | public, read-only | byte
Size | public, read-only | cardinal
TableCount | public, read-only | integer
Tables[AIndex: integer] | public, read-only | TSMBIOSTable
ArrayValue[Address: Cardinal; Size: Byte] | public, read-only | TArrayBuffer
ByteValue[Address: Cardinal] | public, read-only | Byte
DWORDValue[Address: Cardinal] | public, read-only | Cardinal
CharValue[Address: Cardinal] | public, read-only | AnsiChar
QWORDValue[Address: Cardinal] | public, read-only | Int64
StringValue[Address: Cardinal; Index: Byte] | public, read-only | string
WordValue[Address: Cardinal] | public, read-only | Word

See Also

SMBIOS value reading | code example
Demo 34 | demo
MSIX | application
TMiTeC_SMBIOS | component
TFirmware | class


Clear

Classes ›› TSMBIOS ››

Referenced by: TSMBIOS

procedure LoadFromStream(AStream: TStream);


SaveToStream

Classes ›› TSMBIOS ››

Referenced by: TSMBIOS

procedure SaveToStream(AStream: TStream);


LoadFromStream

Classes ›› TSMBIOS ››

Referenced by: TSMBIOS

procedure LoadFromStream(AStream: TStream);


LoadFromAPI

Classes ›› TSMBIOS ››

Referenced by: TSMBIOS

function LoadFromAPI: boolean;


LoadFromWMI

Classes ›› TSMBIOS ››

Referenced by: TSMBIOS

function LoadFromWMI: boolean;


LoadFromRegistry

Classes ›› TSMBIOS ››

Referenced by: TSMBIOS

function LoadFromRegistry: boolean;


LoadFromROM

Classes ›› TSMBIOS ››

Referenced by: TSMBIOS

function LoadFromROM: boolean;


LoadFromSystem

Classes ›› TSMBIOS ››

Referenced by: TSMBIOS

function LoadFromSystem: boolean;


FindTableRecord

Classes ›› TSMBIOS ››

Referenced by: TSMBIOS

function FindTableRecord(ATyp: byte; AIndex: integer = 0): TSMBIOSTable ;


FindTableIndex

Classes ›› TSMBIOS ››

Referenced by: TSMBIOS

function FindTableIndex(ATyp: byte; AIndex: integer = 0): integer;


GetTableName

Classes ›› TSMBIOS ››

Referenced by: TSMBIOS

function GetTableName(ATyp: byte): string;


Types

Copyright © 1997-2023, Michal Mutl. All Rights Reserved.


TStorageInfoRecord

Types ››

Referenced by: TMiTeC_Component , SaveToStorage , LoadFromStorage

TStorageInfoRecord = record

SIFVersion: Integer;

Machine: string;

Title,

Copyright,

Application: string;

OS,

OSName,

OSEdition: string;

OSMajorVersion: Integer;

OSMinorversion: Integer;

OSBuildNumber: Integer;

OSCSDVersion: string;

Timestamp: TDateTime;

Security: string;

LoggedUser: string;

LoggedUserSID: string;

Account: string;

Session: string;

SessionID: Integer;

Comment: string;

IP: string;

FileName: string;

MD5: string;

Encrypted: Boolean;

MSICSVersion: string;

EXEBits: integer;

end;


TCodeStreamProcedure

Types ››

Referenced by: TMiTeC_Component , SaveToStorage , LoadFromStorage , System Information File

TCodeStreamProcedure = procedure(InStream, OutStream: TStream);

Description

Procedure prototype for encoding/decoding procedure used for read/write data from/to streams to System Information File

See Also

Demo 02

demo


TSessionTypes

Types ››

Referenced by: TMiTeC_Component , TMiTeC_Machine

TSessionType = (stLocal,stVMWare,stVPC,stVBOX,stQEMU,stTerminal,stCitrix,stHyperV);

TSessionTypes = set of TSessionType;


TScanObjects

Types ››

Referenced by: TMiTeC_Component , RefreshData

TScanObject = (soCPU, soMachine, soDevices, soDisplay, soMonitor, soNetwork, soMedia, soMemory, soStorage, soUSB, soEngines, soAPM, soDisk, soOS, soPrinters, soSoftware, soStartup, soProcesses, soMSProduct, soBT, soEventLog, soAD, soSecurity, soWIFI);

TScanObjects = set of TScanObject;


THeaderWriter

Types ››

Referenced by: TMiTeC_Component

THeaderWriter = procedure(const AFilename, AComment: string; AEncoded: boolean) of object;


THeaderReader

Types ››

Referenced by: TMiTeC_Component

THeaderReader = procedure(const AFilename: string; AHeader: Pointer) of object;


TADObject

Types ››

Referenced by: TMiTeC_AD

TADProvider = (adLDAP, adWinNT, adNDS);

TADObjectType = (adCommon, adDomain, adUser, adComputer, adGroup);

TADProperty = record

Provider: TADProvider;

Name: string;

Typ: Integer;

Value: Variant;

end;

TADObject = record

ObjectType: TADObjectType;

Props: array of TADProperty;

function GetProp(AName: string): TADProperty;

function GetPropIdx(AName: string): integer;

function GetName: WideString;

function GetDN: WideString;

function GetIP: WideString;

function GetPropAsDelimitedText(AName: string): string;

procedure ClearProps;

procedure AddProp(AName: string; ATyp: Integer; AValue: Variant);

end;

TADObjects = array of TADObject;


TProcessorPowerInformation

Types ››

Referenced by: TMiTeC_APM

TProcessorPowerInformation = record

Number,

MaxMhz,

CurrentMhz,

MhzLimit,

MaxIdleState,

CurrentIdleState: Cardinal;

end;


TBatteryRecord

Types ››

Referenced by: TMiTeC_APM

TBatteryRecord = record

Tag: Byte;

SymbolicLink,

Description,

Devicename,

SerialNumber,

UniqueID,

Chemistry,

Manufacturer: string;

Temperature: Cardinal;

DesignedCapacity,

Capacity,

CurrentCapacity,

Voltage,

PowerState,

EstimatedTime: Cardinal;

Rate: Longint;

end;


TPowerStatus

Types ››

Referenced by: TMiTeC_APM

TPowerStatus = (psUnknown, psOffline, psOnline);


TBatteryState

Types ››

Referenced by: TMiTeC_APM

TBatteryStatusFlag = (bsUnknown, bsHigh, bsLow, bsCritical, bsCharging, bsNoBattery, bsDischarging);

TBatteryState = set of TBatteryStatusFlag;


TBTDevice

Types ››

Referenced by: TMiTeC_BT

TBTDevice = record

Name: string;

LastUsed,

LastSeen: TDateTime;

Authenticated,

Remembered,

Connected: Boolean;

DeviceClass: Cardinal;

Address: String;

end;


TCacheAssociativity

Types ››

Referenced by: TMiTeC_CPU

TCacheAssociativity = (caNone, caDirect, ca2Way, ca4Way, ca8Way, ca12Way, ca16Way, caFull, ca6Way, ca24way);


TCPUFeature

Types ››

Referenced by: TMiTeC_CPU , TCPUFeatureSet

TCPUFeature = record

Definition: TFeatureDefinition ;

Value: Boolean;

end;

TAvailableFeatures = array of TCPUFeature;


TFeatureDefinition

Types ›› TCPUFeature ››

Referenced by: TMiTeC_CPU , TCPUFeature

TFeatureDefinition = record

Func: Cardinal;

ExX: TExXRegister ;

Index: Byte;

FeatSet: TFeatureSet ;

Availability: TFeatureAvailability ;

Name: string;

Desc: string;

end;


TExXRegister

Types ›› TCPUFeature ››

Referenced by: TMiTeC_CPU , TFeatureDefinition

TExXRegister = (rEAX, rEBX, rECX, rEDX);


TFeatureAvailability

Types ›› TCPUFeature ››

Referenced by: TMiTeC_CPU , TFeatureDefinition

TFeatureAvailability = (faCommon, faIntel, faAmd, faCyrix);


TFeatureSet

Types ›› TCPUFeature ››

Referenced by: TMiTeC_CPU , TFeatureDefinition

TFeatureSet = (fsStandard, fsExtended, fsPowerManagement, fsSecureVirtualMachine);


TCPUVendor

Types ››

Referenced by: TMiTeC_CPU

TCpuVendor = (cvNone, cvUnknown, cvIntel, cvAmd, cvCyrix, cvIDT, cvNexGen, cvUMC, cvRise, cvSiS, cvGeode, cvTransmeta);


TIntelBrands

Types ››

Referenced by: TMiTeC_CPU

TIntelBrand = (ibCeleron, ibPentium, ibXeon, ibMP, ibMobile, ibM, ibDuoCore, ibP4);

TIntelBrands = set of TIntelBrand;


TDeviceChangeMessage

Types ››

Referenced by: TMiTeC_DeviceMonitor

TDeviceChangeMessage = procedure(Sender: TObject; Msg: TMessage) of object;


TDeviceChangeEvent

Types ››

Referenced by: TMiTeC_DeviceMonitor

TDeviceChangeEvent = procedure(Sender: TObject; DeviceDesc: TDeviceDesc ) of object;


TDeviceDesc

Types ››

TDeviceDesc = record

SymbolicName,

ClassName,

Name,

Location,

Driver,

Description,

GUID: string;

end;


TVolumeChangeEvent

Types ››

Referenced by: TMiTeC_DeviceMonitor

TVolumeChangeEvent = procedure(Sender: TObject; Drives: string; Remote: boolean) of object;


TResourceList

Types ››

TResourceItem = record

Resource: string;

Share: CM_SHARE_DISPOSITION;

Device: string;

DeviceClassGUID :TGUID;

end;

TResourceList = array of TResourceItem;


TDevice

Types ››

Referenced by: TMiTeC_Devices

TDevice = record

ClassGUID: TGUID;

Name,

ClassName,

ClassDesc,

ClassIcon,

FriendlyName,

Description,

GUID,

Manufacturer,

Location: String;

PCINumber,

DeviceNumber,

FunctionNumber: Integer;

HardwareID,

SymbolicLink,

Subkey,

Parent,

DeviceParam,

Driver,

DriverDate,

DriverVersion,

DriverProvider,

DriverKey: string;

InfPath,

Service,

ServiceName,

ServiceGroup: string;

ServiceType: integer;

ImagePath: string;

RegKey: string;

ResourceListKey,

ResourceListValue: string;

VendorID,

DeviceID,

SubSysID,

Revision: Cardinal;

DriverDatetime,

InstallDate,

FirstInstallDate,

LastArrivalDate,

LastRemovalDate: TDateTime;

InstallID,

IconPath: string;

end;


TMediaType

Types ››

Referenced by: TMiTeC_Disk

TMediaType = (dtUnknown, dtNotExists, dtRemovable, dtFixed, dtRemote, dtCDROM, dtRAMDisk);


TFileFlags

Types ››

Referenced by: TMiTeC_Disk

TFileFlag = (fsCaseIsPreserved, fsCaseSensitive, fsUnicodeStoredOnDisk, fsPersistentAcls, fsFileCompression, fsVolumeIsCompressed, fsLongFileNames, fsEncryptedFileSystemSupport, fsObjectIDsSupport, fsReparsePointsSupport, fsSparseFilesSupport, fsDiskQuotasSupport);

TFileFlags = set of TFileFlag;


TWatchFilterSet

Types ››

Referenced by: TMiTeC_DiskMonitor

TWatchFilter = (wfFilename, wfDirname, wfAttrs, wfSize, wfLastWrite, wfLastAccess, wfCreation, wfSecurity);

TWatchFilterSet = set of TWatchFilter;


TWatchActionSet

Types ››

Referenced by: TMiTeC_DiskMonitor , TEventChange

TWatchAction=(waAdd, waRemove, waModify, waRenameOld, waRenameNew);

TWatchActionSet = set of TWatchAction;


TEventChange

Types ››

Referenced by: TMiTeC_DiskMonitor

TEventChange = procedure(Sender: TObject; Action: TWatchAction ; FileName: string) of object;


TDisplayAdapter

Types ››

Referenced by: TMiTeC_Display

TDisplayAdapter = record

Name,

DAC,

Chipset,

Manufacturer,

BIOS: string;

Memory: int64;

Service,

Driver,

DriverDesc,

DriverVersion,

DevPar: string;

PhysID: Cardinal;

LUID: TLUID;

Location,

SymbolicLink: string;

PCI,

Dev,

Func: integer;

NodeCount: Integer;

WDDMVersion: string;

Nodes: array of string;

Flags: Cardinal;

end;

TDisplayAdapters = array of TDisplayAdapter;


TRasterCaps

Types ››

Referenced by: TMiTeC_Display

TRasterCap = (rcRequiresBanding, rcTransferBitmaps, rcBitmaps64K, rcSetGetDIBits, rcSetDIBitsToDevice, rcFloodfills, rcWindows2xFeatures, rcPaletteBased, rcScaling, rcStretchBlt, rcStretchDIBits);

TRasterCaps = set of TRasterCap;


TCurveCaps

Types ››

Referenced by: TMiTeC_Display

TCurveCap = (ccCircles, ccPieWedges, ccChords, ccEllipses, ccWideBorders, ccStyledBorders, ccWideStyledBorders, ccInteriors, ccRoundedRects);

TCurveCaps = set of TCurveCap;


TLineCaps

Types ››

Referenced by: TMiTeC_Display

TLineCap = (lcPolylines, lcMarkers, lcMultipleMarkers, lcWideLines, lcStyledLines, lcWideStyledLines, lcInteriors);

TLineCaps = set of TLineCap;


TTextCaps

Types ››

Referenced by: TMiTeC_Display

TTextCap = (tcCharOutPrec,tcStrokeOutPrec,tcStrokeClipPrec,tcCharRotation90, tcCharRotationAny, tcScaleIndependent,tcDoubledCharScaling, tcIntMultiScaling, tcAnyMultiExactScaling, tcDoubleWeightChars, tcItalics, tcUnderlines, tcStrikeouts, tcRasterFonts, tcVectorFonts, tcNoScrollUsingBlts);

TTextCaps = set of TTextCap;


TShadeBlendCaps

Types ››

Referenced by: TMiTeC_Display

TShadeBlendCap = (sbcConstAlpha, sbcGradRect, sbcGradTri, sbcPixelAlpha, sbcPremultAlpha);

TShadeBlendCaps = set of TShadeBlendCap;


TColorMgmtCaps

Types ››

Referenced by: TMiTeC_Display

TColorMgmtCap = (cmcCMYKColor, cmcDeviceICM, cmcGammaRamp);

TColorMgmtCaps = set of TColorMgmtCap;


TPolygonCaps

Types ››

Referenced by: TMiTeC_Display

TPolygonCap = (pcAltFillPolygons, pcRectangles, pcWindingFillPolygons, pcSingleScanlines, pcWideBorders, pcStyledBorders, pcWideStyledBorders, pcInteriors);

TPolygonCaps = set of TPolygonCap;


TArrayBuffer

Types ››

Referenced by: TMiTeC_DMA

TArrayBuffer = array[0..254] of AnsiChar;


TFileRecord

Types ››

Referenced by: TMiTeC_DriveContent , TOnFileEvent

TFileRecord = record

ObjectName: string;

Accessed,

Created,

Modified: TDateTime;

Size: Int64;

Attrs: integer;

MD5: string;

Metadata: string;

end;


TOnFileEvent

Types ››

Referenced by: TMiTeC_DriveContent

TOnFileEvent = procedure (Sender: TObject; var FileInfo: TFileRecord ; var Accept: boolean) of object;


TASPIConfig

Types ››

TASPIConfig = record

AdapterCount: integer;

Host,

LUN,

ID,

Vendor,

Model,

Typ,

Status,

Extra,

Revision: TStringList;

end;


TSessionProtocol

Types ››

Referenced by: TMiTeC_Machine

TSessionProtocol = (spNone = -1, spConsole, spICA, spRDP);


TLogContainer

Types ››

Referenced by: TMiTeC_EventLog

TLogContainer = record

Name,

Filename: string;

end;

TLogContainers = array of TLogContainer;


TLogRecord

Types ››

Referenced by: TMiTeC_EventLog , TOnReadEventLog

TEventType = (etError, etWarning, etInformation, etAuditSuccess, etAuditFailure);

PLogRecord = ^TLogRecord;

TLogRecord = record

EventType: TEventType;

DateTime: TDateTime;

Source: string;

Category: string;

EventID: Cardinal;

Username: string;

Domain: string;

Computer: string;

Description: string;

BinaryData: string;

CharData: string;

end;


TBIOSValue

Types ››

TBIOSValue = record

Name,

Value: string;

end;


TMonitorRecord

Types ››

Referenced by: TMiTeC_Monitor

TMonitorRecord = record

Handle: HMONITOR;

DeviceID: string;

DeviceDescription,

Model: string;

Manufacturer: string;

RegistryKey: string;

DriverKey: string;

Bounds: TRect;

WorkArea: TRect;

IdentityNum: integer;

MonitorNum: integer;

DPI: integer;

Primary: boolean;

ScreenMonIndex: integer;

EDID: TBytes;

EDIDRecord: TEDIDRecord ;

end;


TEDIDRecord

Types ›› TMonitorRecord ››

Referenced by: TMiTeC_Monitor , TMonitorRecord

TEDIDRecord = record

Name: string;

ProductNumber: string;

Text: string;

Width: byte;

Height: Byte;

SerialNumber: Cardinal;

Week: word;

Year: word;

ManufacturerCode: string;

ProductCode: word;

Gamma: Double;

Version: string;

MaxHRes: word;

MaxVRes: word;

Diagonal: double;

MinVertFieldRate: word; // Hz

MaxVertFieldRate: word; // Hz

MinHorzLineRate: word; // kHz

MaxHorzLineRate: word; // kHz

MaxPixelClock: word; // MHz

VideoInterface: byte;

IEEEID: cardinal;

procedure LoadFromBytes(const AData: TBytes);

end;


TMSProduct

Types ››

Referenced by: TMiTeC_MSProduct

TMSProduct = record

Name: string;

ProductID: string;

ProductKey: string;

RegistryPath: string;

end;


TConnectionRecord

Types ››

Referenced by: TMiTeC_Network , TMiTeC_NetResources

PConnectionRecord = ^TConnectionRecord;

TConnectionRecord = record

Name: string;

UserName: string;

ID: Cardinal;

ConnType: TShareType ;

Time: Cardinal;

OpenFiles: Cardinal;

Users: Cardinal;

end;


TShareType

Types ››

Referenced by: TMiTeC_Network , TMiTeC_NetResources , TNTShareRecord , TConnectionRecord

TShareType = (stDisk, stPrnQue, stCommDev, stIPC, stSpecial);


TNTShareRecord

Types ››

Referenced by: TMiTeC_Network , TMiTeC_NetResources

PNTShareRecord = ^TNTShareRecord;

TNTShareRecord = record

Name: string;

ShareType: TShareType ;

Comment: string;

Permissions: Cardinal;

MaxUserCount: Cardinal;

CurUserCount: Cardinal;

Path: string;

Password: string;

SecurityDesc: Boolean;

end;


TNTSessionRecord

Types ››

Referenced by: TMiTeC_Network , TMiTeC_NetResources

PNTSessionRecord = ^TNTSessionRecord;

TNTSessionRecord = record

Name: string;

UserName: string;

SesiType: string;

OpenFiles: Cardinal;

ConnectedTime: Cardinal;

IdleTime: Cardinal;

Guest: Boolean;

Transport: string;

end;


TOpenFileRecord

Types ››

Referenced by: TMiTeC_Network , TMiTeC_NetResources

POpenFileRecord = ^TOpenFileRecord;

TOpenFileRecord = record

Name,

UserName,

Sharename: string;

Locks: Cardinal;

Mode: Cardinal;

ID: Cardinal;

end;


TAdapter

Types ››

Referenced by: TMiTeC_Network , TMiTeC_TCPIP

TAdapterType = (atOther, atEthernet, atTokenRing, atFDDI, atPPP, atLoopback, atATM, atIEEE80211, atTunnel, atIEEE1394, atIEEE80216_WMAN, atWWANPP, atWWANPP2);

TAdapter = record

Name,

Alias,

AdapterName,

Address: string;

MaxSpeed,

MTU: Cardinal;

Typ: TAdapterType;

AdminStatus,

OperStatus: Cardinal;

EnableDHCP,

HaveWINS,

DNSEnabled,

NETBIOSEnabled,

IPv4Enabled,

IPv6Enabled: Boolean;

IPAddress,

IPAddressMask,

Gateway_IPAddress,

Gateway_IPAddressMask,

DHCP_IPAddress,

DHCP_IPAddressMask,

PrimaryWINS_IPAddress,

PrimaryWINS_IPAddressMask,

SecondaryWINS_IPAddress,

SecondaryWINS_IPAddressMask: TStringList;

DNSServers: TStringList;

IPv6Address,

Gateway_IPv6,

DHCP_IPv6,

PrimaryWINS_IPv6,

DNSServers_IPv6: TStringList;

DNSSuffix: string;

IntfIdx: Cardinal;

end;


TAddressRecord

Types ››

Referenced by: TMiTeC_Network , TMiTeC_TCPIP

TAddressRecord = record

IP,

Mask: string;

IntfIdx: Cardinal;

Typ: Word;

end;


TNodeType

Types ››

Referenced by: TMiTeC_Network , TMiTeC_TCPIP

TNodeType = (ntUnknown, ntBroadcast, ntPeerToPeer, ntMixed, ntHybrid);


TOSVersion

Types ››

Referenced by: TMiTeC_OperatingSystem

TOSVersion = (osUnknown, os2K, osXP, os2K3, osVista, os2K8, osSeven, os2K8R2, osWin8, os2K12, osBlue, os2K12R2, osWin10, os2K16);


TUpdateRecord

Types ››

Referenced by: TMiTeC_OperatingSystem

TUpdateRecord = record

ID,

InstallDate,

InstalledBy,

Description,

SPInEffect,

Comment: string;

end;


TNTProductType

Types ››

Referenced by: TMiTeC_OperatingSystem

TNtProductType = (ptUnknown, ptWorkStation, ptServer, ptAdvancedServer, ptDataCenter, ptWeb);


TNTSuites

Types ››

Referenced by: TMiTeC_OperatingSystem

TNTSuite = (suSmallBusiness, suEnterprise, suBackOffice, suCommunications, suTerminal, suSmallBusinessRestricted, suEmbeddedNT, suDataCenter, suSingleUserTS,suPersonal,suBlade,suEmbeddedRestricted, suStorageServer, suComputeCluster, suHomeServer);

TNTSuites = set of TNTSuite;


TConnectionType

Types ››

Referenced by: TMiTeC_OperatingSystem , TMiTeC_Internet

TConnectionType = (ctNone, ctLAN, ctDialup);


TMeasureSystem

Types ››

Referenced by: TMiTeC_OperatingSystem , TMiTeC_LocaleInfo

TMeasureSystem = (Metric, US);


TPositiveCurrencyMode

Types ››

Referenced by: TMiTeC_OperatingSystem , TMiTeC_LocaleInfo

TPositiveCurrencyMode = (Prefix_No_Separation, Suffix_No_Separation, Prefix_One_Char_Separation, Suffix_One_Char_Separation);


TDateOrder

Types ››

Referenced by: TMiTeC_OperatingSystem , TMiTeC_LocaleInfo

TDateOrder = (MDY, DMY, YMD);


TTimeFormat

Types ››

Referenced by: TMiTeC_OperatingSystem , TMiTeC_LocaleInfo

TTimeFormat = (H12, H24);


TYearFormat

Types ››

Referenced by: TMiTeC_OperatingSystem , TMiTeC_LocaleInfo

TYearFormat = (TwoDigit, FourDigit);


TDetectionRange

Types ››

Referenced by: TMiTeC_ProcessList

TDetectionType = (dtProcesses, dtServices);

TDetectionRange = set of TDetectionType;


TSMBIOSHeader

Types ››

Referenced by: TFirmware

TSMBIOSHeader = record

MajorVersion: Byte;

MinorVersion: Byte;

DmiRevision: Byte;

Length: Cardinal;

end;


TSMBIOSTableHeader

Types ››

Referenced by: TSMBIOSTable , TSMBIOS , TMiTeC_SMBIOS

TSMBIOSTableHeader = packed record

Typ: Byte;

Length: Byte;

Handle: Word;

end;


TSMBIOSTable

Types ››

Referenced by: TSMBIOS , TMiTeC_SMBIOS

TSMBIOSTable = record

Header: TSMBIOSTableHeader;

Offset: Cardinal;

Name: string;

Index: integer;

end;


TSMBIOS_Processor

Types ››

Referenced by: TMiTeC_SMBIOS

TSMBIOS_Processor = record

Typ,

Family: Byte;

Socket,

Manufacturer,

Version: string;

Upgrade: TSMBIOS_Upgrade ;

Voltage: double;

Frequency,

ExternalClock: WORD;

SerialNumber,

AssetTag,

PartNumber: string;

CoreCount,

CoreEnabled,

ThreadCount: Word;

Flags: Word;

Family2: Word;

ThreadEnabled: word;

end;


TSMBIOS_Upgrade

Types ›› TSMBIOS_Processor ››

Referenced by: TMiTeC_SMBIOS , TSMBIOS_Processor

TSMBIOS_Upgrade = (smuOther, smuUnknown, smuDaughterBoard, smuZIFSocket, smuReplaceablePiggyBack, smuNone, smuLIFSocket, smuSlot1, smuSlot2, smu370pinSocket, smuSlotA, smuSlotM, smuSocket423, smuSocketA, smuSocket478, smuSocket754, smuSocket940, smuSocket939, smuSocketmPGA604, smuSocketLGA771, smuSocketLGA775, smuSocketS1, smuSocketAM2, smuSocketF1207, smuSocketLGA1366, smuSocketG34, smuSocketAM3, smuSocketC32, smuSocketLGA1156, smuSocketLGA1567, smuSocketPGA988A, smuSocketBGA1288, smuSocketrPGA988B, smuSocketBGA1023, smuSocketBGA1224, smuSocketBGA1155, smuSocketLGA1356, smuSocketLGA2011, smuSocketFS1, smuSocketFS2, smuSocketFM1, smuSocketFM2, smuSocketLGA2011_3, smuSocketLGA1356_3, smuSocketLGA1150, smuSocketBGA1168,

smuSocketBGA1234, smuSocketBGA1364, smuSocketAM4, smuSocketLGA1151, smuSocketBGA1356, smuSocketBGA1440, smuSocketBGA1515, smuSocketLGA3647_1, smuSocketSP3, smuSocketSP3r2, smuSocketLGA2066, smuSocketBGA1392, smuSocketBGA1510, smuSocketBGA1528);


TSMBIOS_MemoryModule

Types ››

Referenced by: TMiTeC_SMBIOS

TSMBIOS_MemoryModule = record

Socket: string;

Speed: Word;

Size: Cardinal;

Types: TSMBIOS_MemoryTypes ;

end;


TSMBIOS_MemoryTypes

Types ›› TSMBIOS_MemoryModule ››

Referenced by: TMiTeC_SMBIOS , TSMBIOS_MemoryModule

TSMBIOS_MemoryType = (smmtOther, smmtUnknown, smmtStandard, smmtFastPageMode, smmtEDO, smmtParity, smmtECC, smmtSIMM, smmtDIMM, smmtBurstEDO, smmtSDRAM);

TSMBIOS_MemoryTypes = set of TSMBIOS_MemoryType;


TSMBIOS_MemoryDevice

Types ››

Referenced by: TMiTeC_SMBIOS

TSMBIOS_MemoryDevice = record

TotalWidth,

DataWidth,

Size: Cardinal;

FormFactor: TSMBIOS_MemoryFormFactor ;

DeviceLocator,

BankLocator: string;

Device: TSMBIOS_MemoryDeviceType ;

TypeDetails: TSMBIOS_MemoryTypeDetails ;

Speed,

MaxSpeed: Word;

Manufacturer,

SerialNumber,

AssetTag,

PartNumber: string;

MinimumVoltage,

MaximumVoltage,

ConfiguredVoltage: word;

MemoryTechnology: TSMBIOS_MemoryTechnology ;

OperatingModeCapability: Word;

FirmwareVersion: Byte;

ModuleManufacturerID: Word;

ModuleProductID: word;

SubsystemControllerManufacturerID: Word;

SubsystemControllerProductID: word;

NonVolatileSize: int64;

VolatileSize: int64;

CacheSize: int64;

LogicalSize: int64;

ExtendedSpeed: Cardinal;

ExtendedConfiguredMemorySpeed: Cardinal;

end;


TSMBIOS_MemoryFormFactor

Types ›› TSMBIOS_MemoryDevice ››

Referenced by: TMiTeC_SMBIOS , TSMBIOS_MemoryDevice

TSMBIOS_MemoryFormFactor = (smffOther, smffUnknown, smffSIMM, smffSIP, smffChip, smffDIP, smffZIP, smffPropCard, smffDIMM, smffTSOP, smffRowChip, smffRIMM, smffSODIMM, smffSRIMM, smffFBDIMM, smffDie);


TSMBIOS_MemoryDeviceType

Types ›› TSMBIOS_MemoryDevice ››

Referenced by: TMiTeC_SMBIOS , TSMBIOS_MemoryDevice

TSMBIOS_MemoryDeviceType = (smmdOther, smmdUnknown, smmdDRAM, smmdEDRAM, smmdVRAM, smmdSRAM, smmdRAM,smmdROM, smmdFLASH, smmdEEPROM, smmdFEPROM, smmdEPROM, smmdCDRAM, smmd3DRAM, smmdSDRAM, smmdSGRAM, smmdRDRAM, smmdDDR, smmdDDR2, smmdDDR2FBDIMM, smmdReserved15h, smmdReserved16h, smmdReserved17h, smmdDDR3, smmdFBD2, smmdDDR4, smmdLPDDR, smmdLPDDR2, smmdLPDDR3, smmdLPDDR4, smmdLogicalNonVolatiledevice, smmdHBM, smmdHBM2);


TSMBIOS_MemoryTypeDetails

Types ›› TSMBIOS_MemoryDevice ››

Referenced by: TMiTeC_SMBIOS , TSMBIOS_MemoryDevice

TSMBIOS_MemoryTypeDetail = (mtdReserved, mtdOther, mtdUnknown, mtdFastPaged, mtdStaticColumn, mtdPseudoStatic, mtdRAMBUS, mtdSynchronous, mtdCMOS, mtdEDO, mtdWindowDRAM, mtdCacheDRAM, mtdNonVolatile, mtdRegistered, mtdUnbuffered, mtdLRDIMM);

TSMBIOS_MemoryTypeDetails = set of TSMBIOS_MemoryTypeDetail;


TSMBIOS_Port

Types ››

Referenced by: TMiTeC_SMBIOS

TSMBIOS_Port = record

InternalDesignator,

ExternalDesignator: string;

InternalConnector,

ExternalConnector: TSMBIOS_ConnectorType ;

Typ: TSMBIOS_PortType ;

end;


TSMBIOS_ConnectorType

Types ›› TSMBIOS_Port ››

Referenced by: TMiTeC_SMBIOS , TSMBIOS_Port

TSMBIOS_ConnectorType = (smctNone, smctCentronics, smctMiniCentronics, smctProprietary, smctDB25PinMale, smctDB25PinFemale, smctDB15PinMale, smctDB15PinFemale, smctDB9PinMale, smctDB9PinFemale, smctRJ11, smctRJ45, smct50PinMiniSCSI, smctMiniDIN, smctMicroDIN, smctPS2, smctInfrared, smctHPHIL, smctAccessBus, smctSSASCSI, smctCircularDIN8Male, smctCircularDIN8Female, smctOnBoardIDE, smctOnBoardFloppy, smct9PinDualInline, smct25PinDualInline, smct50PinDualInline, smct68PinDualInline, smctOnBoardSoundInputFromCDROM, smctMiniCentronicsType14, smctMiniCentronicsType26, smctMiniJack, smctBNC, smct1394, smctSASSATA, smcUSBTypeC, smctPC98, smctPC98Hireso, smctPCH98, smctPC98Note, smctPC98Full, smctOther);


TSMBIOS_PortType

Types ›› TSMBIOS_Port ››

Referenced by: TMiTeC_SMBIOS , TSMBIOS_Port

TSMBIOS_PortType = (smptNone, smptParallelXTAT, smptParallelPS2, smptParallelECP, smptParallelEPP, smptParallelECPEPP, smptSerialXTAT, smptSerial16450, smptSerial16550, smptSerial16550A, smptSCSI, smptMIDI, smptJoyStick, smptKeyboard, smptMouse, smptSSASCSI, smptUSB, smptFireWire, smptPCMCIA2, smptPCMCIA2A, smptPCMCIA3, smptCardbus, smptAccessBus, smptSCSI2, smptSCSIWide, smptPC98, smptPC98Hireso, smptPCH98, smptVideo, smptAudio, smptModem, tNetwork, smptSATA, smptSAS, smpt8251, smpt8251FIFO, smptOther);


TSMBIOS_Slot

Types ››

Referenced by: TMiTeC_SMBIOS

TSMBIOS_Slot = record

Designation: string;

Typ: TSMBIOS_SlotType ;

DataBus: TSMBIOS_DataBusType ;

ID: WORD;

Usage: TSMBIOS_SlotUsage ;

Length: TSMBIOS_SlotLength ;

SegmentGroup: Word;

BusNumber,

DevNumber,

FuncNumber: Byte;

DataBusWidth,

PeerGroupingCount: Byte;

PeerGroups: array of TPeerGroup ;

Info: byte;

PhysWidth: byte;

Pitch: word;

end;


TSMBIOS_SlotType

Types ›› TSMBIOS_Slot ››

Referenced by: TMiTeC_SMBIOS , TSMBIOS_Slot

TSMBIOS_SlotType = (smstOther, smstUnknown, smstISA, smstMCA, smstEISA, smstPCI, smstPCMCIA, smstVLVESA, smstProprietary, smstProcessorCard, smstProprietaryMemoryCard, smstIORiserCard, smstNuBus, smstPCI66MHz, smstAGP, smstAGP2X, smstAGP4X, smstPCIX, smstAGP8X, smstM2Socket1_DP, smstM2Socket1_SD, smstM2Socket2, smstM2Socket3, smstMXMTypeI, smstMXMTypeII, smstMXMTypeIII, smstMXMTypeIIIHE, smstMXMTypeIV, smstMXM30TypeA, smstMXM30TypeB, smstPCIEG2SFF_8639, smstPCIEG3SFF_8639, smstPCIEMini52pin1, smstPCIEMini52pin2, smstPCIEMini76pin, smstCXLFlexBus, smstPC98C20, smstPC98C24, smstPC98E, smstPC98LocalBus, smstPC98Card, smstPCIE, smstPCIEX1, smstPCIEX2, smstPCIEX4, smstPCIEX8, smstPCIEX16, smstPCIEG2, smstPCIEG2X1, smstPCIEG2X2, smstPCIEG2X4, smstPCIEG2X8, smstPCIEG2X16, smstPCIEG3, smstPCIEG3X1, smstPCIEG3X2, smstPCIEG3X4, smstPCIEG3X8, smstPCIEG3X16, smstPCIEG4, smstPCIEG4X1, smstPCIEG4X2, smstPCIEG4X4, smstPCIEG4X8, smstPCIEG4X16);


TSMBIOS_DataBusType

Types ›› TSMBIOS_Slot ››

Referenced by: TMiTeC_SMBIOS , TSMBIOS_Slot

TSMBIOS_DataBusType = (smdbOther, smdbUnknown, smdb8bit, smdb16bit, smdb32bit, smdb64bit, smdb128bit, smdbX1, smdbX2, smdbX4, smdbX8, smdbX12, smdbX16, smdbX32);


TSMBIOS_SlotUsage

Types ›› TSMBIOS_Slot ››

Referenced by: TMiTeC_SMBIOS , TSMBIOS_Slot

TSMBIOS_SlotUsage = (smsuOther, smsuUnknown, smsuAvailable, smsuInUse);


TSMBIOS_SlotLength

Types ›› TSMBIOS_Slot ››

Referenced by: TMiTeC_SMBIOS , TSMBIOS_Slot

TSMBIOS_SlotLength = (smslOther, smslUnknown, smslShort, smslLong);


TPeerGroup

Types ›› TSMBIOS_Slot ››

Referenced by: TMiTeC_SMBIOS , TSMBIOS_Slot

TPeerGroup = record

Segment: word;

Bus,

DevFun,

DataBusWidth: byte;

end;


TSMBIOS_Cache

Types ››

Referenced by: TMiTeC_SMBIOS

TSMBIOS_Cache = record

Designation: string;

MaxSize,

InstalledSize: Word;

SRAMType: TSMBIOS_SRAMType ;

Typ: TSMBIOS_CacheType ;

Associativity: TSMBIOS_CacheAssociativity ;

Speed: Word;

end;


TSMBIOS_SRAMType

Types ›› TSMBIOS_Cache ››

Referenced by: TMiTeC_SMBIOS , TSMBIOS_Cache

TSMBIOS_SRAMType = (sramOther, sramUnknown, sramNonBurst, sramBurst, sramPipelineBurst, sramSync, sramAsync);


TSMBIOS_CacheType

Types ›› TSMBIOS_Cache ››

Referenced by: TMiTeC_SMBIOS , TSMBIOS_Cache

TSMBIOS_CacheType = (ctOther, ctUnknown, ctInstruction, ctData, ctUnified);


TSMBIOS_CacheAssociativity

Types ›› TSMBIOS_Cache ››

Referenced by: TMiTeC_SMBIOS , TSMBIOS_Cache

TSMBIOS_CacheAssociativity = (caOther,caUnknown,caDirectMapped,ca2way,ca4way, caFull,ca8way,ca16way,ca12Way,ca24Way,ca32Way, ca48Way,ca64Way,ca20Way);


TSMBIOS_OnBoardDevice

Types ››

Referenced by: TMiTeC_SMBIOS

TSMBIOS_OnBoardDevice = record

DeviceName: string;

Typ: TSMBIOS_OnBoardDeviceType ;

Status: boolean;

end;


TSMBIOS_OnBoardDeviceType

Types ›› TSMBIOS_OnBoardDevice ››

Referenced by: TMiTeC_SMBIOS , TSMBIOS_OnBoardDevice

TSMBIOS_OnBoardDeviceType = (obdOther, obdUnknown, obdVideo, obdSCSICrl, obdEthernet, obdTokenRing, obdSound, obdPATA, obdSATA, obdSAS);


TSMBIOS_TemperatureProbe

Types ››

Referenced by: TMiTeC_SMBIOS

TSMBIOS_TemperatureProbe = record

Description: string;

Location: TSMBIOS_TempProbeLocationType ;

Status: TSMBIOS_StatusType ;

Min,

Max: Word;

Resolution,

Tolerance,

Accuracy: Word;

NominalValue: Word;

end;


TSMBIOS_TempProbeLocationType

Types ›› TSMBIOS_TemperatureProbe ››

Referenced by: TMiTeC_SMBIOS , TSMBIOS_TemperatureProbe

TSMBIOS_TempProbeLocationType = (tpOther, tpUnknown, tpProcessor, tpDisk, tpPeripheralBay, tpSMM, tpMB, tpProcessorModule, tpPowerUnit, tpAddInCard, tpFrontPanelBoard, tpBackPanelBoard, tpPowerSystemBoard, tpDriveBackPlane);


TSMBIOS_StatusType

Types ››

Referenced by: TMiTeC_SMBIOS , TSMBIOS_CoolingDevice , TSMBIOS_CurrentProbe , TSMBIOS_TemperatureProbe , TSMBIOS_VoltageProbe

TSMBIOS_StatusType = (stOther, stUnknown, stOK, stNonCritical, stCritical, stNonRecoverable);


TSMBIOS_CoolingDevice

Types ››

Referenced by: TMiTeC_SMBIOS

TSMBIOS_CoolingDevice = record

TemperatureProbeHandle: Word;

Description: string;

Status: TSMBIOS_StatusType ;

Typ: TSMBIOS_CoolingType ;

NominalSpeed: Cardinal;

GroupUnit: Byte;

end;


TSMBIOS_CoolingType

Types ›› TSMBIOS_CoolingDevice ››

Referenced by: TMiTeC_SMBIOS , TSMBIOS_CoolingDevice

TSMBIOS_CoolingType = (cdOther, cdUnknown, cdFan, cdCentrifugalBlower, cdChipFan, cdCabinetFan, cdPowerSupplyFan, cdHeatPipe, cdIntegratedRefrigeration, cdActiveCooling, cdPassiveCooling);


TSMBIOS_VoltageProbe

Types ››

Referenced by: TMiTeC_SMBIOS

TSMBIOS_VoltageProbe = record

Description: string;

Location: TSMBIOS_VoltProbeLocationType ;

Status: TSMBIOS_StatusType ;

Min,

Max: Word;

Resolution,

Tolerance,

Accuracy: Word;

NominalValue: Word;

end;


TSMBIOS_VoltProbeLocationType

Types ›› TSMBIOS_VoltageProbe ››

Referenced by: TMiTeC_SMBIOS , TSMBIOS_VoltageProbe

TSMBIOS_VoltProbeLocationType = (vpOther, vpUnknown, vpProcessor, vpDisk, vpPeripheralBay, vpSMM, vpMB, vpMemoryModule, vpProcessorModule, vpPowerUnit, vpAddInCard);


TSMBIOS_CurrentProbe

Types ››

TSMBIOS_CurrentProbe = record

Description: string;

Location: TSMBIOS_CurrProbeLocationType ;

Status: TSMBIOS_StatusType ;

Min,

Max: Word;

Resolution,

Tolerance,

Accuracy: Word;

NominalValue: Word;

end;


TSMBIOS_CurrProbeLocationType

Types ›› TSMBIOS_CurrentProbe ››

Referenced by: TMiTeC_SMBIOS , TSMBIOS_CurrentProbe

TSMBIOS_CurrProbeLocationType = (cpOther, cpUnknown, cpProcessor, cpDisk, cpPeripheralBay, cpSMM, cpMB, cpMemoryModule, cpProcessorModule, cpPowerUnit, cpAddInCard);


TSMBIOS_BIOSChars

Types ››

Referenced by: TMiTeC_SMBIOS

TSMBIOS_BIOSChar = (smbcISA,smbcMCA,smbcEISA,smbcPCI,smbcPCMCIA,smbcPNP,smbcAPM, smbcFlashBIOS,smbcBIOSShadow,smbcVLVESA,smbcESCD,smbcBootFromCD, smbcSelectableBoot,smbcBIOSROMSocketed,smbcBootFromPCCard, smbcEDD,smbcNECPC98,smbcACPI,smbcUSBLegacy,smbcAGP,smbcI2OBoot, smbcLS120Boot,smbcATAPIZIPDriveBoot,smbcIEE1394Boot, smbcSmartBattery,smbcBIOSBootSpec,smbcFKINSBoot,smbcTCD, smbcUEFISpec,smbcVM);

TSMBIOS_BIOSChars = set of TSMBIOS_BIOSChar;


TSMBIOS_Chassis

Types ››

Referenced by: TMiTeC_SMBIOS

TSMBIOS_Chassis = (smchOther, smchUnknown, smchDesktop, smchLowProfileDesktop, smchPizzaBox, smchMiniTower, smchTower, smchPortable, smchLapTop, smchNotebook, smchHandHeld, smchDockingStation, smchAllInOne, smchSubNotebook, smchSpaceSaving, smchLunchBox, smchMainServer, smchExpansion, smchSubChassis, smchBusExpansion, smchPeripheral, smchRAID, smchRackMount, smchSealedCasePC, smchMultiSystem, smchCompactPCI, smchAdvTCA, smchBlade, smchBladeEnc);


TSMBIOS_InterleaveSupport

Types ››

Referenced by: TMiTeC_SMBIOS

TSMBIOS_InterleaveSupport = (smisOther, smisUnknown, smisOnewWay, smisTwoWay, smisFourWay, smisEightWay, smisSixteenWay);


TSMBIOS_MemorySpeeds

Types ››

Referenced by: TMiTeC_SMBIOS

TSMBIOS_MemorySpeed = (smmsOther, smmsUnknown, smms70ns, smms60ns, smms50ns);

TSMBIOS_MemorySpeeds = set of TSMBIOS_MemorySpeed;


TSMBIOS_MemoryTypes

Types ››

Referenced by: TMiTeC_SMBIOS

TSMBIOS_MemoryType = (smmtOther, smmtUnknown, smmtStandard, smmtFastPageMode, smmtEDO, smmtParity, smmtECC, smmtSIMM, smmtDIMM, smmtBurstEDO, smmtSDRAM);

TSMBIOS_MemoryTypes = set of TSMBIOS_MemoryType;


TSMBIOS_Voltages

Types ››

Referenced by: TMiTeC_SMBIOS

TSMBIOS_Voltage = (smv5V, smv33V, smv29V);

TSMBIOS_Voltages = set of TSMBIOS_Voltage;


TInstallRecord

Types ››

Referenced by: TMiTeC_Software

TInstallRecord = record

Name,

Version,

Company,

Uninstall,

InstallSource: string;

InstallDate: TDateTime;

Legal: Boolean;

NoRemove: boolean;

NoRepair: boolean;

SecurityUpdate: boolean;

SystemComponent: boolean;

HelpLink,

AboutLink,

InfoLink,

UpdateLink: string;

end;


TAutorun

Types ››

Referenced by: TMiTeC_Startup

TAutorun = record

Location: TAutorunLocation ;

Path,

Name,

ImageName,

CmdLine,

Desc,

Company,

Version,

Copyright: string;

Size: int64;

end;


TAutorunLocation

Types ›› TAutorun ››

TAutorunLocation = (arlRegistry, arlFolder, arlBHO, arlFile);


TDeviceInfo

Types ››

Referenced by: TMiTeC_Storage

TDeviceInfo = record

Kind: TDeviceInfoKind ;

Device: Cardinal;

Number: Cardinal;

Instance: Cardinal;

Drive: Char;

PhysicalIndex: Integer;

LayoutIndex: Integer;

SerialNumber,

Model,

Revision,

WorldWideName,

VolumeLabel,

VolumeID,

LogicalSerial: string;

HaId,

Target,

Lun,

PathId: integer;

DeviceType,

MediaType,

BusType: Cardinal;

Removable,

RAM: Boolean;

Size: UInt64;

LogicalSize: UInt64;

SMARTSupport,

SMARTActive: Boolean;

CtlBufSize,

ECCCode: Cardinal;

Layout: TDiskLayout ;

Geometry: TDiskGeometry ;

LengthInBytes: Int64;

FileSystem: string;

ClusterSize: Cardinal;

SMART: TSmartData ;

SMARTThresholds: TSmartData ;

Temperature: Byte;

NominalMediaRotationRate: word;

PowerOnHours: Cardinal;

SSD,

Read_CDR,

Read_CDRW,

Write_CDR,

Write_CDRW,

Read_DVDROM,

Read_DVDR,

Read_DVDRAM,

Write_DVDR,

Write_DVDRAM: Boolean;

DiskExtents: TDiskExtents ;

HasNoSeekPenalty: Boolean;

IdentifyDeviceData: TIdentifyDeviceData ;

{$IFDEF DEBUG}

_RawData: TRawData ;

{$ENDIF}

end;


TDeviceInfoKind

Types ›› TDeviceInfo ››

Referenced by: TMiTeC_Storage , TDeviceInfo

TDeviceInfoKind = (dikUnknown, dikPhysicalDrive, dikLogicalDrive, dikCDROM, dikTape, dikSymbolicLink);


TDiskLayout

Types ›› TDeviceInfo ››

Referenced by: TMiTeC_Storage , TDeviceInfo

TPartitionInformation = record

StartingOffset: LARGE_INTEGER;

Length: LARGE_INTEGER;

HiddenSectors: Cardinal;

Number: Cardinal;

Typ: BYTE;

BootIndicator: ByteBool;

Recognized: ByteBool;

Rewrite: ByteBool;

end;

TDiskLayout = array of TPartitionInformation;


TDiskGeometry

Types ›› TDeviceInfo ››

Referenced by: TMiTeC_Storage , TDeviceInfo

TDiskGeometry = record

Cylinders: LARGE_INTEGER;

MediaType: Cardinal;

TracksPerCylinder: Cardinal;

SectorsPerTrack: Cardinal;

BytesPerSector: Cardinal;

end;


TSmartData

Types ›› TDeviceInfo ››

Referenced by: TMiTeC_Storage , TDeviceInfo

SMART_ATTRIBUTE = packed record

ID: Byte;

case byte of

0: (Flags: Word;

CurrValue: Byte;

WorstValue: Byte;

RawData: array [0..5] of Byte;

Reserved0: Byte;);

1: (Threshold: Byte;

Reserved1: array [0..9] of Byte;);

end;

TSMARTAttribute = SMART_ATTRIBUTE;

PSMARTAttribute = ^TSMARTAttribute;

SMART_DATA = packed record

Version: Word;

Attribute: array [0..29] of SMART_ATTRIBUTE;

end;

TSMARTData = SMART_DATA;

PSMARTData = ^TSMARTData;


TDiskExtents

Types ›› TDeviceInfo ››

Referenced by: TMiTeC_Storage , TDeviceInfo

TDiskExtent = record

DiskNumber: Cardinal;

StartingOffset: LARGE_INTEGER;

ExtentLength: LARGE_INTEGER;

end;

TDiskExtents = array of TDiskExtent;


TIdentifyDeviceData

Types ›› TDeviceInfo ››

Referenced by: TMiTeC_Storage , TDeviceInfo

TIdentifyDeviceData = packed record

GeneralConfiguration: Word;

{ =

USHORT Reserved1 :1;

USHORT Retired3 :1;

USHORT ResponseIncomplete :1;

USHORT Retired2 :3;

USHORT FixedDevice :1;

USHORT RemovableMedia :1;

USHORT Retired1 :7;

USHORT DeviceType :1;}

NumCylinders: Word;

ReservedWord2: Word;

NumHeads: Word;

Retired1: array[0..1] of Word;

NumSectorsPerTrack: Word;

VendorUnique1: array[0..2] of Word;

SerialNumber: array[0..19] of AnsiChar;

Retired2: array[0..1] of Word;

Obsolete1: Word;

FirmwareRevision: array[0..7] of AnsiChar;

ModelNumber: array[0..39] of AnsiChar;

MaximumBlockTransfer: Byte;

VendorUnique2: Byte;

ReservedWord48: Word;

ReservedByte49: Byte;

Capabilities: Byte;

{ =

UCHAR DmaSupported :1;

UCHAR LbaSupported :1;

UCHAR IordyDisable :1;

UCHAR IordySupported :1;

UCHAR Reserved1 :1;

UCHAR StandybyTimerSupport :1;

UCHAR Reserved2 :2;}

ReservedWord50: Word;

ObsoleteWords51: array[0..1] of Word;

TranslationFieldsValid: Word;

{ =

USHORT TranslationFieldsValid :3;

USHORT Reserved3 :13;}

NumberOfCurrentCylinders: Word;

NumberOfCurrentHeads: Word;

CurrentSectorsPerTrack: Word;

CurrentSectorCapacity: Cardinal;

CurrentMultiSectorSetting: Byte;

MultiSectorSettingValid: Byte;

{ =

UCHAR MultiSectorSettingValid :1;

UCHAR ReservedByte59 :7;}

UserAddressableSectors: Cardinal;

ObsoleteWord62: Word;

MultiWordDMAActive: Byte;

MultiWordDMASupport: Byte;

ReservedByte64: Byte;

AdvancedPIOModes: Byte;

MinimumMWXferCycleTime: Word;

RecommendedMWXferCycleTime: Word;

MinimumPIOCycleTime: Word;

MinimumPIOCycleTimeIORDY: Word;

ReservedWords69: array[0..5] of Word;

QueueDepth: Word;

{ =

USHORT QueueDepth :5;

USHORT ReservedWord75 :11;}

ReservedWords76: array[0..3] of Word;

MajorRevision: Word;

MinorRevision: Word;

CommandSetSupport: array[0..5] of byte;

{ =

USHORT SmartCommands :1;

USHORT SecurityMode :1;

USHORT RemovableMediaFeature :1;

USHORT PowerManagement :1;

USHORT Reserved1 :1;

USHORT WriteCache :1;

USHORT LookAhead :1;

USHORT ReleaseInterrupt :1;

USHORT ServiceInterrupt :1;

USHORT DeviceReset :1;

USHORT HostProtectedArea :1;

USHORT Obsolete1 :1;

USHORT WriteBuffer :1;

USHORT ReadBuffer :1;

USHORT Nop :1;

USHORT Obsolete2 :1;

USHORT DownloadMicrocode :1;

USHORT DmaQueued :1;

USHORT Cfa :1;

USHORT AdvancedPm :1;

USHORT Msn :1;

USHORT PowerUpInStandby :1;

USHORT ManualPowerUp :1;

USHORT Reserved2 :1;

USHORT SetMax :1;

USHORT Acoustics :1;

USHORT BigLba :1;

USHORT DeviceConfigOverlay :1;

USHORT FlushCache :1;

USHORT FlushCacheExt :1;

USHORT Resrved3 :2;

USHORT SmartErrorLog :1;

USHORT SmartSelfTest :1;

USHORT MediaSerialNumber :1;

USHORT MediaCardPassThrough :1;

USHORT StreamingFeature :1;

USHORT GpLogging :1;

USHORT WriteFua :1;

USHORT WriteQueuedFua :1;

USHORT WWN64Bit :1;

USHORT URGReadStream :1;

USHORT URGWriteStream :1;

USHORT ReservedForTechReport :2;

USHORT IdleWithUnloadFeature :1;

USHORT Reserved4 :2;}

CommandSetActive: array[0..5] of byte;

{ = same as CommandSetSupport}

UltraDMAActive: Byte;

UltraDMASupport: Byte;

ReservedWord89: array[0..3] of Word;

HardwareResetResult: Word;

RecommendedAcousticValue: Byte;

CurrentAcousticValue: Byte;

ReservedWord95: array[0..4] of Word;

Max48BitLBA: array[0..1] of Cardinal;

StreamingTransferTime: Word;

ReservedWord105: Word;

PhysicalLogicalSectorSize: Word;

{ =

USHORT LogicalSectorsPerPhysicalSector :4;

USHORT Reserved0 :8;

USHORT LogicalSectorLongerThan256Words :1;

USHORT MultipleLogicalSectorsPerPhysicalSector :1;

USHORT Reserved1 :2;}

InterSeekDelay: Word;

WorldWideName: array[0..7] of Byte;

ReservedForWorldWideName128: array[0..7] of Byte;

ReservedForTlcTechnicalReport: Word;

WordsPerLogicalSector: array[0..1] of Word;

CommandSetSupportExt: Word;

{ =

USHORT ReservedForDrqTechnicalReport :1;

USHORT WriteReadVerifySupported :1;

USHORT Reserved01 :11;

USHORT Reserved1 :2;}

CommandSetActiveExt: Word;

{ = same as CommandSetSupportExt}

ReservedForExpandedSupportandActive: array[0..5] of Word;

MsnSupport: Word;

{ =

USHORT MsnSupport :2;

USHORT ReservedWord1274 :14;}

SecurityStatus: Word;

{ =

USHORT SecuritySupported :1;

USHORT SecurityEnabled :1;

USHORT SecurityLocked :1;

USHORT SecurityFrozen :1;

USHORT SecurityCountExpired :1;

USHORT EnhancedSecurityEraseSupported :1;

USHORT Reserved0 :2;

USHORT SecurityLevel :1;

USHORT Reserved1 :7;}

ReservedWord129: array[0..30] of Word;

CfaPowerModel: Word;

{ =

USHORT MaximumCurrentInMA2 :12;

USHORT CfaPowerMode1Disabled :1;

USHORT CfaPowerMode1Required :1;

USHORT Reserved0 :1;

USHORT Word160Supported :1;}

ReservedForCfaWord161: array[0..7] of Word;

DataSetManagementFeature: Word;

{ =

USHORT SupportsTrim :1;

USHORT Reserved0 :15;}

ReservedForCfaWord170: array[0..5] of Word;

CurrentMediaSerialNumber: array[0..29] of Word;

ReservedWord206: Word;

ReservedWord207: array[0..1] of Word;

BlockAlignment: Word;

{ =

USHORT AlignmentOfLogicalWithinPhysical :14;

USHORT Word209Supported :1;

USHORT Reserved0 :1;}

WriteReadVerifySectorCountMode3Only: array[0..1] of Word;

WriteReadVerifySectorCountMode2Only: array[0..1] of Word;

NVCacheCapabilities: Word;

{ =

USHORT NVCachePowerModeEnabled :1;

USHORT Reserved0 :3;

USHORT NVCacheFeatureSetEnabled :1;

USHORT Reserved1 :3;

USHORT NVCachePowerModeVersion :4;

USHORT NVCacheFeatureSetVersion :4;}

NVCacheSizeLSW: Word;

NVCacheSizeMSW: Word;

NominalMediaRotationRate: Word;

ReservedWord218: Word;

NVCacheEstimatedTimeToSpinUpInSeconds: Byte;

Reserved: Byte;

ReservedWord220: array[0..34] of Word;

CheckSum: Byte;

Signature: Byte;

end;


TRawData

Types ›› TDeviceInfo ››

Referenced by: TMiTeC_Storage , TDeviceInfo

TRawData = array[0..sizeof( TIdentifyDeviceData )-1] of byte;


TUSBNode

Types ››

Referenced by: TMiTeC_USB

TUSBNode = record

ConnectionName: string;

DeviceInstanceId: string;

Keyname: string;

USBClass: TUSBClass ;

ClassGUID: TGUID;

ParentIndex: Integer;

Level: Integer;

TimeStamp: TDateTime;

USBDevice: TUSBDevice ;

end;


TUSBClass

Types ››

Referenced by: TMiTeC_USB , TUSBNode

TUSBClass = (usbReserved, usbAudio, usbCommunications, usbHID, usbMonitor, usbPhysicalIntf, usbPower, usbPrinter, usbStorage, usbHub, usbVendorSpec, usbExternalHub, usbHostController, usbUnknown, usbError);


TUSBDevice

Types ››

Referenced by: TMiTeC_USB , TUSBNode

TUSBDevice = record

Port: Cardinal;

DeviceAddress: Cardinal;

Manufacturer,

Product,

Serial: string;

ConnectionStatus: Byte;

MaxPower: WORD;

MajorVersion,

MinorVersion: Byte;

ProductID,

VendorID: Word;

USBClassname: string;

Registry: TRegistrySet ;

end;


TRegistrySet

Types ›› TUSBDevice ››

Referenced by: TMiTeC_USB , TUSBDevice

TRegistryRecord = record

Name,

USBClass,

DeviceClass: string;

DeviceClassGUID: TGUID;

IntfGUID: string;

Drive: string;

DriveConnected: boolean;

Timestamp: TDateTime;

_PIP: string;

_Key: string;

end;

TRegistrySet = array of TRegistryRecord;


TWifiNetwork

Types ››

Referenced by: TMiTeC_WiFi

TWiFiNetwork = record

ID: Int64;

Intf: TWiFiInterface ;

Profile,

SSID: string;

SignalQuality: Cardinal;

AuthAlgorithm: TDOT11_AUTH_ALGORITHM ;

CipherAlgorithm: TDOT11_CIPHER_ALGORITHM ;

PHYType: TDOT11_PHY_TYPE ;

BSSType: TDOT11_BSS_TYPE ;

SecurityEnabled,

Connectable,

Connected: Boolean;

MACAddress: string;

MaxSpeed,

ChannelFreq: Cardinal;

RSSI: Integer;

PhyID: cardinal;

end;


TWiFiInterface

Types ›› TWifiNetwork ››

Referenced by: TMiTeC_WiFi , TWifiNetwork

TWiFiInterface = record

Name: string;

GUID: string;

end;


TDOT11_BSS_TYPE

Types ›› TWifiNetwork ››

Referenced by: TMiTeC_WiFi , TWifiNetwork

TDOT11_BSS_TYPE = (

dot11_BSS_type_infrastructure = 1,

dot11_BSS_type_independent = 2,

dot11_BSS_type_any = 3);


TDOT11_AUTH_ALGORITHM

Types ›› TWifiNetwork ››

Referenced by: TMiTeC_WiFi , TWifiNetwork

TDOT11_AUTH_ALGORITHM = Cardinal;

const

DOT11_AUTH_ALGO_80211_OPEN = 1;

DOT11_AUTH_ALGO_80211_SHARED_KEY = 2;

DOT11_AUTH_ALGO_WPA = 3;

DOT11_AUTH_ALGO_WPA_PSK = 4;

DOT11_AUTH_ALGO_WPA_NONE = 5;

DOT11_AUTH_ALGO_RSNA = 6;

DOT11_AUTH_ALGO_RSNA_PSK = 7;

DOT11_AUTH_ALGO_IHV_START = $80000000;

DOT11_AUTH_ALGO_IHV_END = $ffffffff;


TDOT11_CIPHER_ALGORITHM

Types ›› TWifiNetwork ››

Referenced by: TMiTeC_WiFi , TWifiNetwork

TDOT11_CIPHER_ALGORITHM = Cardinal;

const

DOT11_CIPHER_ALGO_NONE = $00;

DOT11_CIPHER_ALGO_WEP40 = $01;

DOT11_CIPHER_ALGO_TKIP = $02;

DOT11_CIPHER_ALGO_CCMP = $04;

DOT11_CIPHER_ALGO_WEP104 = $05;

DOT11_CIPHER_ALGO_WPA_USE_GROUP = $100;

DOT11_CIPHER_ALGO_RSN_USE_GROUP = $100;

DOT11_CIPHER_ALGO_WEP = $101;

DOT11_CIPHER_ALGO_IHV_START = $80000000;

DOT11_CIPHER_ALGO_IHV_END = $ffffffff;


TDOT11_PHY_TYPE

Types ›› TWifiNetwork ››

Referenced by: TMiTeC_WiFi , TWifiNetwork

TDOT11_PHY_TYPE = Cardinal;

const

DOT11_PHY_TYPE_UNKNOWN = 0;

DOT11_PHY_TYPE_ANY = DOT11_PHY_TYPE_UNKNOWN;

DOT11_PHY_TYPE_FHSS = 1;

DOT11_PHY_TYPE_DSSS = 2;

DOT11_PHY_TYPE_IRBASEBAND = 3;

DOT11_PHY_TYPE_OFDM = 4;

DOT11_PHY_TYPE_HRDSSS = 5;

DOT11_PHY_TYPE_ERP = 6;

DOT11_PHY_TYPE_HT = 7;

DOT11_PHY_TYPE_VHT = 8;

DOT11_PHY_TYPE_DMG = 9;

DOT11_PHY_TYPE_HE = 10;

DOT11_PHY_TYPE_IHV_START = $80000000;

DOT11_PHY_TYPE_IHV_END = $FFFFFFFF;


TThreadRecord

Types ››

Referenced by: TSysProcMonThread

TThreadRecord = record

ID: Cardinal;

Handle: THandle;

StartAddress: NativeUInt;

ContextSwitchCount: Cardinal;

State: Cardinal;

WaitReason: Cardinal;

Priority: KPRIORITY;

BasePriority: integer;

CPUUsage,

MaxCPUUsage: Double;

AvgCPUUsage: Double;

KernelTime,

UserTime: Int64;

WaitTime: Cardinal;

CreateTime: TDateTime;

CPUTime,

Cycles: TSample;

Text: string;

StartAddressString: string;

Description: string;

_Exists: Boolean;

end;

PThreadRecord = ^TThreadRecord;


TSysProcMonNotifyEvent

Types ››

Referenced by: TSysProcMonThread

TSysMonNotifyEvent = procedure(Sender: TSysProcMonThread ) of object;


TSysProcMonSampleEvent

Types ››

Referenced by: TSysProcMonThread

TSysProcMonSampleEvent = procedure(Sender: TSysProcMonThread ; var ASampleData: TSampleData ) of object;


ProcessorArchitecture

Types ››

Referenced by: TMiTeC_CPU

PROCESSOR_ARCHITECTURE_INTEL = 0;

PROCESSOR_ARCHITECTURE_IA64 = 6;

PROCESSOR_ARCHITECTURE_AMD64 = 9;

PROCESSOR_ARCHITECTURE_IA32_ON_WIN64 = 10;

PROCESSOR_ARCHITECTURE_UNKNOWN = $FFFF;


SoftwareTypes

Types ››

Referenced by: TMiTeC_OperatingSystem

SV_TYPE_WORKSTATION | 0x00000001 | A workstation
SV_TYPE_SERVER | 0x00000002 | A server
SV_TYPE_SQLSERVER | 0x00000004 | A server running with Microsoft SQL Server
SV_TYPE_DOMAIN_CTRL | 0x00000008 | A primary domain controller
SV_TYPE_DOMAIN_BAKCTRL | 0x00000010 | A backup domain controller
SV_TYPE_TIME_SOURCE | 0x00000020 | A server running the Timesource service
SV_TYPE_AFP | 0x00000040 | A server running the Apple Filing Protocol (AFP) file service
SV_TYPE_NOVELL | 0x00000080 | A Novell server
SV_TYPE_DOMAIN_MEMBER | 0x00000100 | A LAN Manager 2.x domain member
SV_TYPE_PRINTQ_SERVER | 0x00000200 | A server that shares a print queue
SV_TYPE_DIALIN_SERVER | 0x00000400 | A server that runs a dial-in service
SV_TYPE_XENIX_SERVER | 0x00000800 | A Xenix or Unix server
SV_TYPE_NT | 0x00001000 | A workstation or server
SV_TYPE_WFW | 0x00002000 | A computer that runs Windows for Workgroups
SV_TYPE_SERVER_MFPN | 0x00004000 | A server that runs the Microsoft File and Print for NetWare service
SV_TYPE_SERVER_NT | 0x0000800 | Any server that is not a domain controller
SV_TYPE_POTENTIAL_BROWSER | 0x00010000 | A computer that can run the browser service
SV_TYPE_BACKUP_BROWSER | 0x00020000 | A server running a browser service as backup
SV_TYPE_MASTER_BROWSER | 0x00040000 | A server running the master browser service
SV_TYPE_DOMAIN_MASTER | 0x00080000 | A server running the domain master browser
SV_TYPE_SERVER_OSF | 0x00100000 | A computer that runs OSF
SV_TYPE_SERVER_VMS | 0x00200000 | A computer that runs VMS
SV_TYPE_WINDOWS | 0x00400000 | A computer that runs Windows
SV_TYPE_DFS | 0x00800000 | A server that is the root of a DFS tree
SV_TYPE_CLUSTER_NT | 0x01000000 | A server cluster available in the domain
SV_TYPE_TERMINALSERVER | 0x02000000 | A server that runs the Terminal Server service
SV_TYPE_CLUSTER_VS_NT | 0x04000000 | Cluster virtual servers available in the domain
SV_TYPE_DCE | 0x10000000 | A server that runs the DCE Directory and Security Services or equivalent
SV_TYPE_ALTERNATE_XPORT | 0x20000000 | A server that is returned by an alternate transport
SV_TYPE_LOCAL_LIST_ONLY | 0x40000000 | A server that is maintained by the browser
SV_TYPE_DOMAIN_ENUM | 0x80000000 | A primary domain


THandleRecord

Types ››

Referenced by: TSysProcMonThread , GetProcessHandles , GetProcessHandlesEx , GetProcessHandlesEx2 , THndListMonThread , TMiTeC_ProcessList

THandleRecord = record

PID: Cardinal;

Handle: WORD;

Typ: Byte;

Access: Cardinal;

Address: Cardinal;

Attributes: Cardinal;

Name,

TypeName: String;

FilePos: Int64;

_Exists: boolean;

_ProcessName: string;

end;

PHandleRecord = ^THandleRecord;


TModuleRecord

Types ››

Referenced by: TSysProcMonThread , GetProcessModules

TModuleRecord = record

Name,

ImageName: String;

ImageSize: Cardinal;

EntryPoint: Cardinal;

BaseAddress: NativeUInt;

VersionInfo: TVersionInfo ;

Size: Int64;

_Exists: Boolean;

end;

PModuleRecord = ^TModuleRecord;


TWindowRecord

Types ››

Referenced by: TSysProcMonThread , GetProcessWindows

TWindowRecord = record

ClassName,

Text :String;

Handle: THandle;

Process,

Thread :Cardinal;

ParentWin,

WndProc,

Instance,

ID,

UserData,

Style,

ExStyle :integer;

Rect,

ClientRect :TRect;

Atom,

ClassBytes,

WinBytes,

ClassWndProc,

ClassInstance,

Background,

Cursor,

Icon,

ClassStyle :integer;

Styles,

ExStyles,

ClassStyles :TStringList;

Visible,

Enabled :boolean;

WindowAffinity: Cardinal;

DPIAwareness: TDpiAwareness ;

_Flag: Boolean;

end;

PWindowRecord = ^TWindowRecord;


TSvcListMonNotifyEvent

Types ››

Referenced by: TSvcListMonThread

TSvcListMonNotifyEvent = procedure(Sender: TSvcListMonThread ) of object;


TProcessRecord

Types ››

Referenced by: TSysProcMonThread , GetRecord , GetRecordByPID , GetProcessList

TProcessRecord = record

PID,

SessionID :Cardinal;

Handle: THandle;

Name,

ImageName,

DomainName,

UserName,

CommandLine,

Environment,

ParentImage,

ParentCmd: string;

Priority,

BasePriority,

ParentPID,

HandleCount,

GDIHandleCount,

USERHandleCount,

ThreadCount: Cardinal;

Affinity: NativeUInt;

VMCounters: TVMCounters ;

IOCounters: TIOCounters ;

KernelTime: UInt64;

UserTime: UInt64;

Privileges: TPrivilegeList ;

Groups: TTokenGroupList ;

&Platform: Cardinal;

CreationTime: TDateTime;

VersionInfo: TVersionInfo ;

Performance: TProcessPerformanceRecord ;

IsSuspended: Boolean;

System: Boolean;

Elevation: Cardinal;

DpiAwareness: TDpiAwareness ;

ProtectedType: TPsProtectedType;

ProtectedSigner: TPsProtectedSigner;

DEP: TProcessMitigationDEPPolicy;

ASLR: TProcessMitigationASLRPolicy;

CFGuard: TProcessMitigationControlFlowGuardPolicy;

StackProtection: TProcessMitigationUserShadowStackPolicy;

Cycles: UInt64;

ChildCount: integer;

ChildInstancesPrivateBytes: UInt64;

WindowCount: integer;

ThreadList: TList;

ModuleList: TList;

HandleList: TList;

IsNew: Boolean;

SHA1: string;

_Exists: Boolean;

_ImageIndex: integer;

procedure Initialize;

procedure Finalize;

function IndexOfThread(ATID: Cardinal): integer;

end;

PProcessRecord = ^TProcessRecord;


TSampleRecord

Types ››

Referenced by: TSysProcMonThread

TSampleRecord = record

ID: Cardinal;

SessionID: Cardinal;

Name: string;

CPUUsage: double;

CPUSpeed: cardinal;

CPUTemp: double;

MemUsage: int64;

CreateTime: TDatetime;

CommandLine: string;

Username: string;

end;

TSampleData = array of TSampleRecord;


TSample

Types ››

Referenced by: TSysProcMonThread , TProcessRecord , TProcessPerformanceRecord , TSamples

TSample = record

Value: double;

Delta: double;

Max: double;

Min: double;

MaxDelta: double;

MinDelta: double;

AccumulatedValue: double;

AccumulatedDelta: double;

AccumulatedCount: Cardinal;

procedure Clear(AOnlyAccumulated: boolean = False);

procedure Update(ANewValue: double);

function AverageValue: double;

function AverageDelta: double;

function RoundDelta: Int64;

function RoundValue: Int64;

function RoundAccumulatedValue: Int64;

function RoundAccumulatedDelta: Int64;

function RoundMax: Int64;

function RoundMin: Int64;

function RoundMaxDelta: Int64;

function RoundMinDelta: Int64;

end;


TSamples

Types ››

Referenced by: TSysProcMonThread , TProcessRecord , TProcessPerformanceRecord

TSamples = record

Items: array of TSample ;

procedure Clear;

procedure ClearValues(AOnlyAccumulated: boolean = False);

procedure Update(AIndex: integer; ANewValue: double);

function Count: integer;

function Sum: double;

function SumDelta: double;

function SumAccumulatedValue: double;

function SumAccumulatedDelta: double;

function AverageValue: double;

function AverageDelta: double;

end;


TProcessPerformanceRecord

Types ››

Referenced by: TSysProcMonThread , TProcessRecord

TProcessPerformanceRecord = record

CPUUsage,

PrivateBytes,

IOReadUsage,

IOWriteUsage,

IOOtherUsage,

CPUTime,

CycleTime: TSample ;

end;


TServiceRecord

Types ››

Referenced by: TSvcListMonThread , GetRecord , GetRecordByName , GetRecordByDisplayName , GetList

TServiceRecord = record

DependOnService,

DisplayName,

Name,

CmdLine,

ImageName,

ObjectName,

Group,

Description: String;

StartUp: integer;

Delayed,

TriggerStart: Boolean;

Status: Cardinal;

Tag,

ErrCtrl: Integer;

PID :Cardinal;

ControlsAccepted: Cardinal;

Size: Int64;

_Typ: Cardinal;

Typ: TServiceType;

VersionInfo: TVersionInfo ;

_Exists: Boolean;

_ImageIndex: integer;

end;

PServiceRecord = ^TServiceRecord;


TVersionInfo

Types ››

Referenced by: TModuleRecord , TProcessRecord , TServiceRecord

TVersionInfo = record

FileName,

FileVersion,

Version,

ProductName,

CompanyName,

Description,

Comments,

Copyright,

Trademarks,

InternalName,

OriginalFilename,

ProductVersion: string;

Major,

Minor,

Release,

Build: Cardinal;

ProductMajor,

ProductMinor,

ProductRelease,

ProductBuild: Cardinal;

SpecialBuild: string;

PreRelease: Boolean;

end;


TServiceTypes

Types ››

Referenced by: TSvcListMonThread

TServiceType = (svcUnknown, svcKernelDriver, svcFileSystemDriver, svcAdapter, svcRecognizerDriver, svcOwnProcess, svcSharedProcess, svcDesktopInteractiveProcess, svcOwnInteractiveProcess, svcShareInteractiveProcess);

TServiceTypes = set of TServiceType;


TVMCounters

Types ››

Referenced by: TMiTeC_ProcessList , TSysProcMonThread , TProcessRecord

TVMCounters = record

PeakVirtualSize,

VirtualSize,

PageFaultCount,

PeakWorkingSetSize,

WorkingSetSize,

QuotaPeakPagedPoolUsage,

QuotaPagedPoolUsage,

QuotaPeakNonPagedPoolUsage,

QuotaNonPagedPoolUsage,

PagefileUsage,

PeakPagefileUsage: NativeUInt;

end;


TIOCounters

Types ››

Referenced by: TMiTeC_ProcessList , TSysProcMonThread , TProcessRecord

TIOCounters = record

ReadOperationCount: LARGE_INTEGER;

WriteOperationCount: LARGE_INTEGER;

OtherOperationCount: LARGE_INTEGER;

ReadTransferCount: LARGE_INTEGER;

WriteTransferCount: LARGE_INTEGER;

OtherTransferCount: LARGE_INTEGER;

end;


TPrivilegeInfo

Types ››

Referenced by: TMiTeC_ProcessList , TSysProcMonThread , TProcessRecord

TPrivilegeInfo = record

Name,

DisplayName: String;

Flags: Cardinal;

end;

TPrivilegeList = array of TPrivilegeInfo;


TTokenGroupInfo

Types ››

Referenced by: TMiTeC_ProcessList , TSysProcMonThread , TProcessRecord

TTokenGroupInfo = record

SID,

Domain,

Name: String;

Flags: Cardinal;

end;

TTokenGroupList = array of TTokenGroupInfo;


TSampleMethod

Types ››

Referenced by: TSysProcMonThread

TSampleMethod = (smCurrent, smAverage);


TCPURecord

Types ››

Referenced by: TSysProcMonThread

TCPURecord = record

Number: Cardinal;

Usage: double;

CurrentClock: Cardinal;

MaxClock: Cardinal;

_Fraction: double;

end;

TCPUData = record

Items: array of TCPURecord;

function GetNumberIndex(ANumber: byte): integer;

end;


TNetConRecord

Types ››

Referenced by: TNetConMonThread , GetRecord , GetList

TIPv6 = array [0..15] of byte;

TNetworkAddress = record

IPv4: Cardinal;

IPv6: TIPv6;

end;

TNetConRecord = record

PID: Cardinal;

ProcessName,

LocalAddressString,

RemoteAddressString,

LocalHostname,

RemoteHostname: string;

LocalAddress,

RemoteAddress: TNetworkAddress;

LocalPort,

RemotePort: Cardinal;

Protocol: string;

Typ: integer;

State: Cardinal;

_ImageIndex: integer;

end;

PNetConRecord = ^TNetConRecord;


TAutorunLocation

Types ››

Referenced by: TMiTeC_Startup

TAutorunLocation = (arlRegistry, arlFolder, arlBHO, arlFile, arlTaskScheduler);


TNetConMonNotifyEvent

Types ››

Referenced by: TNetConMonThread

TNetConMonNotifyEvent = procedure(Sender: TNetConMonThread ) of object;


TPerfMonNotifyEvent

Types ››

Referenced by: TPerfMonThread

TPerfMonNotifyEvent = procedure(Sender: TPerfMonThread ) of object;


TPerformanceCounter

Types ››

Referenced by: TPerfMonThread , GetCounter

TPerformanceCounter = record

Path: string;

Handle: PDH_HCOUNTER;

Value: Double;

end;

PPerformanceCounter = ^TPerformanceCounter;


TOnReadEventLog

Types ››

Referenced by: TMiTeC_EventLog

TOnReadEventLog = procedure(Sender: TObject; ARecord: TLogRecord ; var Cancel: Boolean) of object;


TOnExpandMessage

Types ››

Referenced by: TMiTeC_EventLog

TOnExpandLogMessage = procedure(Sender: TObject; const Source: string; EventID: cardinal; var ExpandMessage: boolean) of object;


TSystemHandleTypes

Types ››

Referenced by: THndListMonThread , TMiTeC_ProcessList

SYSTEM_HANDLE_TYPE = (

OB_TYPE_UNKNOWN,

OB_TYPE_TYPE,

OB_TYPE_DIRECTORY,

OB_TYPE_SYMBOLIC_LINK,

OB_TYPE_TOKEN,

OB_TYPE_PROCESS,

OB_TYPE_THREAD,

OB_TYPE_JOB,

OB_TYPE_DEBUG_OBJECT,

OB_TYPE_EVENT,

OB_TYPE_EVENT_PAIR,

OB_TYPE_MUTANT,

OB_TYPE_CALLBACK,

OB_TYPE_SEMAPHORE,

OB_TYPE_TIMER,

OB_TYPE_PROFILE,

OB_TYPE_KEYED_EVENT,

OB_TYPE_WINDOWS_STATION,

OB_TYPE_DESKTOP,

OB_TYPE_SECTION,

OB_TYPE_KEY,

OB_TYPE_PORT,

OB_TYPE_WAITABLE_PORT,

OB_TYPE_ADAPTER,

OB_TYPE_CONTROLLER,

OB_TYPE_DEVICE,

OB_TYPE_DRIVER,

OB_TYPE_IOCOMPLETION,

OB_TYPE_FILE,

OB_TYPE_WMIGUID

);

TSystemHandleType = SYSTEM_HANDLE_TYPE;

TSystemHandleTypes = set of TSystemHandleType;


THndListMonNotifyEvent

Types ››

Referenced by: THndListMonThread

THndListMonNotifyEvent = procedure(Sender: THndListMonThread ) of object;


TCredRecord

Types ››

Referenced by: TMiTeC_NetCreds

TCredRecord = record

Typ: Cardinal;

Timestamp: TDateTime;

Target,

UserName,

Password: string;

end;


TUSBRecord

Types ››

Referenced by: TMiTeC_USBHistory

TUSBRecord = record

Name: string;

SerialNumber,

DeviceClass: string;

Timestamp: TDateTime;

_PIP,

_SN,

_SRV,

_HID: string;

end;


TWLANCRecord

Types ››

Referenced by: TMiTeC_WLANC

TWLANCRecord = record

SSID,

Key,

Authentication,

Encryption,

Connection,

AdapterName,

GUID,

IPAddress: string;

Timestamp: TDateTime;

_keyMaterial: string;

end;

TWLANC = array of TWLANCRecord;


TRule

Types ››

Referenced by: TMiTeC_Firewall

NET_FW_PROFILE2_DOMAIN = 1;

NET_FW_PROFILE2_PRIVATE = 2;

NET_FW_PROFILE2_PUBLIC = 4;

NET_FW_IP_PROTOCOL_TCP = 6;

NET_FW_IP_PROTOCOL_UDP = 17;

NET_FW_IP_PROTOCOL_ICMPv4 = 1;

NET_FW_IP_PROTOCOL_ICMPv6 = 58;

NET_FW_RULE_DIR_IN = 1;

NET_FW_RULE_DIR_OUT = 2;

NET_FW_ACTION_BLOCK = 0;

NET_FW_ACTION_ALLOW = 1;

TRule = record

Name: string;

Description: string;

AppName: string;

ServiceName: string;

Protocol: Cardinal;

LocalPorts: string;

RemotePorts: string;

LocalAddresses: string;

RemoteAddresses: string;

ICMP: string;

Direction: Cardinal;

Enabled: boolean;

Edge: boolean;

Action: Cardinal;

Grouping: string;

IntfTypes: string;

end;

TRules = array of TRule;


TEventRecord

Types ››

Referenced by: TMachineJournal

TEventRecord = record

ID: Cardinal;

Kind: TEventKind ;

Timestamp: TDateTime;

Source,

Description,

Details: string;

end;


TEventKind

Types ›› TEventRecord ››

Referenced by: TMachineJournal , TEventRecord

TEventKind = (ekNone, ekStartup, ekShutdown, ekSleep, ekWakeup, ekLogin, ekLogoff, ekLoginFail, ekCrash, ekUpdate);


TAdapter

Types ››

Referenced by: TNetworkConfiguration

TAdapter = record

Description,

Name,

Alias,

MACAddress: string;

MaxSpeed: UInt64;

MTU: Cardinal;

Typ: TAdapterType ;

AdminStatus: TAdapterAdminStatus ;

OperStatus: TAdapterOperationalStatus ;

DHCPEnabled,

DNSEnabled,

HaveWINS,

NETBIOSEnabled,

IPv4Enabled,

IPv6Enabled: boolean;

IPv4Address,

IPv6Address,

Gateways_v4,

Gateways_v6,

DHCPServers_v4,

DHCPServers_v6,

PrimaryWINS_v4,

PrimaryWINS_v6,

SecondaryWINS,

DNSServers_v4,

DNSServers_v6: TStringList;

DNSSuffix: string;

IntfIdx: Cardinal;

_Typ,

_Status: Cardinal;

_ImageIndex: Integer;

_Mark: Boolean;

end;


TAdapterType

Types ›› TAdapter ››

Referenced by: TNetworkConfiguration , TAdapter

TAdapterType = (atOther, atEthernet, atTokenRing, atFDDI, atPPP, atLoopback, atATM, atIEEE80211, atTunnel, atIEEE1394, atIEEE80216_WMAN, atWWANPP, atWWANPP2);


TAdapterAdminStatus

Types ›› TAdapter ››

Referenced by: TNetworkConfiguration , TAdapter

TAdapterAdminStatus = (aasUnknown, aasUp, aasDown, aasTesting);


TAdapterOperationalStatus

Types ›› TAdapter ››

Referenced by: TNetworkConfiguration , TAdapter

TAdapterOperationalStatus = (aosNonOperational, aosUnreachable, aosDisconnected, aosConnecting, aosConnected, aosOperational);


TNodeType

Types ››

Referenced by: TNetworkConfiguration

TNodeType = (ntUnknown, ntBroadcast, ntPeerToPeer, ntMixed, ntHybrid);


TAddressRecord

Types ››

Referenced by: TNetworkConfiguration

TAddressRecord = record

IP,

Mask: string;

Physical: string;

IntfIdx: Cardinal;

Typ: TAddressType;

ARPType: Cardinal;

end;


TAddressType

Types ›› TAddressRecord ››

Referenced by: TNetworkConfiguration , TAddressRecord

TAddressTypes = (atPrimary, atDynamic, atDisconnected, atDeleted, atTransient);

TAddressType = set of TAddressTypes;


TDevicePowerState

Types ››

Referenced by: GetDevicePowerState

TDevicePowerState = (

PowerDeviceUnspecified, //Indicates an unspecified device power state.

PowerDeviceD0, //Indicates a maximum device power state, which corresponds to device working state D0.

PowerDeviceD1, //Indicates a device sleeping state less than PowerDeviceD0 and greater than PowerDeviceD2, which corresponds to device power state D1.

PowerDeviceD2, //Indicates a device sleeping state less than PowerDeviceD1 and greater than PowerDeviceD3, which corresponds to device power state D2.

PowerDeviceD3, //Indicates the lowest-powered device sleeping state, which corresponds to device power state D3.

PowerDeviceMaximum //The number of device power state values for this enumeration type that represent actual power states. The value of the other device power states is less than this value.

);


TSMBIOS_PMALocation

Types ››

Referenced by: TMiTeC_SMBIOS

TSMBIOS_PMALocation = (pmalOther, pmalUnknown, pmalSystemBoard, pmalISA, pmalEISA, pmalPCI, pmalMCA, pmalPCMCIA, pmalProprietary, pmalNuBus, pmalPC98C20, pmalPC98C24, pmalPC98E, pmalPC98LocalBus);


TSMBIOS_PMAUse

Types ››

Referenced by: TMiTeC_SMBIOS

TSMBIOS_PMAUse = (pmauOther, pmauUnknown, pmauSystemMemory, pmauVideoMemory, pmauFlashMemory, pmauNonVolatileRAM, pmauCacheMemory);


TSMBIOS_PMAErrorCorrectionType

Types ››

Referenced by: TMiTeC_SMBIOS

TSMBIOS_PMAErrorCorrectionType = (pmaectOther, pmaectUnknown, pmaectNone, pmaectParity, pmaectSinglebitECC, pmaectMultibitECC, pmaectCRC);


TSMBIOS_OnBoardDeviceEx

Types ››

Referenced by: TMiTeC_SMBIOS

TSMBIOS_OnBoardDeviceEx = record

DeviceName: string;

Typ: TSMBIOS_OnBoardDeviceType ;

Instance: Byte;

SegmentGroupNumber: Word;

BusNumber: Byte;

DeviceNumber: Byte;

FunctionNumber: Byte;

Status: Boolean;

end;


TSMBIOS_TPMDevice

Types ››

Referenced by: TMiTeC_SMBIOS

TSMBIOS_TPMDevice = record

VendorID: string;

MajorSpecVersion: byte;

MinorSpecVersion: Byte;

FirmwareVersion1: Cardinal;

FirmwareVersion2: Cardinal;

Description: string;

Chars: int64;

OEMDef: Cardinal;

end;


TSMBIOS_MemoryTechnology

Types ››

Referenced by: TMiTeC_SMBIOS

TSMBIOS_MemoryTechnology = (mtOther, mtUnknown, mtDRAM, mtNVDIMMN, mtNVDIMMF, mtNVDIMMP, mtIntelPersistentMemory);


TSMBIOS_DeviceChemistry

Types ››

Referenced by: TMiTeC_SMBIOS

TSMBIOS_DeviceChemistry = (dcOther, dcUnknown, dcLeadAcid, dcNickelCadmium, dcNickelMetalHydride, dcLithiumIon, dcZincAir, dcLithiumPolymer);


TSMBIOS_Battery

Types ››

Referenced by: TMiTeC_SMBIOS

TSMBIOS_Battery = record

Location: string;

Manufacturer: string;

ManufacturerDate: string;

SerialNumber: string;

DeviceName: string;

DeviceChemistry: TSMBIOS_DeviceChemistry ;

DesignCapacity: Word; //mWh

DesignVoltage: Word; // mV

SBDSVersionNumber: string;

MaxErrorInBatData: Word;

SBDSSerialNumber: word;

SBDSManufactureDate: word;

SBDSDeviceChemistry: string;

DesignCapacityMultiplier: byte;

OEMSpec: Cardinal;

end;


TSMBIOS_HP_204

Types ››

Referenced by: TMiTeC_SMBIOS

TSMBIOS_HP_204 = record

RackName: string;

EnclosureName: string;

EnclosureModel: string;

ServerBay: string;

EnclosureBays: Byte;

BaysFilled: byte;

EnclosureSerial: string;

end;


TSMBIOS_HP_221

Types ››

Referenced by: TMiTeC_SMBIOS

TSMBIOS_HP_221 = record

DevNo: Byte;

BusNo: byte;

MAC: string;

end;


TSMBIOS_HP_233

Types ››

Referenced by: TMiTeC_SMBIOS

TSMBIOS_HP_233 = record

GrpNo: word;

BusNo: byte;

DevNo: byte;

MAC: string; //32B, 0-padded

PortNo: byte;

end;


TSMBIOS_HP_219

Types ››

Referenced by: TMiTeC_SMBIOS

TSMBIOS_HP_219 = record

PowerFeatures: Cardinal;

OmegaFeatures: Cardinal;

MiscFeatures: Cardinal;

end;


TThemeMode

Types ››

Referenced by: TMiTeC_OperatingSystem

TThemeMode = (tmLight, tmDark);


TDpiAwareness

Types ››

Referenced by: TSysProcMonThread , TProcessRecord

TDpiAwareness = (dpiUnavailable, dpiUnaware, dpiSystem, dpiPerMonitor, dpiPerMonitorV2, dpiUnawareGDIScaled);


TSecurityProductType

Types ››

Referenced by: TMiTeC_Security , TSecurityProduct

TSecurityProductType = (sptAntiVirus, sptAntiSpyware, sptFirewall);


TSecurityProductState

Types ››

Referenced by: TMiTeC_Security , TSecurityProduct

TSecurityProductState = (spsUnknown, spsEnabled, spsDisabled, spsOutOfDate);

TSecurityProductStates = set of TSecurityProductState;


TSecurityProduct

Types ››

Referenced by: TMiTeC_Security

TSecurityProduct = record

Name: string;

Path: string;

Typ: TSecurityProductType;

State: TSecurityProductStates;

Version: string

end;

TSecuritySoftware = array of TSecurityProduct;


TUpdateType

Types ››

Referenced by: TMiTeC_MUS , TUpdateEntryRecord

TUpdateType = (utUnknown, utSoftware, utDriver);


TDeploymentAction

Types ››

Referenced by: TMiTeC_MUS , TUpdateEntryRecord

TDeploymentAction = (daNone, daInstallation, daUninstallation, daDetection, daOptionalInstallation);


TUpdateOperation

Types ››

Referenced by: TMiTeC_MUS , TUpdateHistoryRecord

TUpdateOperation = (uoInstallation, uoUninstallation);


TOperationResultCode

Types ››

Referenced by: TMiTeC_MUS , TUpdateHistoryRecord

TOperationResultCode = (orcNotStarted, orcInProgress, orcSucceeded, orcSucceededWithErrors, orcFailed, orcAborted);


TUpdateEntryRecord

Types ››

Referenced by: TMiTeC_MUS

TUpdateEntryRecord = record

Title: string;

Description: string;

Typ: TUpdateType ;

KBIds: string;

Severity: string;

Size: UInt64;

Hidden: boolean;

Downloaded: boolean;

Installed: boolean;

Mandatory: boolean;

UnInstallable: boolean;

DeploymentAction: TDeploymentAction ;

Deadline: TDatetime;

end;

TAvailableUpdateList = array of TAvailableUpdateRecord;


TUpdateHistoryRecord

Types ››

Referenced by: TMiTeC_MUS

TUpdateHistoryRecord = record

Title: string;

Description: string;

InstallDate: TDatetime;

Operation: TUpdateOperation ;

ResultCode: TOperationResultCode ;

end;

TUpdateHistoryList = array of TUpdateHistoryRecord;


TGPU

Types ››

Referenced by: TPerfMonThread

TGPU = record

ID: Cardinal;

Utilization: double;

DedicatedUsage: double;

SharedUsage: double;

Engines: array of TGPUEngine ;

procedure Clear(AFull: boolean = True);

function IndexOf(const AEID: Cardinal): integer;

function EngineCount: integer;

end;


TGPUEngine

Types ››

Referenced by: TPerfMonThread , TGPU

TGPUEngine = record

ID: Cardinal;

Utilization: double;

Processes: TGPUProcesses ;

procedure Clear;

end;


TGPUProcesses

Types ››

Referenced by: TPerfMonThread , TGPUEngine

TGPUProcesses = record

Items: array of TGPUProcess ;

function Add(APID: Cardinal; AUtilization,ADedicatedUsage,ASharedUsage: double): integer;

function IndexOf(APID: Cardinal): integer;

end;


TSMBIOS_HardwareSecurity

Types ››

Referenced by: TMiTeC_SMBIOS

TSMBIOS_HardwareSecurity = record

PowerOnPassword: byte;

KeyboardPassword: byte;

AdministratorPassword: byte;

FrontPanelReset: byte;

end;


TGPUProcess

Types ››

Referenced by: TPerfMonThread , TGPUProcesses

TGPUProcess = record

ID: Cardinal;

Utilization: double;

DedicatedUsage: double;

SharedUsage: double;

procedure Clear;

end;


TSMBIOS_ManagementDevice

Types ››

Referenced by: TMiTeC_SMBIOS

TSMBIOS_ManagementDevice = record

Description: string;

Typ: TSMBIOS_ManagementDeviceType ;

Address: Cardinal;

AddressType: TSMBIOS_ManagementDeviceAddressType ;

end;


TSMBIOS_ManagementDeviceType

Types ›› TSMBIOS_ManagementDevice ››

Referenced by: TMiTeC_SMBIOS , TSMBIOS_ManagementDevice

TSMBIOS_ManagementDeviceType = (mdtOther = 1, mdtUnknown, mdtLM75, mdtLM78, mdtLM79, mdtLM80, mdtLM81, mdtADM9240, mdtDS1780, mdtMaxim1617, mdtGL518SM, mdtW83781D, mdtHT82H791);


TSMBIOS_ManagementDeviceAddressType

Types ›› TSMBIOS_ManagementDevice ››

Referenced by: TMiTeC_SMBIOS , TSMBIOS_ManagementDevice

TSMBIOS_ManagementDeviceAddressType = (mdatOther = 1, mdatUnknown, mdatIOPort, mdatmemory, mdatSMBus);


TSystemSnapshot

Types ››

Referenced by: TSysProcMonThread

TSystemSnapshot = record

ACPower: boolean;

BatteryRemaining: Byte;

BatterySecondsRemaining: cardinal;

BatteryStatus: cardinal;

MemoryLoad: cardinal;

FreeMemory: UInt64;

FreePageFile: UInt64;

LimitCommitCharge: UInt64;

CommitCharge: UInt64;

CPUMaxSpeed: cardinal;

CPUSpeed: cardinal;

CPUUsage: double;

CPUTemp: double;

ProcessCount: cardinal;

ThreadCount: cardinal;

HandleCount: cardinal;

end;


TKeyProtector

Types ››

Referenced by: TEncryptableVolume

TKeyProtector = record

VolumeID: string;

Typ: cardinal;

FriendlyName: string;

NumericalPassword: string;

ExternalKey: TBytes;

end;

TKeyProtectors = array of TKeyProtector;


TEncryptableVolume

Types ››

Referenced by: TMiTeC_BitLocker

TEncryptableVolume = record

DeviceID: string;

DriveLetter: string;

EncryptionMethod: cardinal;

ProtectionStatus: cardinal;

LockStatus: cardinal;

ConversionStatus: cardinal;

VolumeType: cardinal;

KeyProtectors: TKeyProtectors ;

end;

TEncryptableVolumes = array of TEncryptableVolume;


TGDIHandleRecord

Types ››

Referenced by: TSysProcMonThread , GetProcessGDIHandles

TGDIHandleRecord = record
Entry: GDI_HANDLE_ENTRY;
Handle: Cardinal;
TypeName: string;
Information: string;
end;
PGDIHandleRecord = ^TGDIHandleRecord;


TPEB

Types ››

Referenced by: TSysProcMonThread , GetProcessPEB

_PEB = record
InheritedAddressSpace: BOOLEAN;
ReadImageFileExecOptions: BOOLEAN;
BeingDebugged: BOOLEAN;
BitField: BOOLEAN;
Mutant: HANDLE;
ImageBaseAddress: Pointer;
Ldr: PPEB_LDR_DATA;
ProcessParameters: PRTL_USER_PROCESS_PARAMETERS;
SubSystemData: Pointer;
ProcessHeap: Pointer;
FastPebLock: PRTL_CRITICAL_SECTION;
AtlThunkSListPtr: PVOID;
IFEOKey: PVOID;
CrossProcessFlags: ULONG;
KernelCallbackTable: PVOID;
SystemReserved: ULONG;
AtlThunkSListPtr32: ULONG;
ApiSetMap: PVOID;
TlsExpansionCounter: ULONG;
TlsBitmap: PVOID;
TlsBitmapBits: array[0..1] of ULONG;
ReadOnlySharedMemoryBase: PVOID;
HotpatchInformation: PVOID;
ReadOnlyStaticServerData: PPVOID;
AnsiCodePageData: PVOID;
OemCodePageData: PVOID;
UnicodeCaseTableData: PVOID;
NumberOfProcessors: ULONG;
NtGlobalFlag: ULONG;
CriticalSectionTimeout: LARGE_INTEGER;
HeapSegmentReserve: SIZE_T;
HeapSegmentCommit: SIZE_T;
HeapDeCommitTotalFreeThreshold: SIZE_T;
HeapDeCommitFreeBlockThreshold: SIZE_T;
NumberOfHeaps: ULONG;
MaximumNumberOfHeaps: ULONG;
ProcessHeaps: PPVOID;
GdiSharedHandleTable: PVOID;
ProcessStarterHelper: PVOID;
GdiDCAttributeList: ULONG;
LoaderLock: PRTL_CRITICAL_SECTION;
OSMajorVersion: ULONG;
OSMinorVersion: ULONG;
OSBuildNumber: USHORT;
OSCSDVersion: USHORT;
OSPlatformId: ULONG;
ImageSubsystem: ULONG;
ImageSubsystemMajorVersion: ULONG;
ImageSubsystemMinorVersion: ULONG;
ImageProcessAffinityMask: ULONG_PTR;
GdiHandleBuffer: GDI_HANDLE_BUFFER;
PostProcessInitRoutine: PVOID;
TlsExpansionBitmap: PVOID;
TlsExpansionBitmapBits: array[0..31] of ULONG;
SessionId: ULONG;
AppCompatFlags: ULARGE_INTEGER;
AppCompatFlagsUser: ULARGE_INTEGER;
pShimData: PVOID;
AppCompatInfo: PVOID;
CSDVersion: UNICODE_STRING;
ActivationContextData: PVOID;
ProcessAssemblyStorageMap: PVOID;
SystemDefaultActivationContextData: PVOID;
SystemAssemblyStorageMap: PVOID;
MinimumStackCommit: SIZE_T;
FlsCallback: PPVOID;
FlsListHead: LIST_ENTRY;
FlsBitmap: PVOID;
FlsBitmapBits: array[0..Round(128/(sizeof(ULONG)*8))-1] of ULONG;
FlsHighIndex: ULONG;
WerRegistrationData: PVOID;
WerShipAssertPtr: PVOID;
pContextData: PVOID;
pImageHeaderHash: PVOID;
TracingFlags: ULONG;
CsrServerReadOnlySharedMemoryBase: ULONGLONG;
end;
PEB = _PEB;
TPEB = PEB;
PPEB = ^PEB;


TPEB32

Types ››

Referenced by: TSysProcMonThread , GetProcessPEB32

_PEB32 = record
InheritedAddressSpace: BOOLEAN;
ReadImageFileExecOptions: BOOLEAN;
BeingDebugged: BOOLEAN;
BitField: BOOLEAN;
Mutant: Cardinal;
ImageBaseAddress: Cardinal;
Ldr: Cardinal;
ProcessParameters: Cardinal;
SubSystemData: Cardinal;
ProcessHeap: Cardinal;
FastPebLock: Cardinal;
AtlThunkSListPtr: Cardinal;
IFEOKey: Cardinal;
CrossProcessFlags: ULONG;
KernelCallbackTable: Cardinal;
SystemReserved: ULONG;
AtlThunkSListPtr32: ULONG;
ApiSetMap: Cardinal;
TlsExpansionCounter: ULONG;
TlsBitmap: Cardinal;
TlsBitmapBits: array[0..1] of ULONG;
ReadOnlySharedMemoryBase: Cardinal;
HotpatchInformation: Cardinal;
ReadOnlyStaticServerData: Cardinal;
AnsiCodePageData: Cardinal;
OemCodePageData: Cardinal;
UnicodeCaseTableData: Cardinal;
NumberOfProcessors: ULONG;
NtGlobalFlag: ULONG;
CriticalSectionTimeout: LARGE_INTEGER;
HeapSegmentReserve: Cardinal;
HeapSegmentCommit: Cardinal;
HeapDeCommitTotalFreeThreshold: Cardinal;
HeapDeCommitFreeBlockThreshold: Cardinal;
NumberOfHeaps: ULONG;
MaximumNumberOfHeaps: ULONG;
ProcessHeaps: Cardinal;
GdiSharedHandleTable: Cardinal;
ProcessStarterHelper: Cardinal;
GdiDCAttributeList: ULONG;
LoaderLock: Cardinal;
OSMajorVersion: ULONG;
OSMinorVersion: ULONG;
OSBuildNumber: USHORT;
OSCSDVersion: USHORT;
OSPlatformId: ULONG;
ImageSubsystem: ULONG;
ImageSubsystemMajorVersion: ULONG;
ImageSubsystemMinorVersion: ULONG;
ImageProcessAffinityMask: Cardinal;
GdiHandleBuffer: GDI_HANDLE_BUFFER32;
PostProcessInitRoutine: Cardinal;
TlsExpansionBitmap: Cardinal;
TlsExpansionBitmapBits: array[0..31] of ULONG;
SessionId: ULONG;
AppCompatFlags: ULARGE_INTEGER;
AppCompatFlagsUser: ULARGE_INTEGER;
pShimData: Cardinal;
AppCompatInfo: Cardinal;
CSDVersion: UNICODE_STRING32;
ActivationContextData: Cardinal;
ProcessAssemblyStorageMap: Cardinal;
SystemDefaultActivationContextData: Cardinal;
SystemAssemblyStorageMap: Cardinal;
MinimumStackCommit: Cardinal;
SparePointers: array[0..1] of Cardinal;
PatchLoaderData: cardinal;
ChpeV2ProcessInfo: cardinal;
AppModelFeatureState: cardinal;
SpareULongs: array[0..1] of Cardinal;
ActiveCodePage: USHORT;
OemCodePage: USHORT;
UseCaseMapping: USHORT;
UnusedNlsField: USHORT;
WerRegistrationData: Cardinal;
WerShipAssertPtr: Cardinal;
pContextData: Cardinal;
pImageHeaderHash: Cardinal;
TracingFlags: ULONG;
CsrServerReadOnlySharedMemoryBase: ULONGLONG;
TppWorkerpListLock: cardinal;
end;
PEB32 = _PEB32;
TPEB32 = PEB32;
PPEB32 = ^PEB32;


System Information File

Referenced by: TMiTeC_Component

System information file (SIF) is Compound File Binary Format based on OLE Structured Storage .

Global file information are stored in Summary Information Stream Property Set . It is written by default HeaderWriter (and read by default HeaderReader) which can be replaced by assigning TMiTeC_Component .OnWriteHeader/OnReadHeader event. Data from Summary Information Stream Property Set are stored in TStorageInfoRecord when data is loaded from file.

Saved data are stored in hierachical structure which mimics ordinary file system storage. Stream format is plain text consisting from lines in format 'name=value'. However it can be compressed/decompressed or/and encrypted/decrypted using TCodeStreamProcedure in TMiTeC_Component . SaveToStorage / LoadFromStorage method.

See Demo 02 for more information.

You can use MiTeC Structure Storage Viewer to browse SIF internals.


XML Reports

Declared in: MSI_XML_Reports.pas

procedure SaveXSLTemplate(AFilename: string);

procedure ActiveDirectory_XML_Report(AD: TMiTeC_AD ; Standalone: Boolean; sl: TStrings);

procedure APM_XML_Report(APM: TMiTeC_APM ; Standalone: Boolean; sl: TStrings);

procedure BIOS_XML_Report(BIOS: TMiTeC_BIOS ; Standalone: Boolean; sl: TStrings);

procedure Bluetooth_XML_Report(Bluetooth: TMiTeC_BT ; Standalone: Boolean; sl: TStrings);

procedure CPU_XML_Report(CPU: TMiTeC_CPU ; Standalone: Boolean; sl: TStrings);

procedure Devices_XML_Report(Devices: TMiTeC_Devices ; Standalone: Boolean; sl: TStrings);

procedure Disk_XML_Report(Disk: TMiTeC_Disk ; Standalone: Boolean; sl: TStrings);

procedure Display_XML_Report(Display: TMiTeC_Display ; Standalone: Boolean; sl: TStrings);

procedure Engines_XML_Report(Engines: TMiTeC_Engines ; Standalone: Boolean; sl: TStrings);

procedure EventLog_XML_Report(EL: TMiTeC_EventLog ; Standalone: Boolean; sl: TStrings);

procedure Internet_XML_Report(Internet: TMiTeC_Internet ; Standalone: Boolean; sl: TStrings);

procedure LocaleInfo_XML_Report(LocaleInfo: TMiTeC_LocaleInfo ; Standalone: Boolean; sl: TStrings);

procedure Machine_XML_Report(Machine: TMiTeC_Machine ; Standalone: Boolean; sl: TStrings);

procedure Media_XML_Report(Media: TMiTeC_Media ; Standalone: Boolean; sl: TStrings);

procedure Memory_XML_Report(Memory: TMiTeC_Memory ; Standalone: Boolean; sl: TStrings);

procedure Monitor_XML_Report(Monitor: TMiTeC_Monitor ; Standalone: Boolean; sl: TStrings);

procedure Network_XML_Report(Network: TMiTeC_Network ; Standalone: Boolean; sl: TStrings);

procedure OperatingSystem_XML_Report(OS: TMiTeC_OperatingSystem ; Standalone: Boolean; sl: TStrings);

procedure Printers_XML_Report(Printers: TMiTeC_Printers ; Standalone: Boolean; sl: TStrings);

procedure ProcessList_XML_Report(ProcessList: TMiTeC_ProcessList ; Standalone: Boolean; sl: TStrings);

procedure Security_XML_Report(SC: TMiTeC_Security ; Standalone: Boolean; sl: TStrings);

procedure SMBIOS_XML_Report(SMBIOS: TMiTeC_SMBIOS ; Standalone: Boolean; sl: TStrings);

procedure Software_XML_Report(Software: TMiTeC_Software ; Standalone: Boolean; sl: TStrings);

procedure Startup_XML_Report(Startup: TMiTeC_Startup ; Standalone: Boolean; sl: TStrings);

procedure Storage_XML_Report(Storage: TMiTeC_Storage ; Standalone: Boolean; sl: TStrings);

procedure TimeZone_XML_Report(TimeZone: TMiTeC_TimeZone ; Standalone: Boolean; sl: TStrings);

procedure USB_XML_Report(USB: TMiTeC_USB ; Standalone: Boolean; sl: TStrings);

procedure WIFI_XML_Report(WIFI: TMiTeC_WIFI ; Standalone: Boolean; sl: TStrings);

procedure NetCreds_XML_Report(NetCreds: TMiTeC_NetCreds ; Standalone: Boolean; sl: TStrings);

procedure USBHistory_XML_Report(USBHistory: TMiTeC_USBHistory ; Standalone: Boolean; sl: TStrings);

procedure WLANC_XML_Report(WLANC: TMiTeC_WLANC ; Standalone: Boolean; sl: TStrings);

procedure SystemInfo_XML_Report(AComponent: TMiTeC_SystemInfo ; sl: TStrings);


Examples

Copyright © 1997-2023, Michal Mutl. All Rights Reserved.


SMBIOS value reading

Examples ››

Referenced by: TMiTeC_SMBIOS

This code fragment demonstrates how to read Processor version string (10h) and Core count (23h) from SMBIOS table Processor Information (Type 4).

Code

var

SMBIOS: TSMBIOS ;

idx: integer;

v: Byte;

s: string;

r: TSMBIOSTable

begin

SMBIOS:=TSMBIOS.Create;

try

SMBIOS.LoadFromSystem;

idx:=SMBIOS.FindTableIndex(SMB_CPU);

if idx>-1 then

repeat

r:=SMBIOS.Tables[idx];

if SMBIOS.ByteValue[r.Offset+$10]>0 then

s:=SMBIOS.StringValue[r.Offset+r.Header.Length,SMBIOS.ByteValue[r.Offset+$10]];

v:=SMBIOS.Wordvalue[r.Offset+$23];

writeln(Format('%s (%d cores)',[s,v]));

end;

idx:=SMBIOS.FindTableIndex(SMB_CPU,r.Index+1);

until idx=-1;

finally

SMBIOS.Free;

end;

end;

Output

Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz (2 cores)