众所周知,谷歌宣布将于2015年9月从Chrome中删除NPAPI:
http://www.chromium.org/developers/npapi-deprecation
我有一个使用NPAPI开发的插件,允许用户使用WIA和TWAIN进行扫描。我也在那里使用WinApi do" draw"浏览器内的控件。简短的研究表明,像Native Client / Pepper等替代品不允许直接访问WinApi。
据我所知,唯一的选择是创建单独的应用程序(例如Windows服务)来调用WinApi抛出它,并使用WebSockets进行浏览器和服务之间的通信。我也应该用HTML5画布绘图替换HWND。
请告诉我,这种情况还有其他解决办法吗?
答案 0 :(得分:2)
你是正确的,没有办法从PPAPI插件访问WinAPi,并且你需要一个单独的应用程序来做到这一点。从Chrome扩展程序与本机应用程序通信的最简单方法是Native Messaging:
https://developer.chrome.com/extensions/nativeMessaging
如果您希望在页面上绘图,则必须使用HTML。或者,您可以从PPAPI插件中创建自己的绘图,但是您必须从NaClPorts链接图形库,例如Cairo:
https://code.google.com/p/naclports/wiki/PortList
可以这样做(这是PDF插件在Chrome中的工作方式),但它还有很多工作要做。