Я пытался создать последовательное приложение C# Windows Forms Bluetooth, а затем запустить его через Mono на моем Raspberry Pi 3. Я пробовал следующее:
String SelectedDevice = AvailableDevicesComboBox.SelectedItem.ToString();
BSerialPort = new SerialPort(SelectedDevice, 115200, Parity.None, 8, StopBits.One);
BSerialPort.Open();
Использование стандартной библиотеки System.IO.Ports.
Однако я не могу открыть порт, потому что получаю прекрасное исключение «Ссылка на объект не указывает на экземпляр объекта», что означает, что такого порта вообще нет. Я подключил устройство Bluetooth к RPi, используя один из слотов RFCOMM, а затем использовал его как последовательный (и успешно передал некоторые строки через «кошку» в терминале), но результат в моем приложении тот же, на самом деле это не так. не отображается в ComboBox. Поэтому я решил использовать библиотеку "32Feet-InTheHand" для Bluez и Mono вместе. Теперь, когда я запускаю свой .exe-файл в Mono, я получаю это в терминале:
Unhandled Exception: System.TypeLoadException:
Could not load type of field 'NameOfApp.Form1:BClient' (1) due to:
Could not load file or assembly 'InTheHand.Net.Personal,
Version=3.5.605.0, Culture=neutral, PublicKeyToken=ea38caa273134499'
or one of its dependencies. assembly:InTheHand.Net.Personal, Version=3.5.605.0,
Culture=neutral, PublicKeyToken=ea38caa273134499 type:<unknown type> member:<none>
[ERROR] FATAL UNHANDLED EXCEPTION: System.TypeLoadException:
Could not load type of field 'NameOfApp.Form1:BClient' (1) due to: Could not load file
or assembly 'InTheHand.Net.Personal, Version=3.5.605.0, Culture=neutral,
PublicKeyToken=ea38caa273134499' or one of its dependencies. assembly:InTheHand.Net.Personal,
Version=3.5.605.0, Culture=neutral, PublicKeyToken=ea38caa273134499
type:<unknown type> member:<none>
Я добавил ссылку и пометил ее как требуется на вкладке «Файлы приложения». Но я в этом совсем не силен...
Версия для Linux: Raspbian 9 — Linux raspberrypi 4.9.59-v7+ #1047
Сообщество Visual Studio 2017 версии 15.5.3
Mono: компилятор Mono JIT версии 5.4.1.6
32 фута.NET: 3.5.605