编写可在 Window 上运行的 Firefox、Chrome 和 IE 上移植的自定义协议处理程序

2024-03-08

我正在编写一个协议处理程序来启动 java 应用程序,调用 java -jar myApp '%1' 等命令。目前我已经为 Chrome 实现了它,它看起来工作正常。不幸的是,我对 Firefox 和 IE 没有相同的行为(奇怪呃?!X-D)

这是我的实现。

该协议被命名为 dgh。 在第一次安装期间,我的应用程序在 Windows 注册表中设置了以下键

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\dgh]
@="URL:DgHome  Protocol"
"URL Procol"=""

[HKEY_CLASSES_ROOT\dgh\DefaultIcon]
@="C:/DGHOME/IPlusConf.exe,1"

[HKEY_CLASSES_ROOT\dgh\shell]

[HKEY_CLASSES_ROOT\dgh\shell\open]

[HKEY_CLASSES_ROOT\dgh\shell\open\command]
@="java -jar C:/DGHOME/Pch/lib/pch.teleconsulto.jar \"%1\""

在 chrome 上这已经足够了。 在 Firefox 上,我必须添加一些配置关于:配置.按照 Firefox 上的 MDN,我设置了以下内容

network.protocol-handler.expose.dgh;true
network.protocol-handler.external.dgh;true
network.protocol-handler.warn-external.dgh;false

这样,Firefox 至少会询问我是否要启动一个应用程序,并要求我选择一个:我不希望这样,我会调用我设置的命令并在第一次用户时建议:

在 IE 上没有任何反应,它说无法打开我的链接引用的网页。

这是我用作测试的一组链接

<a href="dgh://call/open?id='kit1.teleconsulto'">Open call to kit1.teleconsulto</a>
<a href="dgh://teleconsult/start?id='kit1.teleconsulto'">
   Open teleconsult to kit1.teleconsulto</a>
<a href="dgh://call/close">Close call</a>
<a href="dgh://call/end">Close client</a>
<a href="dgh://stethoscope/start">On Phonendo</a>

这里有一些参考:安装和注册协议处理程序 http://msdn.microsoft.com/en-us/library/windows/desktop/bb266527%28v=vs.85%29.aspx http://msdn.microsoft.com/en-us/library/aa767916%28VS.85%29.aspx http://msdn.microsoft.com/en-us/library/aa767916%28VS.85%29.aspx

我真诚地希望有人能帮助我


您遇到的问题是您直接在协议处理程序中调用 jar 。您需要使用 -jar 参数调用 java.exe

您的注册表项应该如下所示

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\digitalmgi]
@="URL:digitalmgi protocol"
"URL Protocol"=""

[HKEY_CLASSES_ROOT\digitalmgi\DefaultIcon]
@="C:\\myCoolIcon.ico"

[HKEY_CLASSES_ROOT\digitalmgi\Shell]

[HKEY_CLASSES_ROOT\digitalmgi\Shell\Open]

[HKEY_CLASSES_ROOT\digitalmgi\Shell\Open\Command]
@="\"C:\\Program Files\\Java\\jre7\\bin\\java.exe\" -jar \"C:\\MyPath\\myJar.jar\" \"%1\""
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

