读取本机硬件信息的VBA代码计算机等级考试

文章作者 100test 发表时间 2010:01:01 10:53:30
来源 100Test.Com百考试题网


  今天被朋友问到,如何在VB或者VBA代码中读取诸如硬盘或者CPU等硬件设备的序列号这一类信息。我写了一个范例如下
  1. 在我的机器上运行的效果。我这个例子读取了四部分信息(CPU,物理硬盘,逻辑磁盘,网卡)
  2.代码如下。代码的原理是使用WMI接口。需要管理员权限才能执行该代码
  Private Type OSVERSIONINFO
  dwOSVersionInfoSize As Long
  dwMajorVersion As Long
  dwMinorVersion As Long
  dwBuildNumber As Long
  dwPlatformId As Long来源:考
  szCSDVersion As String * 128 ’ Maintenance string for PSS usage
  End Type
  Private Declare Function GetVersionEx Lib "kernel32" Alias "GetVersionExA" (lpVersionInformation As OSVERSIONINFO) As Long
  Private Declare Function GetComputerName Lib "kernel32" Alias "GetComputerNameA" (ByVal lpBuffer As String, nSize As Long) As Long
  Private Const VER_PLATFORM_WIN32_NT = 2
  Private Const VER_PLATFORM_WIN32_WINDOWS = 1
  Private Const VER_PLATFORM_WIN32s = 0
  ’’’这个范例程序是读取CPU,物理硬盘,逻辑磁盘,和网卡的有关序列号的
  ’’’作者:陈希章
  ’’’时间:2009年6月2日
  Sub Test()
  Dim len5 As Long, aa As Long
  Dim cmprName As String
  Dim osver As OSVERSIONINFO
  ’取得Computer Name
  cmprName = String(255, 0)
  len5 = 256
  aa = GetComputerName(cmprName, len5)
  cmprName = Left(cmprName, InStr(1, cmprName, Chr(0)) - 1)
  Computer = cmprName ’取得CPU端口号来源:
  ActiveCell.Worksheet.Cells.Clear
  Dim rng As Range
  Set rng = Range("B7")
  rng.Font.Bold = True
  rng.Value = "CPU"
  Set rng = rng.Offset(1)
  Set CPUs = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" 

相关文章


2009年9月全国计算机二级VisualBasic笔试试题计算机等级考试
2009年下半年全国计算机二级VisualBasic笔试答案计算机等级考试
2009年9月全国计算机二级VisualBasic上机试题计算机等级考试
2009年下半年全国计算机二级VisualBasic上机答案计算机等级考试
读取本机硬件信息的VBA代码计算机等级考试
全国计算机等级二级考试VB程序设计基础计算机等级考试
全国计算机等级二级考试VB数据结构与算法计算机等级考试
VB对象及其操作全真试题训练与参考答案计算机等级考试
VB对象及其操作历届最新考题汇编与解答计算机等级考试
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