假设我们有一个在浏览器中运行的应用程序(在我的例子中是 Dynamics Nav 的 Web 客户端)和一个安装在用户本地计算机上的硬件(在我的例子中是缓存寄存器)。
从浏览器访问本地硬件的方法是什么(即使不考虑导航)?各种技巧都是可以接受的。我只想知道我有什么选择。
假设我们有一个在浏览器中运行的应用程序(在我的例子中是 Dynamics Nav 的 Web 客户端)和一个安装在用户本地计算机上的硬件(在我的例子中是缓存寄存器)。
从浏览器访问本地硬件的方法是什么(即使不考虑导航)?各种技巧都是可以接受的。我只想知道我有什么选择。
您可以编写与硬件通信并在本地计算机上运行的应用程序或库。然后,您在浏览器中的应用程序会通过 Web 服务或进程间通信向该应用程序或库发送请求。
作为一个具体的例子:使用 C# 创建一个与您的硬件通信的库。另外创建一个托管 WCF 服务的应用程序。此 WCF 服务引用该库,因此它可以直接与硬件通信。
现在创建一个通过XMLHttpRequest向 WCF 服务发送请求的 JavaScript 控件加载项。最后在 Dynamics NAV 中创建一个新页面并将 JavaScript 控件加载项添加到其中。在此页面中,您可以调用加载项的功能,这些功能将向您正在运行的 WCF 服务发送请求,该服务将与硬件进行交互。