


JavaScript method to obtain client computer hardware and system information_javascript skills
JavaScript to obtain client computer hardware and system information
Acquire client computer hardware and system information through WMI:
function getSysInfo(){
var locator = new ActiveXObject ("WbemScripting.SWbemLocator");
var service = locator.ConnectServer("." );
//CPU information
var cpu = new Enumerator (service.ExecQuery("SELECT * FROM Win32_Processor")).item();
var cpuType=cpu.Name,hostName=cpu.SystemName ;
//Memory information
var memory = new Enumerator (service.ExecQuery("SELECT * FROM Win32_PhysicalMemory"));
for (var mem=[],i=0;!memory.atEnd( );memory.moveNext()) mem[i ]={cap:memory.item().Capacity/1024/1024,speed:memory.item().Speed}
//System information
var system =new Enumerator (service.ExecQuery("SELECT * FROM Win32_ComputerSystem")).item();
var physicMenCap=Math.ceil(system.TotalPhysicalMemory/1024/1024),curUser=system.UserName,cpuCount=system. NumberOfProcessors
return {cpuType:cpuType,cpuCount:cpuCount,hostName:hostName,curUser:curUser,memCap:physicMenCap,mem:mem}
}
The code implementation mainly includes These parts:
First access the WbemScripting object through new ActiveXObject ("WbemScripting.SWbemLocator");.
Connect to our local computer through locator.ConnectServer("."); (. represents the local computer, of course
can also access other computers).
Get the record set of the object we need through service.ExecQuery("SELECT * FROM Win32_Processor"), a SQL-like statement (in fact, the system information is also stored in a database-like file in the calculation).
Use new Enumerator to create an enumerable object, and then you can traverse to get the information.
Note: The prerequisite for running is to modify the browser security settings to "Allow the running of ActiveX
scripts that are not marked as safe for execution".
The main information here is CPU, memory and system user. You can use WMI API or JSEDIT to get
more information. Classes for common information are listed below:
Win32_Processor // CPU processor
Win32_PhysicalMemory // Physical memory
Win32_Keyboard // Keyboard
Win32_PointingDevice / / Point input device, such as mouse
Win32_DiskDrive // Hard drive
Win32_CDROMDrive // CD drive
Win32_BaseBoard // Motherboard
Win32_BIOS // BIOS chip
Win32_ParallelPort // Parallel port
Win32_SerialPort // Serial port
Win32_SoundDevice // Multimedia settings
Win32_USBController // USB controller
Win32_NetworkAdapter // Network Adapter
Win32_NetworkAdapterConfiguration // Network Adapter Settings
Win32_Printer // Printer
Win32_PrinterConfiguration // Printer Settings
Win32_PrintJob // Printer Task
Win32_TCPIPPrinterPort // Printer port
Win32_POTSModem // MODEM
Win32_POTSModemToSerialPort // MODEM port
Win32_DesktopMonitor // Monitor
Win32_VideoController // Display card detail.
Win32_VideoSettings // Display modes supported by the graphics card.
Win32_TimeZone // Time zone
Win32_SystemDriver // Driver
Win32_DiskPartition // Disk partition
Win32_LogicalDisk // Logical disk
Win32_LogicalMemoryConfiguration // Logical memory configuration
Win32_PageFile // System page file information
Win32_PageFileSetting // Page file setting
Win32_BootConfiguration // System startup configuration
Win32_OperatingSystem / / Operating system information
Win32_StartupCommand // System automatic startup program
Win32_Service // System installed services
Win32_Group // System management group
Win32_GroupUser / / System group account
Win32_UserAccount // User account
Win32_Process // System process
Win32_Thread // System thread
Win32_Share // Share
Win32_NetworkClient // Installed network client
Win32_NetworkProtocol // Installed network protocol
WMI For complete information and detailed list of Win32 classes, please refer to MSDN:
http: //msdn2.microsoft.com/en-us/library/aa394084(VS.85).aspx
Example:
function button1_onclick() {//cpu 信息
var locator = new ActiveXObject ("WbemScripting.SWbemLocator");
var service = locator.ConnectServer(".");
var properties = service.ExecQuery("SELECT * FROM Win32_Processor");
var e = new Enumerator (properties);
document.write("
" p.Caption " | ");" p.DeviceID " | ");" p.Name " | ");" p.CpuStatus " | ");" p.Availability " | ");" p.Level " | ");" p.ProcessorID " | ");" p.SystemName " | ");" p.ProcessorType " | ");
}
function Button2_onclick() {//CD-ROM 信息
var locator = new ActiveXObject ("WbemScripting.SWbemLocator");
var service = locator.ConnectServer(".");
var properties = service.ExecQuery("SELECT * FROM Win32_CDROMDrive");
var e = new Enumerator (properties);
document.write("
" p.Caption " | ");" p.Description " | ");" p.Drive " | ");" p.Status " | ");" p.MediaLoaded " | ");
}
function Button3_onclick() {//键盘信息
var locator = new ActiveXObject ("WbemScripting.SWbemLocator");
var service = locator.ConnectServer(".");
var properties = service.ExecQuery("SELECT * FROM Win32_Keyboard");
var e = new Enumerator (properties);
document.write("
" p.Description " | ");" p.Name " | ");" p.Status " | ");
}
function Button4_onclick() {//主板信息
var locator = new ActiveXObject ("WbemScripting.SWbemLocator");
var service = locator.ConnectServer(".");
var properties = service.ExecQuery("SELECT * FROM Win32_BaseBoard");
var e = new Enumerator (properties);
document.write("
" p.HostingBoard " | ");" p.Manufacturer " | ");" p.PoweredOn " | ");" p.Product " | ");" p.SerialNumber " | ");" p.Version " | ");
}
另外,通过以下方式也可以获得系统的相关信息:
In fact, the most important thing is to use two ActiveX:
< ;OBJECT id=foo classid=CLSID:75718C9A-F029-11d1-A1AC-00C04FB6C223>
However, these two ActiveXs come with the system, so there is no need to download or register them.
The next step is to use script to interact with ActiveX
class Win32_NetworkAdapterConfiguration : CIM_Setting
{
boolean ArpAlwaysSourceRoute;
boolean ArpUseEtherSNAP;
string Caption;
string DatabasePath;
boolean DeadGWDetectEnabled;
string DefaultIPGateway[];
uint8 DefaultTOS;
uint8 DefaultTTL;
string Description;
boolean DHCPEnabled;
datetime DHCPLeaseExpires;
datetime DHCPLeaseObtained;
string DHCPServer; DNSDomainSuffixSearchOrder[];
boolean DNSEnabledForWINSResolution;
string DNSHostName;
string DNSServerSearchOrder[];
boolean DomainDNSRegistrationEnabled;
uint32 ForwardBufferMemory; GatewayCostMetric[];
uint8 IGMPLevel;
uint32 Index;
uint32 InterfaceIndex;
string IPAddress[];
uint32 IPConnectionMetric;
string IPSecPermitIPProtocols[];
string IPSecPermitTCPPorts[];
string IPSecPermitUDPPorts[];
string IPSubnet[];
boolean IPUseZeroBroadcast;
string IPXAddress;
uint32 IPXFrameType[];
uint32 IPXMediaType;
string IPXNetworkNumber[];
string IPXVirtualNetNumber;
uint32 KeepAliveInterval;
uint32 KeepAliveTime; MTU;
uint32 NumForwardPackets;
boolean PMTUBHDetectEnabled;
boolean PMTUDiscoveryEnabled;
string ServiceName;
string SettingID;
uint32 TcpipNetbiosOptions; 32 TcpMaxDataRetransmissions;
uint32 TcpNumConnections;
boolean TcpUseRFC1122UrgentPointer;
uint16 TcpWindowSize;
boolean WINSEnableLMHostsLookup;
string WINSHostupFile;
string WINSPrimaryServer;
string WINSScopeID; 🎜>string WINSSecondaryServer;
};

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics
![VMware Horizon Client cannot be opened [Fix]](https://img.php.cn/upload/article/000/887/227/170835607042441.jpg?x-oss-process=image/resize,m_fill,h_207,w_330)
VMware Horizon Client helps you access virtual desktops conveniently. However, sometimes the virtual desktop infrastructure may experience startup issues. This article discusses the solutions you can take when the VMware Horizon client fails to start successfully. Why won't my VMware Horizon client open? When configuring VDI, if the VMWareHorizon client is not open, an error may occur. Please confirm that your IT administrator has provided the correct URL and credentials. If everything is fine, follow the solutions mentioned in this guide to resolve the issue. Fix VMWareHorizon Client Not Opening If VMW is not opening on your Windows computer
![VMware Horizon client freezes or stalls while connecting [Fix]](https://img.php.cn/upload/article/000/887/227/170942987315391.jpg?x-oss-process=image/resize,m_fill,h_207,w_330)
When connecting to a VDI using the VMWareHorizon client, we may encounter situations where the application freezes during authentication or the connection blocks. This article will explore this issue and provide ways to resolve this situation. When the VMWareHorizon client experiences freezing or connection issues, there are a few things you can do to resolve the issue. Fix VMWareHorizon client freezes or gets stuck while connecting If VMWareHorizon client freezes or fails to connect on Windows 11/10, do the below mentioned solutions: Check network connection Restart Horizon client Check Horizon server status Clear client cache Fix Ho

MQTT (MessageQueuingTelemetryTransport) is a lightweight message transmission protocol commonly used for communication between IoT devices. PHP is a commonly used server-side programming language that can be used to develop MQTT clients. This article will introduce how to use PHP to develop an MQTT client and include the following content: Basic concepts of the MQTT protocol Selection and usage examples of the PHPMQTT client library: Using the PHPMQTT client to publish and

When many friends download files, they will first browse on the web page and then transfer to the client to download. But sometimes users will encounter the problem that the Baidu Netdisk webpage cannot start the client. In response to this problem, the editor has prepared a solution for you to solve the problem that the Baidu Netdisk webpage cannot start the client. Friends in need can refer to it. Solution: 1. Maybe Baidu Netdisk is not the latest version. Manually open the Baidu Netdisk client, click the settings button in the upper right corner, and then click version upgrade. If there is no update, the following prompt will appear. If there is an update, please follow the prompts to update. 2. The detection service program of Baidu Cloud Disk may be disabled. It is possible that we manually or use security software to automatically disable the detection service program of Baidu Cloud Disk. Please check it out

A mobile client refers to an application that runs on a smartphone and provides users with various functions and services in the form of a native client or a web client. Mobile clients can be divided into two forms: original clients and web clients. Native clients refer to applications written for specific operating systems using specific programming languages and development tools. The advantage of web clients is that they have good cross-platform compatibility. , can run on different devices without operating system restrictions, but compared to the native client, the performance and user experience of the web client may be reduced.

How to write an FTP client in PHP 1. Introduction FTP (File Transfer Protocol) is a protocol used for file transfer on the network. In web development, we often need to upload or download files through FTP. As a popular server-side language, PHP provides powerful FTP functions, allowing us to easily write FTP clients. This article will introduce how to write a simple FTP client using PHP and provide code examples. 2. Connect to the FTP server in PHP, we can use f

Some Win11 users have noticed that the shield logo appears next to some software icons on their personal computers. This protects computer systems and even the important information and data stored in them from infringement. If you don't like it, you can solve it by the following method. How to remove the shield logo on the win11 client 1. Right-click the taskbar on the computer and select "Task Manager" 2. Then click "Start" above 3. Find "Windows Defender" here and right-click and select "Disable", then Just restart the computer.

If neither the client nor the server implements SSL encryption technology, it is very easy for information to be stolen by intermediary attackers during the transmission process, thus causing serious risks to data security. For this reason, corresponding measures should be taken urgently to effectively ensure the security of sensitive data. You can refer to the following methods to operate. The win11 client and server do not support the commonly used SSL1. When upgrading and transforming the server system, you can give priority to upgrading and optimizing the server system, or supplementing the required necessary components to ensure that it can smoothly support the latest SSL protocol. 2. Deploy SSL certificates. You can purchase and deploy SSL certificates issued by prestigious certification centers, and install them in the server to achieve this function. 3. Enable SSL protocol
