デバイスのCOMポートを調べる
WMIで調べられるらしい。
var objWMIService = GetObject("winmgmts:\\\\.\\root\\CIMV2"); var colItems = objWMIService.ExecQuery("SELECT Name FROM Win32_PnPEntity WHERE Name like '%(COM%)'"); var enumItems = new Enumerator(colItems); for (; !enumItems.atEnd(); enumItems.moveNext()) { WScript.Echo(enumItems.item().Name); } // "Nantoka COM port (COM2)" みたいのが出てくる
Win32_PnPEntityはデバイスマネージャに表示されたデバイスに関する情報を返すクラスだって。
http://www.microsoft.com/japan/technet/scriptcenter/resources/qanda/sept04/hey0928.mspx
COMポートを使ってるデバイスは「名前 (COM数字)」で表示されるようなので、名前が分かってれば何番を使ってるかも分かる。
でも、もっと楽に出来ないかな。