Bluetooth APIs in Windows/.Net?


I am in the process of writing a Bluetooth scanner that locates and identifies mobile devices in the local vicinity. Is this something that I can accomplish using C#, or do I need to drop down into the C/C++ APIs? My application is targeting Windows XP and Vista. Pointers are appreciated.


9/28/2008 12:30:33 AM

Accepted Answer

One problem with Bluetooth on the PC is that there are several BT stacks in use and you can never quite know which one is available on a given machine. The most common ones are Widcomm (now Broadcom) and Microsoft (appeared in XP, maybe one of the service packs). However, some BT hardware vendors package BlueSoleil and some use Toshiba. Most dongles will work with the MS stack so the .NET libs I've seen tend to use that.

Each of the stacks has a totally different way of doing the discovery part where you browse for nearby devices and inquire their services.

If I had to pick one approach today I'd probably do the discovery in C++ and add an interface for .NET.

The stuff worked pretty well when I tried it but didn't support the Widcomm stack.

9/28/2008 2:08:48 AM

There is also Peter Foot's

I've played around with this back when it was v1.5 and it worked well.

Licensed under: CC-BY-SA with attribution
Not affiliated with: Stack Overflow