Проблема с C # и библиотекой 32feet.NET Bluetooth - PullRequest
1 голос
/ 04 июня 2011

Я только начал программировать Bluetooth. Мне нужно придумать настольное приложение на C #, которое получает изображения из приложения J2ME.

Перед началом ... Я только что попробовал некоторые фрагменты кода из руководства пользователя 32feet ... Руководство находится в VB.NET.

VB.NET работает нормально ... но мой C # работает неправильно.

Вот фрагмент VB.NET

Public Shared Sub find()
    Dim btClient As New InTheHand.Net.Sockets.BluetoothClient
    Dim bdi As BluetoothDeviceInfo() = btClient.DiscoverDevices()
    Dim device As BluetoothDeviceInfo = bdi(0)
    Dim addr As BluetoothAddress = device.DeviceAddress
    Dim name As String = device.DeviceName
    Console.WriteLine(name)
End Sub

А вот и преобразование C #

public static void Main()
    {
        BluetoothClient cli = new BluetoothClient();
        BluetoothDeviceInfo[] peers = cli.DiscoverDevices();
        BluetoothDeviceInfo device = peers[0];
        String name = device.DeviceName;
        Console.WriteLine(name);
        Console.Read();
    }

C # дает мне исключение ArrayIndexoutofBOund ... означающее, что никакие устройства не обнаружены.

Есть предложения? Спасибо за помощь.

Ответы [ 2 ]

2 голосов
/ 05 июня 2011

Я предполагаю, что две программы как-то используют разные версии библиотеки.А компилятор C # использует более старую версию библиотеки и копирует в выходную папку.Проверьте, какие версии сборки библиотеки находятся в той же папке, что и каждый файл .exe.

Вероятно также, что на вашем компьютере используется Widcomm или BlueSoleil, а не стек Microsoft Bluetooth.Если его Widcomm, убедитесь, что там находится файл 32feetWidcomm.dll.

0 голосов
/ 04 июня 2011

Ваш код C # мне подходит.

Вы уверены, что к вашему компьютеру подключены устройства Bluetooth, когда вы запускали код C #?Я понимаю, что это может прозвучать упрощенно, но может случиться так, что при запуске кода C # возникла проблема с подключением или устройством bluetooth?

Кроме того, если код C # вызываетточно такой же код, что и версия VB.NET, я, честно говоря, не понимаю, почему должна быть разница.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...