如何将网站与客户端应用程序集成?

Posted

技术标签:

【中文标题】如何将网站与客户端应用程序集成?【英文标题】:How to integrate website with client-side application? 【发布时间】:2011-09-28 09:10:08 【问题描述】:

我想使用 ASP.NET 开发一个 webapp,但它必须使用由我开发的桌面应用程序提供的一些客户端功能。

现有示例:在 Picasa 网络相册中,您可以单击名为“下载到 Picasa”的链接,该链接会打开 Picasa 桌面应用程序并下载相册。

我想它需要在不同平台上使用不同的方法。有哪些可能让它在 Windows 和 Mac OS X 上运行?

【问题讨论】:

请更详细地描述一个用例...当您单击嵌入式 Web 浏览器控件内呈现的网页中的按钮时,您是否希望在 Windows 窗体主机应用程序中发生某些事情?您是否可以完全控制应用程序 Web 和 Windows 中的所有代码? 是的,这两个应用程序都将由我开发。假设它是嵌入在 WebBrowser 控件中的 ASP.NET 页面。用户单击某个按钮,应用程序以某种方式捕获此事件,然后调用某些“桌面”方法(如与设备通信)并将结果返回到网页。 您想与哪些设备通信? 这个桌面应用程序做什么并不重要。与设备通信只是一个例子。桌面应用程序应该做许多不同的事情,我确信这些事情是 webapp 做不到的。 【参考方案1】:

注册一个自定义 URL 协议处理程序。看这里:https://***.com/a/2429803/449906

【讨论】:

感谢 Kuba :) 看来这正是我所需要的。我也在考虑桌面应用程序的一些反馈,但我想直接与 ASP.NET 服务器通信会更容易。【参考方案2】:

我不详细了解 Picasa,但您的情况听起来像是通过单击“下载到 picasa”链接开始下载。此下载将启动如下链接:

picasa:///downloadfeed/?uname=ASDFASDFASDF .....

根据您的操作系统,任何协议都可能与不同的外部程序关联。有关这方面的信息,您可以查看mozilla board。

REGEDIT4

[HKEY_CLASSES_ROOT\foo]
@="URL:foo Protocol"
"URL Protocol"=""

[HKEY_CLASSES_ROOT\foo\shell]

[HKEY_CLASSES_ROOT\foo\shell\open]

[HKEY_CLASSES_ROOT\foo\shell\open\command]
@="\"C:\\Program Files\\Application\\program.exe\" \"%1\"" 

如果您启动这样的链接,您的外部程序将启动并执行您想要的任何操作。

【讨论】:

以上是关于如何将网站与客户端应用程序集成?的主要内容,如果未能解决你的问题,请参考以下文章

如何将 Converse js XMPP 与 React 应用程序集成

如何将 MoneyBookers 与 ASP.NET 应用程序集成?

是否有用于将 SAML 与 Spring Boot 应用程序集成的 Spring Boot SAML 客户端?

如何将 Instagram 提要嵌入我的网站 [关闭]

如何将对话流与网站集成?

如何将 facebook 帐户与 asp.net 网站集成?