编写可在 Window 上运行的 Firefox、Chrome 和 IE 上移植的自定义协议处理程序 的相关文章

  • Android Canvas.DrawBitmap 没有模糊/抗锯齿?

    我正在尝试使用精灵 或非常像素化的角色 背景等 制作一个Android游戏 我把它们画在画布上 就像这样 matrix preScale xrat yrat canvas drawBitmap img matrix null 其中 img
  • 当 SwingWorker 在后台工作时,对话框没有响应

    基本上我得到了一个以 main 方法作为入口点的 JFrame 在这个主要方法中 程序必须下载一些图像 为了通知用户程序将随时启动 我想显示一个简单的对话框 如果我将对话框设置为模式 我必须在启动程序后关闭它才能触发下载 如果我将其设置为非
  • 良好的客户端套接字池

    我需要管理从我的 Java 应用程序到外部服务器的长时间运行的 TCP 套接字连接 我正在寻找一个好的套接字池 这样我就可以重复使用套接字 有什么建议吗 你可以看看在上面建立一个套接字池公共池 http commons apache org
  • 我需要帮助理解 java 中 Timer 类的 ScheduleAtFixedRate 方法

    作为一个粉丝番茄工作法 http www pomodorotechnique com 我正在为自己制作一个倒计时器 以保证我完成作业 然而 这个特定的项目不是家庭作业 Stack 有很多关于使用计时器来控制用户输入之前的延迟等问题 但关于独
  • System.out 什么时候不会出现在 Java 控制台中?

    我明白任何要标准化的东西 System out 将出现在 Java 控制台窗口中 启用时 我在某个地方发现 在某些情况下可能无法尝试这样做 例如 在 Swing 应用程序中 是这样吗 基本上 什么情况或设置我不希望在控制台中看到标准输出 例
  • 如何在 Intellij IDEA 中为 Apache Tomcat 指定自定义 JRE 路径?

    问题是如何指定自定义JRE路径为Apache tomcat in Intellij IDEA 当从以下位置启动应用程序时IDEA 看来 只需配置它的路径 路径jvm dll in Apache Tomcat监视器没有帮助 还有其他想法或方法
  • TarsosDSP 音高分析傻瓜式教程

    我正在开发一个分析声音文件音调的程序 我遇到了一个非常好的 API 称为 TarsosDSP 它提供了各种音高分析 然而 我在设置它时遇到了很多麻烦 有人可以向我展示一些有关如何使用此 API 特别是 PitchProcessor 类 的快
  • 识别 Windows 版本

    我正在编写一个打印出详细 Windows 版本信息的函数 输出可能是这样的元组 32bit XP Professional SP3 English 它将支持 Windows XP 及更高版本 我一直坚持获取 Windows 版本 例如 专业
  • 将泛型与 Firebase snapshot.getValue() 结合使用的最佳实践

    TL DR 如何正确使用 Firebase DataSnapshot getValue 的泛型类 用例 我想使用 Firebase 为我的所有实体 其中一堆 实现一个通用远程数据源类 当监听数据更改时 我想从 datasnapshot 获取
  • 将两个表视图绑定在一起,以便它们同步滚动

    我想将两个表视图绑定在一起 以便它们同步滚动 我怎么做 我无法找到如何访问表格视图的滚动条 我做了一个CSS hack来将Tableview与外部滚动条绑定 一个滚动条控制两个表格视图 我的想法的概述 创建两个表视图 制作一个垂直滚动条 在
  • 为什么WAV格式在不同的浏览器中没有相同的mimetype?

    文件输入在 Chrome 或 Firefox 中为同一文件提供不同的 Mimetype 我有一个我想上传的 wav 文件 chrome 说是audio wav和火狐检测audio x wav 我知道这两个 mimetype 非常相似 x 代
  • 将 uiautomator 测试用例与 Android 中的应用程序代码集成

    我正在使用 Eclipse IDE 这是我的 uiautomator 测试用例代码 public class caltest extends UiAutomatorTestCase public void testDemo throws U
  • Struts 2 - 使用 CKEditor 拦截上传的图像文件

    我有一个CKEditor在网站的不同页面上 所以我将上传内容设置为true以及让它工作的所有配置内容 并且图像上传工作得很好 Send it to the Server 标签 但从这里我想拦截或互动upload函数能够将图像上传到文件夹中
  • 更新写入 java 文本文件的对象

    将 Java 对象或列表写入文本文件是可以的 但我想知道如何更新或重写以前写入的对象而不再次写入对象 例如 假设有一个 java util List 有一组对象 然后将该列表写入文本文件 然后稍后该文件将被再次读取并从列表中获取所有对象 然
  • 使用 Composer 安装 PHPUNIT

    我有一个关于 Symfony 2 的项目 我想在 Windows 7 上使用 PHPUNIT On githut phpunit is Composer Simply add a dependency on phpunit phpunit
  • JPA 的 commit() 方法是否使实体分离?

    我现在一直在搜索JPA实体生命周期 但现在 关于实体生命周期存在一些缺失的点 我在 stackoverflow 的一篇帖子中找到了下图 请记住该图已被投票 根据此图 当我们持久化实体时 它就变成了托管实体 好的 没问题 当我们提交时 数据会
  • @Where 子句在 hibernate join 查询中不起作用

    我有 2 个带有 Where 注释的实体 第一个是类别 Where clause DELETED 0 public class Category extends AbstractEntity 且有如下关系 OneToMany fetch F
  • java:如何仅选择jtable中的一个单元格而不是整行

    在 jTable 中 我希望当用户单击单元格时 这句话会打印在屏幕上 I am cell in row X and column Y 其中 x 和 Y 是单击单元格的行和列 但我得到的是 例如 当我单击第 1 行和第 4 列中的单元格时 我
  • Java HashMap 与 ArrayList 相比的内存开销

    我想知道java HashMap与ArrayList相比的内存开销是多少 Update 我想提高搜索一大包 600 万以上 相同对象的特定值的速度 因此 我正在考虑使用一个或多个HashMap来代替ArrayList 但我想知道 HashM
  • 在文件中查找一行并将其删除

    我正在寻找一个小代码片段 它将在文件中找到一行并删除该行 不是内容而是行 但找不到 例如 我在以下文件中 我的文件 txt aaa bbb ccc ddd 需要有这样的功能 public void removeLine String lin

