问题描述
我正在尝试将 BLE 的 UWP example 功能分离到单独的库中进行测试。
我成功地将它设置为一个独立的测试库(使用 netcore 3.0)
但是,在迁移到我的 GUI 应用程序(现在使用 netcore 5.0)时,无法再引用 WinRT,因此我不得不删除对 Windows 合同的引用。
现在我正在运行并且能够找到我的 BLE 设备正常(甚至是正确的读/写特性),但是现在当我写入设备特性时,我遇到了 NullReferenceException 的严重崩溃。
除了 Gatt Characteristic 中隐藏了 Interop COM 异常的 Device ID 之外,所涉及对象中的所有变量似乎都不为 null,但是,我在 3.0 中的“控制台应用程序”也是如此,它没有这个问题并且工作正常(即使存在相同的条件)
我怎样才能更深入地调试这个?这是安全问题吗?
我的目标是 net5.0-windows10.0.19041
System.NullReferenceException
HResult=0x80004003
Message=Object reference not set to an instance of an object.
Source=System.Private.CoreLib
StackTrace:
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
at Library.BleLib.BleComms.<WriteBufferToSelectedCharacteristicAsync>d__21.MoveNext() in C:\Testing\Net\trunk\Externals\BleLib\BleComms.cs:line 200
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)