' シリアルポートを列挙 ' 参考:http://www.microsoft.com/japan/technet/scriptcenter/resources/qanda/sept04/hey0928.mspx strComputer = "." Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") Set colItems = objWMIService.ExecQuery(_ "Select * from Win32_PnPEntity Where " & _ "(ClassGuid = '{4D36E978-E325-11CE-BFC1-08002BE10318}') and " & _ "(Name like '%(COM%)')") n = colItems.Count ReDim desc(n) ReDim key(n) ReDim com(n) i = 0 For Each objItem in colItems name = objItem.Name i1 = InstrRev(name, "(") i2 = InStrRev(name, ")") desc(i) = Left(name, i1-1) c = Mid(name, i1+1, i2 - i1 - 1) k = Mid(c,3,3) while len(k) < 3 k = "0" & k wend key(i) = k While len(c) < 5 c = c & " " WEnd com(i) = c i = i + 1 Next for i=n-2 to 0 step -1 for j=0 to i if key(j) > key(j+1) then t = key(j+1) key(j+1) = key(j) key(j) = t t = com(j+1) com(j+1) = com(j) com(j) = t t = desc(j+1) desc(j+1) = desc(j) desc(j) = t end if next next str = "" for i=0 to n-1 str = str & com(i) & " : " & desc(i) & vbCRLF next WScript.Echo str