다음 WMI 스크립트를 실행하여 시스템의 드라이브 문자와 물리적 드라이브 간의 연결을 가져 오지만 어떤 이유로 CDROM/DVD-ROM이 누락됩니다. 누군가 그걸 어떻게 얻을 수 있는지 말해 줄 수 있습니까?물리적 드라이브 경로와 드라이브 문자 연결을 가져오고 CDROM을 놓친 경우
ComputerName = "."
Set wmiServices = GetObject _
("winmgmts:{impersonationLevel=Impersonate}!//" & ComputerName)
Set wmiDiskDrives = wmiServices.ExecQuery _
("SELECT DeviceID FROM Win32_DiskDrive")
For Each wmiDiskDrive In wmiDiskDrives
strEscapedDeviceID = _
Replace(wmiDiskDrive.DeviceID, "\", "\\", 1, -1, vbTextCompare)
Set wmiDiskPartitions = wmiServices.ExecQuery _
("ASSOCIATORS OF {Win32_DiskDrive.DeviceID=""" & _
strEscapedDeviceID & """} WHERE " & _
"AssocClass = Win32_DiskDriveToDiskPartition")
For Each wmiDiskPartition In wmiDiskPartitions
Set wmiLogicalDisks = wmiServices.ExecQuery _
("ASSOCIATORS OF {Win32_DiskPartition.DeviceID=""" & _
wmiDiskPartition.DeviceID & """} WHERE " & _
"AssocClass = Win32_LogicalDiskToPartition")
For Each wmiLogicalDisk In wmiLogicalDisks
WScript.Echo wmiLogicalDisk.DeviceID & " = " & wmiDiskDrive.DeviceID
Next
Next
Next
이 코드는 드라이브 문자가 논리 디스크 파티션과 관련되어 있음을 감지합니다. 실제로 원하는 것입니까? [FSO를 사용하여 디스크 드라이브 속성 열거] (http://www.activexperts.com/activmonitor/windowsmanagement/adminscripts/disk/drives/#EnumDiskDrive.htm)와 같은 간단한 코드처럼 들릴 수 있습니까? – brettdj
고마워요,하지만 그건 내가 필요로하는 것이 아닙니다. 현재 스크립트 (실행중인 경우)는 드라이브 문자와 실제 드라이브 경로 간의 상관 관계를 생성합니다. "C :"= "\\. \ PhysicalDrive0"과 같은 형식이지만 내 CD 드라이브 (예 : "D :"= "\\. \ CDROM0")는 동일하게 생성되지 않습니다. 왜 그런지 알고 싶습니까? – ahmd0