f8g

デバイスの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数字)」で表示されるようなので、名前が分かってれば何番を使ってるかも分かる。
でも、もっと楽に出来ないかな。