WMI を使い、有効なシリアルポートの一覧を名前付きで取得する方法です。 WMI を使える言語であれば、言語に依存せず同様の方法で一覧を取得できます。 Ruby によるサンプルコード get_enable_serialports.rb require 'win32ole' 有効なシリアルポートの一覧をハッシュで返す。 (ポート名が key、接続機器の名前が value) def serialports locator = WIN32OLE.new("WbemScripting.SWbemLocator") services = locator.ConnectServer() comlist = {} # 内蔵シリアルポート一覧を取得 services.ExecQuery("SELECT * FROM Win32_SerialPort").each do |item| comlist[ite