Bluetoothで接続されたシリアルポートのデバイス名を取得したい


ユーザーにCOMポートで接続されたデバイスを選択してもらう際、COM15のような表記ではなく、  
デバイス名を表示させたい。 下記のコードでシリアルポートに接続されたデバイスの名前をWMIによって取得できますが、
Bluetoothで接続されたデバイスの場合、  
「Bluetooth リンク経由の標準シリアル (COMxx)」となり、デバイス名が取得できません。  
Bluetoothで接続されたデバイスの名前を取得することは、方法などありましたら、教えて下さい。

[code]

    // using System.Management;
    using (var device = new ManagementClass( "Win32_SerialPort" )) {
        foreach( ManagementObject port in device.GetInstances() ) {
            var name = port.GetPropertyValue( "Name" ) as string;
            Console.WriteLine( name );
        }
    }
    
[/code]

開発環境: Windows 7 、C# 6.0 .NET 4.5.1




[32feet.NET](https://github.com/inthehand/32feet)を使うと簡単に取得できそうです。

nugetから32feet.NETで検索して`32feet.NET Personal Area Networking for
.NET`の方をインストールします。

ボタンとリストボックスだけ配置したWindows Form
アプリケーションで以下の様なコードで取得できるようです…が、そういえば私のマシンはbluetoothオフにしてるので何も取れませんでした（エラーにはなりませんでした）。  
(なのでポートとどう紐づけるのかはわかりませんでした。DeviceAddressは取れるみたいですが）

[code]

    private void button1_Click(object sender, EventArgs e) {
    
        BluetoothClient client = new BluetoothClient();
        var devices = client.DiscoverDevicesInRange();
        foreach (BluetoothDeviceInfo d in devices) {
            listBox1.Items.Add(d.DeviceName);
        }
    }
    
[/code]

LicenceはGitHubの方にも書いてありますが、MIT Licenseです。

本家での [この質問(セルフ回答ですが)](https://stackoverflow.com/questions/25908734/get-name-
of-bluetooth-device-on-the-devices-and-printers-window) のほか、[イスラエルのMicrosoft
blog](https://web.archive.org/web/20200111222959/http://blogs.microsoft.co.il:80/shair/2009/06/21/working-
with-bluetooth-devices-using-c-part-1/)でも紹介されていました。

