用vbs脚本获取网卡MAC,CPUID,硬盘序列号

'方法1
Sub Auto_Open()
OnErrorResumeNext
    Set fs = CreateObject("Scripting.FileSystemObject")
    StrDrive = "B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z"
    StrDriveArray = Split(StrDrive, ",")
    For StartPos = 1ToUBound(StrDriveArray)
        Set d = fs.GetDrive(fs.GetDriveName(fs.GetAbsolutePathName(StrDriveArray(StartPos) & ":\\")))
        If d.DriveType = 1Then
            s = d.SerialNumber
            ExitFor
        EndIf
    Next
    If s <> ""Then
        Range("Sheet1!d8") = s
    Else
        Range("Sheet1!d8") = "系统未检测到U盘!"
   EndIf
   Set d = Nothing
   Set fs = Nothing
   Call QueryOther
EndSub
'方法2
Sub DetectUdisk()
OnErrorResumeNext
    Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
    Set colDisks = objWMIService.ExecQuery("Select * from Win32_LogicalDisk Where DriveType = 2")
    ForEach objDisk In colDisks
       RemovableDrive = objDisk.DeviceID
        IfCreateObject("Scripting.FileSystemObject").GetDrive(RemovableDrive).IsReady Then
            s = CreateObject("Scripting.FileSystemObject").GetDrive(RemovableDrive).SerialNumber
            ExitFor
        EndIf
    Next
    If s <> ""Then
        Range("Sheet1!d8") = s
    Else
        Range("Sheet1!d8") = "系统未检测到U盘!"
   EndIf
   Call QueryOther
EndSub
Sub QueryOther()
   '2007.1.19 更新,获取主板序列号, CPUID, 网卡MAC地址
    Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
    Set colItems = objWMIService.ExecQuery("Select   SerialNumber   From   Win32_BIOS")
    ForEach objItem In colItems
        Range("Sheet1!E8") = objItem.SerialNumber
        ExitFor
    Next
    Set colItems = Nothing
    
    Set colItems = objWMIService.ExecQuery("Select * from Win32_Processor")
    ForEach objItem In colItems
        Range("Sheet1!F8") = objItem.ProcessorId
        ExitFor
    Next
    Set colItems = Nothing
    
    Set colItems = objWMIService.ExecQuery("SELECT MACAddress FROM Win32_NetworkAdapter WHERE ((MACAddress Is Not NULL) AND (Manufacturer <> 'Microsoft'))")
    ForEach objItem In colItems
        Range("Sheet1!G8") = objItem.MACAddress
        ExitFor
    Next
    Set colItems = Nothing
   
EndSub

你可能感兴趣的:(VBScript)