如何从网页启动/传递值到Windows C#应用程序? (似乎有可能与iTunes的歌曲链接)?

时间:2009-12-29 23:41:38

标签: javascript html winforms launching-application

我正在组建一个C#winforms应用程序,能够让某人点击自动最大化我的c#应用程序并将一些数据传递给它的网页链接是一件好事。就像我看到一些网页有一个自动打开iTunes的歌曲链接,然后在iTunes中搜索你传递的歌曲细节。

Q1 - 如何在HTML / Javascript中执行此操作?

Q2 - 此方法仅适用于某些浏览器吗?

问题3 - 这只适用于Windows吗? (我自己只需要Windows)

由于

3 个答案:

答案 0 :(得分:2)

您必须将新文件类型与C#应用程序相关联。网页可以通过下载来“启动”这样的文件。

我相信您必须通过将参数写入要下载的文件来传递参数。


确实存在“运行或保存”提示,但除此之外,我认为这将是最简单的方法,也是最容易维护的方法。

答案 1 :(得分:2)

您可以注册一个URL协议处理程序(see),它允许您指定唯一的URL协议,您可以在网页中创建可点击的链接,这些链接将生成一个传递完整URL的新应用程序。但要小心,因为这种机制多次被错误实施,可能会使你受到剥削。

如果您尝试使用其中一个奇怪的网址,浏览器通常也会发出警告。这只适用于Windows(但在其他操作系统上也有其他选择)。

答案 2 :(得分:0)

我的第一反应是你必须首先创建某种浏览器插件,它将充当你的javascript和你的C#应用​​程序之间的中间人。这是因为网站javascript和其他代码在有限的安全上下文中运行,无法访问特权资源,例如其他应用程序,命名管道,TCP端口等。