通过Web启动本地应用程序

通过自定义协议在Web中启动本地应用程序

实例是打开本地安装的Word程序

注册自己的协议
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\word]  
@="word"  
"URL Protocol"="C:\\ProgramFiles (x86)\\Microsoft Office\\Office14\\WINWORD.EXE"   
[HKEY_CLASSES_ROOT\word\DefaultIcon]
@="C:\\Program Files (x86)\\MicrosoftOffice\\Office14\\WINWORD.EXE,1"
[HKEY_CLASSES_ROOT\word\shell]
@="open"
[HKEY_CLASSES_ROOT\word\shell\open]
@="open"
[HKEY_CLASSES_ROOT\word\shell\open\command]
@="\"C:\\Program Files(x86)\\Microsoft Office\\Office14\\WINWORD.EXE\" \"%1\""

第一行,注册表工具的版本信息

第二行, HKEY_CLASSWES_ROOT\添加word树,树的名称对应自定义的URLProtocol的名称,web调用中需要用到这个名称

第三行,协议的名称,任意字符,后面不会用到

第四行,可应用程序的路径,只能是exe的程序

第五行,word添加一个分支,照抄

第六行,应用程序的路径,1照抄

第七行,word添加一个分支,照抄

第八行,照抄

第九行,word添加一个分支

第十行,照抄

第十一行,word添加一个分支,照抄

第十二行,应用程序路径,%1表示参数

注:

1)          路径使用双杠“\\”
2)          如果字符串中有双引号(”),那么需要加转义字符“\”
3)          将文件名称改为form.reg,双击文件执行,将这些项写入到注册表
检验是否注册成功

1)开始-运行 输入form://test/,可以运行该程序则表示注册成功了,test是传入的参数,直接输入form:也是可以运行的;

2)在浏览器的地址栏直接输入:word://test,可以运行则表示注册成功。

在web中启动word程序
<!DOCTYPE HTML PUBLIC "-//W3C//DTDXHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
< html xmlns="http://www.w3.org/1999/xhtml">
   <head>
       <metahttp-equiv="Content-Type" content="text/html;charset=utf-8" />
   </head>
     <body>
         <div>
             <a href="word:/id:">打开本地Word</a><br>
         </div>
     </body>
< /html>

时间: 2024-10-12 19:42:58

通过Web启动本地应用程序的相关文章

(转)通过自定义URL协议在Web中启动本地应用程序

通过自定义URL协议在Web中启动本地应用程序 1.注册应用程序来处理自定义协议 你必须添加一个新的key以及相关的value到HKEY_CLASSES_ROOT中,来使应用程序可以处理特殊的URL协议. 新注册的key必须与协议scheme相匹配才可以被添加.例如,增加一个“alert:”协议,被增加到HKEY_CLASSES_ROOT的key必须是alert.在这个新的key之下,默认的字符串value将显示新协议的名字,并且URL协议字符串value将包含协议特有的信息或者空字符串.Key

chrome浏览器插件启动本地应用程序

chrome浏览器插件启动本地应用程序 2014-04-20 00:04:30|  分类: 浏览器插件|举报|字号 订阅 下载LOFTER我的照片书  | chrome的插件开发这里就不多讲了,本篇文章只讲如何调用谷歌浏览器的api启动本地的程序并与之通信 要启动本地的应用插件需要包括两部分的内容: 1)安装到浏览器的插件部分 2)放置在本地的json文件 第一部分就跟普通的谷歌浏览器插件是一样的,包括两个必须的文件: 1)background.js(名字不一定为background......

Asp.Net 之 通过调用 WScript.Shell 启动本地 exe 程序时产生“ automation服务器不能创建对象 ”的错误

我们经常需要通过生成 ActiveXObject("WScript.Shell"); 来调用某一exe文件. 设置网页打印的页眉页脚为空: var HKEY_Root,HKEY_Path,HKEY_Key; HKEY_Root="HKEY_CURRENT_USER"; HKEY_Path="//software//Microsoft//Internet Explorer\\PageSetup\\"; function PageSetup_Null

实现chrome扩展启动本地进程 - 补充

实现chrome扩展启动本地进程 - 补充 标签: chrome扩展启动本地程序访问本地磁盘 2014-10-17 11:42 6753人阅读 评论(17) 收藏 举报  分类: Chrome Plugin 版权声明:本文为博主原创文章,未经博主允许不得转载. 示例 主要包含如下部分 com.google.chrome.demo-win.json native_cmd.bat manifest.json popup.html popup.js 功能简介: 实现一个扩展,用户点击一个按钮后会启动本

从web启动winform程序

最近有个客户提出想从网站上启动一个客户端的程序,研究了下,实现方法如下: 1. 注入注册表 try { string appPath = "\"" + Application.ExecutablePath + "\" \"%1\""; string strKey = Application.ProductName; string strKey_shell_open_cmd = strKey + @"\shell\op

Chrome 小工具: 启动本地应用 (Native messaging)

最近遇到一个新的问题.需要使用Chrome 插件, 从我们对我们当地的一个网站之一启动C#应用,同时通过本申请值执行不同的操作. 在这里记录下解决的过程.以便以后查找 首先我们须要新建一个google的插件 这个插件包括了三个文件 manifest.json(名字不可改, 建插件必须文件),background.js(文件名称可改, 后台文件),content.js(content script文件 负责与站点页面交互) 首先我们来看看manifest.json 这个文件 <span style

Apache HTTPserver安装后报:无法启动,由于应用程序的并行配置不对-(已解决)

原创作品.出自 "深蓝的blog" 博客.欢迎转载,转载时请务必注明出处.否则有权追究版权法律责任. 深蓝的blog:http://blog.csdn.net/huangyanlong/article/details/46375453 安装Apache Http Server后报"应用程序无法启动,由于应用程序的并行配置不对"错误. 无法启动: 错误信息:应用程序无法启动,由于应用程序的并行配置不对.请參阅应用程序事件日志,或使用sxstrace.exe. 解决思路

由于检索用户的本地应用程序数据路径时出错,导致无法生成 SQL Server 的用户实例

/”应用程序中的服务器错误. 由于检索用户的本地应用程序数据路径时出错,导致无法生成 SQL Server 的用户实例.请确保该用户在此计算机上有本地用户配置文件.该连接将关闭. 堆栈跟踪: [SqlException (0x80131904): 由于检索用户的本地应用程序数据路径时出错,导致无法生成 SQL Server 的用户实例.请确保该用户在此计算机上有本地用户配置文件.该连接将关闭.] System.Data.SqlClient.SqlInternalConnection.OnErro

qt中如何启动其他应用程序(如果不成功,还有许多原因即QProcess::ProcessError可供分析)

类 QDesktopServices 提供的方法 访问 常用的桌面 服务 , 如 浏览 器 . 播放器. 电子邮件客户端 . 我们 使用 QDesktopServices :: openUrl(url) ,可以根据指定的url 打开Web 浏览 器 , 并返回 结果,如果 成功返回true ,否则 返回false.相应的可以打开文件(夹),可执行程序等! 如果想要启动其他应用程序使用QProcess, 当发生错误时,可以根据 指定 的 错误 描述 所发生 的错误类型 . 描述:在界面启动后,可通