我怎样才能使用System .__ ComObject?

时间:2018-02-27 16:15:42

标签: c# xamarin.forms uwp xamarin.uwp

我正在使用Xamarin.Forms为HoneyWell扫描仪设备构建扫描仪应用程序。 第一个版本只是Windows。

在共享项目中,我创建了IScannerService接口,该接口将用于依赖注入。该界面包含一个OnScan事件。

在我的UWP项目中,我在ScannerService类中实现了这个接口。

它使用PointOfService.BarcodeScanner来使用设备连接的扫描仪。 (以下:https://msdn.microsoft.com/en-us/library/dn792060(v=winembedded.81).aspx) 这一切都很好,除了:

在我的事件处理方法中:

private void ClaimedScanner_DataReceived(ClaimedBarcodeScanner sender, BarcodeScannerDataReceivedEventArgs args)
{
    var dataReader = Windows.Storage.Streams.DataReader.FromBuffer(args.Report.ScanData);
    var output = dataReader.ReadString(args.Report.ScanData.Length);
    OnScan?.Invoke(sender, output);
}

args.Report.ScanData会返回System.__ComObject而不是预期的IBuffer

我试图找出这个System.__ComObject究竟是什么,但我并没有真正理解。但最重要的是,我不明白为什么我得到它而不是我期望的类型。

如何使用此对象,以便我的output成为有效的字符串?

0 个答案:

没有答案