斑竹用VC编写的DLL,可以获得硬盘的型号、序列号以及计算机 ID,带Delphi的源程序,在Win2K下通过,但是没有在Win9X下试过,感兴趣的朋友可以在Win9X 下试一下,或者编写一个VB的范例。
函数以及定义:
function ReadPhysicalDrive(driveID:integer;buffer:Pointer;bufLen:integer):integer; stdcall; external 'DiskID.dll' name 'ReadPhysicalDriveInNT';
获得WinNT下的硬盘型号以及序列号。参数driveID为硬盘的位置,IDE1上的主盘为0,类推到IDE2上的从盘的driveID为3。
function ReadPhysicalDrive9X(driveID:integer;buffer:Pointer;bufLen:integer):integer; stdcall; external 'DiskID.dll' name 'ReadDrivePortsInWin9X';
获得Win9X下的硬盘型号以及序列号。参数同上
function getHardDriveComputerID:int64; stdcall; external 'DiskID.dll' name 'getHardDriveComputerID';
获得计算机的ID :http://www.applevb.com/lib/diskio.rar
函数以及定义:
function ReadPhysicalDrive(driveID:integer;buffer:Pointer;bufLen:integer):integer; stdcall; external 'DiskID.dll' name 'ReadPhysicalDriveInNT';
获得WinNT下的硬盘型号以及序列号。参数driveID为硬盘的位置,IDE1上的主盘为0,类推到IDE2上的从盘的driveID为3。
function ReadPhysicalDrive9X(driveID:integer;buffer:Pointer;bufLen:integer):integer; stdcall; external 'DiskID.dll' name 'ReadDrivePortsInWin9X';
获得Win9X下的硬盘型号以及序列号。参数同上
function getHardDriveComputerID:int64; stdcall; external 'DiskID.dll' name 'getHardDriveComputerID';
获得计算机的ID :http://www.applevb.com/lib/diskio.rar
Private Sub Command1_Click()WQL = "Select * From Win32_Processor"
Set objinst = GetObject("winmgmts:").ExecQuery(WQL) For Each obj In objinst
List1.Clear
List1.AddItem "以下是CPU的各类信息"
List1.AddItem "Name:" & obj.Name
List1.AddItem "DeviceID:" & obj.DeviceID
List1.AddItem "Description:" & obj.Description
List1.AddItem "Level:" & obj.Level
List1.AddItem "Version:" & obj.version
List1.AddItem "Architecture:" & obj.Architecture
List1.AddItem "SystemName:" & obj.SystemName
List1.AddItem "CpuStatus :" & obj.CpuStatus
List1.AddItem "CreationClassName:" & obj.CreationClassName
Next
End Sub
你可以去http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wmisdk/wmi/win32_processor.asp
得到你所希望得到的所有硬件信息
给分吧
http://www.applevb.com/sourcecode/wmi.rar
这个是一个利用微软提供的WMI实现获取系统信息的代码集合,包括获得系统信息、主板信息、BIOS信息等10个单独的源程序