【问题标题】:Motorola Handheld MC55A Development [closed]摩托罗拉手持式 MC55A 开发 [关闭]
【发布时间】:2014-06-26 12:58:09
【问题描述】:

我有带有 windows 嵌入式手持 6.5 的摩托罗拉手持 MC55A,我想开始开发一个应用程序来读取条形码。我没有找到任何参考来执行我的命令 我已经安装了 VS2008 并开始使用简单的表单创建智能设备应用程序

【问题讨论】:

    标签: windows-ce motorola windows-embedded


    【解决方案1】:

    值得称赞的优点:最初我没有编写以下代码,我不确定最初是谁做的,可能是符号开发人员编写的...我不确定,我只是使用过它。

    1- 首先下载并安装 Motorola EMDK,然后复制 C:\Program Files (x86)\Motorola EMDK for .NET\v2.5\SDK\Smart Devices\Symbol.Barcode。 dll文件到你口袋里的\My Device\Windows文件夹中。

    Public Class frmTest
    Dim MyReader As Symbol.Barcode.Reader = Nothing
    Dim MyReaderData As Symbol.Barcode.ReaderData = Nothing
    Dim MyEventHandler As System.EventHandler = Nothing
    Dim MyHandlerCB As System.EventHandler = Nothing
    
    Private Sub frmTest_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
        InitReader()
    End Sub
    
    Protected Overloads Overrides Sub OnClosing(ByVal e As System.ComponentModel.CancelEventArgs)
        StopRead()
        Me.TermReader()
        MyBase.OnClosing(e)
    End Sub
    
    Private Function InitReader() As Boolean
        ' If reader is already present then fail initialize
        If Not (Me.MyReader Is Nothing) Then
            Return False
        End If
        'Create new reader, first available reader will be used.
        Me.MyReader = New Symbol.Barcode.Reader
        'Create reader data
        Me.MyReaderData = New Symbol.Barcode.ReaderData( _
                                     Symbol.Barcode.ReaderDataTypes.Text, _
                                     Symbol.Barcode.ReaderDataLengths.DefaultText)
        ' create event handler delegate
        Me.MyEventHandler = New System.EventHandler(AddressOf MyReader_ReadNotify)
        'Enable reader, with wait cursor
        Me.MyReader.Actions.Enable()
        Return True
    End Function
    
    Private Sub TermReader()
        'If we have a reader
        If Not (Me.MyReader Is Nothing) Then
            'Disable reader, with wait cursor
            Me.MyReader.Actions.Disable()
            'free it up
            Me.MyReader.Dispose()
            ' Indicate we no longer have one
            Me.MyReader = Nothing
        End If
        ' If we have a reader data
        If Not (Me.MyReaderData Is Nothing) Then
            'Free it up
            Me.MyReaderData.Dispose()
            'Indicate we no longer have one
            Me.MyReaderData = Nothing
        End If
    End Sub
    
    Private Sub StartRead()
        'If we have both a reader and a reader data
        If Not ((Me.MyReader Is Nothing) And (Me.MyReaderData Is Nothing)) Then
            'Submit a read
            AddHandler MyReader.ReadNotify, Me.MyEventHandler
            Me.MyReader.Actions.Read(Me.MyReaderData)
        End If
    End Sub
    
    Private Sub StopRead()
        'If we have a reader
        If Not (Me.MyReader Is Nothing) Then
            'Flush (Cancel all pending reads)
            RemoveHandler MyReader.ReadNotify, Me.MyEventHandler
            Me.MyReader.Actions.Flush()
        End If
    End Sub
    
    Private Sub MyReader_ReadNotify(ByVal o As Object, ByVal e As EventArgs)
        Dim TheReaderData As Symbol.Barcode.ReaderData = Me.MyReader.GetNextReaderData()
        'If it is a successful read (as opposed to a failed one)
        If (TheReaderData.Result = Symbol.Results.SUCCESS) Then
            'Handle the data from this read
            Me.HandleData(TheReaderData)
            'Start the next read
            Me.StartRead()
        End If
    End Sub
    
    Private Sub HandleData(ByVal TheReaderData As Symbol.Barcode.ReaderData)
        txtBarCode.Text = TheReaderData.Text
    End Sub
    
    Private Sub txtBarCode_GotFocus(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtBarCode.GotFocus
        StartRead()
    End Sub
    
    Private Sub txtBarCode_LostFocus(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtBarCode.LostFocus
        StopRead()
    End Sub
    

    结束类

    【讨论】:

      【解决方案2】:

      您想从您的应用扫描条形码并将其插入到文本框中? 尝试从控制面板启用 Data Wedge。

      【讨论】:

      • 感谢您的评论。我开始使用 Motorola EMDK v2.8 开发我的应用程序。
      猜你喜欢
      • 2012-09-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-08
      • 1970-01-01
      相关资源
      最近更新 更多