随机推荐

  • 在 swift 中发布 json 请求

    我知道如何发布简单的 json Compose a query string let postString firstName James lastName Bond request HTTPBody postString dataUsin
  • Java上将数据库中的数据以表单的形式输出给用户

    我最近开始学习Java 我需要用 Java 编写一个 Web 应用程序 用户可以从下拉列表中的主页 html 页面上的表单中选择他所需的产品 产品列表存储在数据库的表中 使用 MySQL 然后将所选产品写入 订单历史记录 表中 如何将数据库
  • 如何修复谷歌播放服务错误

    今天更新根文件夹中的播放服务后 我面临以下问题 我很困惑如何解决这个问题 谁能帮我解决这个问题吗 这个错误非常令人恼火 我不知道冲突在哪里 顺便说一句 为什么它显示冲突 而没有版本相互关联 Error 库 com google androi
  • PHP:如何获取过去特定日期的上周日?

    我正在从数据库中检索一个条目及其关联的日期 我希望能够获取相对于该特定日期的上周日和下周六来填充 jQuery 日期选择器 我知道如何使用实际时间 日期来做到这一点 strtotime last Sunday 但我不知道除了现在以外的约会该
  • SQL Server 中的 INNER JOIN 与 LEFT JOIN 性能

    我创建了在 9 个表上使用 INNER JOIN 的 SQL 命令 无论如何这个命令需要很长时间 超过五分钟 因此 我的家人建议我将 INNER JOIN 更改为 LEFT JOIN 因为 LEFT JOIN 的性能更好 尽管我知道 改了之
  • PHP fopen 会遵循 301 重定向吗?

    我们有一段遗留代码 ab 使用fopen 通过 HTTP 调用资源 fopen http example com 我们想要将 example com 移动到另一个主机 然后发送 301 Permanently Moved 但是 我们不完全确
  • 获取 SQL 表列的总和,直到总和达到 5000

    我正在对一个包含两列的表进行 sql 查询Amount and Date应该返回总和Amount列值直到达到5000它也应该返回值Date列在Sum Amount 达到5000排序Date 例如我的数据中有以下数据SQL TABLE ID
  • 使用带有标记的谷歌街景视图,如何将 POV 指向标记?

    我有一个简单的街景视图 可以向我显示给定地址的街景视图 var geocoder new google maps Geocoder var address 344 Laguna Dr Milpitas CA 95035 geocoder g
  • 由于未安装 EntityFrameworkCore.Tools,添加迁移失败

    我想按照本教程使用 EF Core 创建一个控制台应用程序 http ef readthedocs io en latest platforms full dotnet new db html http ef readthedocs io
  • Golang并发访问固定大小的map/array

    我正在探索使用固定键并发访问地图而无需锁定的可能性 以提高性能 我之前已经探索过与 slice 类似的功能 并且似乎它有效 func TestConcurrentSlice t testing T fixed int 1 2 3 wg sy
  • Unity:从设备摄像头录制视频

    我想要一个插件或一个库或一种从设备摄像头统一 Windows 独立 录制视频 当然有声音 的方法 目前 我可以使用该相机进行屏幕截图 有人说我可以截取很多张屏幕截图并将其转换为一个视频文件 我在资源商店找到了一个名为相机拍摄 https a
  • 继承的构造函数,在 clang++3.9 中编译,在 g++ 7 中失败

    这段代码片段 struct Base struct Derived Base using Base Base int main Base b Derived d b 在 clang 3 9 上编译良好 https godbolt org g
  • 是否可以在 Python 中生成正确的 PKCS12 (.pfx) 文件?

    我需要在 python 中生成一个 PKCS12 文件 其中包含自签名证书和私钥 我为此任务组装了以下 python 代码 import OpenSSL key OpenSSL crypto PKey key generate key Op
  • 如何存储我正在开发的 Alexa 技能的数据?

    我目前正在开发一项基于医疗保健的 Alexa 技能 所以我需要存储有关疾病 诊断和症状的信息 我已经掌握了一项基本技能 包括在一个文件中包含有关一种疾病的信息 制作了一个 zip 文件 将其上传到 AWS Lambda 并获得了 Amazo
  • PyInstaller 和 Enthought 套件

    我想知道是否有人成功使用 pyinstaller 和考虑导入的脚本创建独立的可执行文件 我已经尝试这样做几天了 但是我不断收到导入错误 通过一些挖掘 我相信我可能需要添加一些隐藏的导入并创建我自己的钩子 然而 我还没有听说有人在这方面取得了
  • 人行横道项目错误“构建 ABI 'armeabi-v7a' 失败”

    我使用 ubuntu 16 04 和 crosswalk project 以及 Phonegap Cordova 来制作我的混合应用程序 我正在编译示例 https crosswalk project org documentation a
  • 在 Scala 中制作一个非常基本的二叉树

    我正在尝试在 Scala 中制作一个非常简单的二叉树 用于数据存储和遍历 现在我有 trait Tree case class Node left Tree value String right Tree extends Tree 我的问题
  • Angular 2 过滤器/搜索列表

    我正在寻找 Angular 2 的方法this http www w3schools com howto howto js filter lists asp 我只有一个项目列表 我想进行一个输入 其工作是过滤该列表
  • 如何在android中用不透明度填充矩形

    我可以用画布绘制矩形填充矩形 Rect rt new Rect 0 0 getWidth getHeight myPaint setColor myColor myPaint setStyle Style FILL canvas drawR
  • 编写可在 Window 上运行的 Firefox、Chrome 和 IE 上移植的自定义协议处理程序

    我正在编写一个协议处理程序来启动 java 应用程序 调用 java jar myApp 1 等命令 目前我已经为 Chrome 实现了它 它看起来工作正常 不幸的是 我对 Firefox 和 IE 没有相同的行为 奇怪呃 X D 这是我的