【问题标题】:How to connect a barcode scanner in batch mode to a web application using a web service?如何以批处理模式将条形码扫描仪连接到使用 Web 服务的 Web 应用程序?
【发布时间】:2014-04-25 14:34:50
【问题描述】:

我必须将我的 Web 应用程序 (RoR) 与以批处理模式运行的条码扫描器(摩托罗拉 DS3578 扫描器)连接。

我看到的方式是,每台 PC (Windows) 都与这样的扫描仪(带有底座)连接,运行一个小程序(.Net?),当扫描仪插入底座时,它会从扫描仪中抓取条形码,然后“使用我仍需开发的 Web 服务将这些条形码转储到我的 Web 应用程序中。

我有能力编写这个网络服务。不过,我还没有使用过直接与扫描仪交互的 .Net 程序,所以这就是我的问题的原因:我如何编写一个简单、简短的 .Net 程序,只在扫描仪和 Web 服务之间进行通信,最好没有任何用户界面. (在背景中透明)或者,是否存在这样的工具,准备好上架了吗?

【问题讨论】:

  • 嗨 Danny - 您应该在此处更改标签。为 Windows 桌面编写软件的人会更适合帮助您,但是由于标签的存在,很多 RoR / 网络人会关注这个问题(比如我 ;)) - 不太可能找到熟悉条形码扫描仪硬件 / 的人我们之间的端口接口。
  • 好话 Krzystof!
  • 与硬件外围设备交互大部分超出了我的范围,所以这可能无关紧要,但您是通过串口、键盘楔还是 USB 连接?
  • 如果您找不到现成的产品,以下信息可能有助于您开始使用:How to get the data from a USB port in VB.NET here at SOControlling a Barcode Reader with POS for .NET at CodeProject

标签: .net windows web-services web-applications barcode-scanner


【解决方案1】:

从文档来看,摩托罗拉扫描仪 SDK 似乎非常简单。该 API 可用于 C#、C++ 和 Java。一个好的 C# API 符合一些准则,使其可以在任何 .NET 语言中使用——不过我没有检查。使用 C#,使用 Web 服务也非常简单。当自己构建它是如此容易时,我不会费心寻找现成的解决方案。使用 SDK,可以监听来自扫描仪的事件,从而避免额外的手动交互。您可以将 .NET 程序作为 Windows 服务运行。可从 MSDN 获得示例。

【讨论】:

    【解决方案2】:

    我的第一个想法是编写一个在后台运行的简单应用程序,并在目录(或目录中的文件)发生更改时使用FileSystemWatcher class 启动进程(即:将数据发送到您的网络服务)。

    我认为此方法不能直接处理扫描仪上的文件(用户在将扫描仪连接到底座之前添加/修改这些文件,因此 FileSystemWatcher 无法“侦听”这些更改)但您可以创建一个简单的批处理将这些文件复制到用户 PC 上的本地文件夹中的文件。

    所以用户只需执行两个步骤:

    1. 将条码扫描器连接到底座
    2. 点击一个批处理文件

    然后 FileSystemWatcher 类和您的网络服务将完成这项工作。

    【讨论】:

      猜你喜欢
      • 2012-08-04
      • 2017-07-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-31
      • 2012-05-21
      • 1970-01-01
      相关资源
      最近更新 更多