CPUの情報を取得する


WMIはおもしろいですね。つーことで一発芸的なネタ。CPUの情報を取得するサンプルです。VB6とVBAで動作確認しました。

Sub Sample()
    ''CPUの情報を取得する
    Dim Locator, Service, ProcSet, Prc, buf As String
    Set Locator = CreateObject("WbemScripting.SWbemLocator")
    Set Service = Locator.ConnectServer()
    Set ProcSet = Service.ExecQuery("Select * From CIM_Processor")
    
    For Each Prc In ProcSet
        buf = "CPUの種類:" & Prc.Description & vbCrLf & _
              "CPUの名前:" & Prc.Name & vbCrLf & _
              "CPUの製造元:" & Prc.Manufacturer & vbCrLf & _
              "CPUの現在の周波数:" & CStr(Prc.CurrentClockSpeed) & vbCrLf & _
              "CPUの最大周波数:" & CStr(Prc.MaxClockSpeed) & vbCrLf & _
              "CPUのL2キャッシュサイズ:" & CStr(Prc.L2CacheSize)
    Next Prc
    MsgBox buf
    
    Set ProcSet = Nothing
    Set Service = Nothing
    Set Locator = Nothing
End Sub