Tìm thủ thuật nhanh hơn với chức năng tìm trong Blog

11/18/09

Lấy về số seri CPU, ổ cứng MainBoard trong Access

Đôi khi có 1 số nhu cầu lấy thông tin phần cứng trong chương trình (chẳng hạn để cấp bản quyền). Dưới đây là Đoạn Code cho phép bạn lấy thông tin CPU máy tính:



Sub GetCPUID()
 'ta.o ðo^'i týo+.ng di.ch vu. WMI
 Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
 'ti`m các CPU ðang cha.y cu?a máy
 Set colItems = objWMIService.ExecQuery("Select * from Win32_Processor")
 'la(.p hie^?n thi. ID cu?a tu+`ng CPU
 For Each objItem In colItems
 MsgBox "Processor Id: " & objItem.ProcessorId
 Next
 End Sub

Lưu ý rằng trên các máy PC bình thường, chỉ có 1 CPU nên vòng lặp hiển thị thông tin sẽ chỉ chạy 1 lần và hiển thị ID của CPU duy nhất của máy.


nguồn PC word




2. Lấy CPU ổ cứng:


Sub readserienumber()
Dim fso As Object, Drv As Object
        'Create a FileSystemObject object
          Set fso = CreateObject("Scripting.FileSystemObject")
          'Assign the current drive letter if not specified
          Set Drv = fso.GetDrive()
          With Drv
              If .IsReady Then
                  DriveSerial = Abs(.SerialNumber)
              Else    '"Drive Not Ready!"
                  DriveSerial = -1
              End If
          End With
          'Clean up
          Set Drv = Nothing
          Set fso = Nothing
          Msgbox "Serial là: " & DriveSerial
 End Sub

3. Lấy Serial Main Board
Sub readseriemainboard()
Dim objs As Object
Dim obj As Object
Dim WMI As Object
Dim sAns As String 
Set WMI = GetObject("WinMgmts:")
Set objs = WMI.InstancesOf("Win32_BaseBoard")
For Each obj In objs
sAns = sAns & obj.SerialNumber
If sAns < objs.Count Then sAns = sAns & ","
Next
Msgbox "Serial main: " & sAns
End Sub

Thảo luận thêm về chủ đề này