我开发了一个应用程序,可以通过我的网站点击按钮来调用.我正在使用NPAPI来完成这项任务.不过最近谷歌已经弃用了NPAPI,所以我使用自定义协议处理程序来调用我的应用程序"myapp://"
在Windows上我的应用程序和处理程序工作得很好.
现在我想在Linux中做同样的事情.我需要为CentOS优先7和Chrome网络浏览器这样做.
我做了一些研究,但网上的大多数帮助都是针对firefox的,但我特别需要它用于chrome.我的桌面是基于GNOME的,请帮助.
我使用旧的Mozilla NPRuntime示例作为基础编写了一个小的NPAPI插件.我的问题是它在Firefox和Safari(在Windows上)上工作正常,但它无法与谷歌浏览器一起使用.
我可以在插件中看到插件:插件就好了,当我打开测试页面时,我看到Chrome启动了运行插件的新进程,插件进程在大约10秒内死机,没有任何错误对话框.在10秒内,进程处于活动状态,访问脚本化插件对象不起作用(使用Firefox或Safari时工作正常).
任何可能导致Chrome在10秒后杀死插件进程的想法?必须是初始化相关的东西,因为即使我不以任何方式访问插件它也会杀死它.
试图通过我自己的扩展程序执行"Ctrl + Shift + i"来弄清楚如何自动触发Web开发人员工具.有一个stackoverflow问题,但没有一个答案有效.
google-chrome npapi google-chrome-extension google-chrome-devtools
我正在使用 FireBreath 框架制作浏览器插件。大多数逻辑都是用 C# 编写的,为了从浏览器调用它,我做了一个 C++ 包装器。浏览器调用 C++ 本机代码,该代码调用“代理”托管 C++ 代码,该代码调用 C# 项目中的实际逻辑。
所以我有3个dll:
所有 3 个 dll 都安装到用户目录 (c:\Users\\AppData\Roaming\MyCompany\MyApp\1.0.0.0)
问题是浏览器不加载 C# dll。我使用 Side by Side 清单来声明依赖项。
我试图制作一个单独的清单文件来声明一个程序集:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity name="MyAssembly" processorArchitecture="*" type="win32" version="1.0.0.0"/>
<file name="FirstDependency.dll"/>
<file name="SecondDependency.dll"/>
</assembly>
Run Code Online (Sandbox Code Playgroud)
并将此依赖项的链接添加到 head dll(本机 C++):
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<dependency>
<dependentAssembly>
<assemblyIdentity name="MyAssembly" processorArchitecture="*" type="win32" version="1.0.0.0"/>
</dependentAssembly>
</dependency>
</assembly>
Run Code Online (Sandbox Code Playgroud)
我也尝试直接在 …
我创建了一个NPAPI插件.它使用另外两个Dll.
我需要将这些Dll文件和Plugin dll一起打包为Extension.
我怎样才能做到这一点?这样我就可以将该dll放在任何文件夹中并注册它.
有没有办法做到这一点?
对不起,如果它是重复的.
提前致谢.
我最近开发了一个google chrome扩展程序,它使用了使用FireBreath框架制作的NPAPI插件.我刚刚发现谷歌将很快停止使用这些类型的插件,并最终禁止使用它们的所有现有扩展.所以,我想最终转向NaCl/PPAPI架构,但我不确定这个架构是否甚至可以支持我目前在NPAPI插件中所做的工作.
在我目前的NPAPI插件中,我支持OSX和Windows.在OSX版本上,插件执行system()函数,该函数执行一个小的1行AppleScript.它看起来像这样:
osascript -e 'tell app ...
Run Code Online (Sandbox Code Playgroud)
在Windows版本上,它执行COM库中的函数.两个版本最终都做了同样的事情.我有另一个选择是执行python脚本,如果我要走这条路线,我很可能想在本机组件中嵌入python.
用NaCl/PPAPI可以解决这些问题吗?
npapi google-chrome-extension google-nativeclient firebreath ppapi
是:" PPAPI(辣椒)视频插件-NaCl模块失败 - 如何解决? "
谷歌向我们的老朋友说再见NPAPI博客文章表明NPAPI插件支持将于2014年底停止(支持PPAPI).
我们曾考虑使用的选项的ffmpeg库,创建自己的视频插件,简单地解码在客户端上RTSP编码H.264视频流-重要的,因为我们需要为近实时视频显示(避免转码等待时间).使用ffmpeg库,解码流时仍有3-5秒的延迟,不如使用该选项运行MPlayer快-benchmark.
在尝试Google的PNaCl推荐时,我们刚刚获得了LOADING状态并出现以下错误:
NativeClient:NaCl模块加载失败:PnaclCoordinator:无法创建编译进程:ServiceRuntime:无法启动
我们不需要编码器,只需将输入流解码为图像就可以了 - 或者其他建议?
有哪些NPAPI替代方案可以解决这个问题?
我的要求是从 chrome 浏览器启动我安装的应用程序,如果它安装在客户端机器上,如果没有安装,那么我想开始下载。铬的最佳推荐解决方案是什么?
所以票价我试过
使用 NPAPI,但由于 chrome 弃用了 NPAPI,我无法使用。
检查了 PNacl 和 Pepper API,这两个 API 均不提供对本地文件系统的访问以启动应用程序。他们只是将我的 C/C++ 代码移植到浏览器中,并在具有沙箱限制的浏览器环境中运行它。
我唯一的选择是使用本地消息传递吗?或者是否有任何其他选项可以用于从我们的 url 启动我的应用程序的简单任务,
关于“本地消息”
注意:- 发现一些提供商使用“外部协议请求”来启动应用程序,但没有足够的资源,我在哪里可以找到更多相关信息
谢谢和问候,普拉文
google-chrome npapi google-chrome-extension google-nativeclient chrome-native-messaging
谷歌最近宣布他们打算在不久的将来从Chrome中删除客户端Java支持.我本质上是一名Java开发人员,它基于某种形式的Java构建了几乎所有基于Web的应用程序.
因此,我正在寻找Chrome停止Java支持的解决方法,而不必用另一种语言从头开始重写我的所有客户端Web应用程序.
此外,我正在寻找一种不需要Chrome内置NPAPI解决方法的解决方法,因为我需要基本用户能够继续按原样使用这些小程序.
我有一个用 asp classic 开发的应用程序。并大量使用 ActiveX 控件。马上它只支持 IE。但我们正在走向跨浏览平台。
众所周知,Microsoft Edge 即将推出,它最终将支持 ActiveX 以及其他浏览器(如 chrome),Firefox 最终将支持 NPAPI 和其他插件。
那么是否有任何替代方案可以让 ActiveX 控件访问或集成硬件以及用于跨浏览的任何插件?
帮助将不胜感激。谢谢。