2014-01-27 41 views
2

当涉及到与本地计算机上的硬件进行通信时,我正在寻找可持续的解决方案。我一直在阅读关于NPAPI的信息,但不幸的是它正在逐步淘汰。运行本地dll文件,选择打印机等...替代NPAPI

我想从网站上运行无声打印等。系统应该能够决定是否打印到收据打印机或A4打印机。目前我需要设置一台默认打印机,但是我会让系统确定应使用哪台打印机。

我也想运行一个在用户机器上本地存在的dll文件。

我的问题还有其他解决方案吗?

亲切的问候/ H

回答

2

对于硬件的支持,看看chrome.usb, chrome.bluetooth, chrome.sockets, and chrome.serial。这些API可供Chrome Apps使用。

“运行DLL”并不合理,除非您的意思是DllRegisterServer或其他将DLL加载到其进程空间的可执行文件。无论哪种方式,Native Messaging is your friend。但请注意,您将需要对目标机器进行管理访问;这是让Chrome运行任意本机可执行文件的唯一方法。

至于具体的库功能,你有没有尝试过简单地构建DLL作为NaCl模块?有一个huge number of common libraries,它们在NaCl下成功运行,移植工作量最小,这对于您的DLL执行相同操作(假设您有源代码)很有好处。

我不知道你是什么意思的“可持续”,所以我不想回答你的问题的那部分。

+0

谢谢你的回答。通过可持续发展,我的意思是不像NPAPI那样逐步淘汰的解决方案。 – hgerdin

+0

@Sowbug:您写道:“但请注意,您需要对目标计算机进行管理访问;这是让Chrome运行任意本机可执行文件的唯一方法。” 你能澄清一下吗?或者可能链接到一些关于它的文档?这是否意味着,除非在具有管理权限的计算机上运行,​​否则本地消息传递将无法工作? – FuzzyAmi

+0

@hgerdin你是如何解决这个问题的? NaCL或PPAPI是解决方案吗?我的要求是相似的。我需要根据数据库的配置选择打印机。此外,像你的要求,我需要能够从一个web应用程序,而不是从一个Chrome应用程序做到这一点。 –

相关问题