WMI 呼び出しを使用してドライブ インターフェイスの種類とドライブ文字を取得しようとしていますが、ドライブ文字は常に、マシンで最後に割り当てられたドライブとして返されます。
誰でも助けることができますか?
'On Error Resume Next
Option Explicit
Dim strComputer, objWMIService, colIDiskDrive, objDiskDrive, colLogicalDisk, objLogicalDisk, strDriveLetter, strPNPDeviceID, strDiskLetter, strInterfaceType
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colIDiskDrive = objWMIService.ExecQuery("Select * from Win32_DiskDrive",,48)
For Each objDiskDrive in colIDiskDrive
strPNPDeviceID = objDiskDrive.PNPDeviceID
strInterfaceType = objDiskDrive.InterfaceType
Set colLogicalDisk = objWMIService.ExecQuery("Select * from Win32_LogicalDisk")
For Each objLogicalDisk in colLogicalDisk
strDiskLetter = objLogicalDisk.Name
Next
Wscript.Echo strInterfaceType & " " & strDiskLetter
Next