Click Once 的 Google Chrome 扩展程序?

Google Chrome extension for Click Once?

提问人:Dan 提问时间:2/2/2009 最后编辑:fuentesjrDan 更新时间:2/26/2020 访问量:36625

问:

我有一个客户想将 Google Chrome 用于我们开发的内部 Web 应用程序(我不怪他,我真的很喜欢使用 chrome!

问题是我们有一个win表单应用程序,用户可以从浏览器启动,使用单击一次进行部署。我早就知道 chrome 不支持一次点击,但我认为现在可能有一些支持。

我花了几分钟时间在stack overflow和Google周围搜索,但没有发现任何明显的迹象表明是否有人正在计划它或已经为chrome开发了一次点击扩展(类似于FFClickOnce)。

那么,有没有人在 chrome 下工作过一次点击,或者有没有人看到过任何支持点击一次的插件/扩展的消息?

.NET Winforms Google-Chrome ClickOnce

评论

0赞 Marc Gravell 2/2/2009
嗯......问得好。。。我非常喜欢其中之一......我想知道(心不在焉地)写一个会有多难?
8赞 lubos hasko 2/3/2009
我只想补充一点,Google 正在使用 ClickOnce 在 IE 浏览器上部署 Chrome。有趣的:)

答:

0赞 Rune Grimstad 2/2/2009 #1

Microsoft前段时间发布了Firefox的插件,因此它们确实支持其他浏览器。由于插件是用 javascript 编写的,我想应该可以查看源代码以确定它是如何完成的,也许可以编写自己的代码。

2赞 fuentesjr 2/2/2009 #2

Google Chrome 目前没有扩展程序或扩展程序架构。扩展架构仍然是他们正在计划/设计的东西,我想不会很快可用。但是,有迹象表明 Chrome 中的 Greasemonkey 支持指日可待。无论如何,某种类型的 Javascript 代码似乎是您目前唯一的希望。

评论

1赞 Kevin Berridge 12/22/2010
Chrome 现在包含扩展程序
8赞 James Jones 2/3/2009 #3

Chrome 无法像资源管理器那样自动启动安装程序 .exe,但 Chrome 确实会像任何其他文件一样下载它。下载后,用户运行它并不难,直到 Chrome 想出一种方法让它自动启动。

评论

2赞 Dan 2/3/2009
这目前有效。感谢您的直截了当的想法!我一直专注于那个 *.application 文件,但我可以交替提供一个设置链接.exe
1赞 Dan 2/3/2009
刚刚对此进行了更多测试,我注意到您无法传递查询字符串参数。这是目前最接近的解决方案,但仍然不完美。
7赞 TomZ 12/2/2009 #4

安装 IETab for Chrome,然后设置规则以始终使用 IETab 打开启动页面。

0赞 Mohamed Mansour 12/24/2009 #5

您可以创建 NPAPI 插件并以这种方式显示您的表单,然后从那里与扩展框架工作进行通信。

http://code.google.com/chrome/extensions/npapi.html

12赞 Eric 9/17/2010 #6

Google Chrome 并不真正支持将 .NET 版本添加到用户代理的扩展,但对于普通启动 .applications,请尝试一下:

https://chrome.google.com/extensions/detail/eeifaoomkminpbeebjdmdojbhmagnncl(不再可用)

https://chrome.google.com/webstore/detail/clickonce-helper/mdooolbdbmjaobhdondofgdmnbidlgfh

评论

4赞 Emmaly 1/25/2014
仅供参考,这是一个很好的选择,但现在它会导致出现大量广告(弹出窗口、注入等),包括恶意软件广告。并且不遵守扩展程序中的广告选择退出。远离此扩展。我还没有找到替代品。
2赞 rolgalan 9/16/2014
我已经使用了很长时间,但不幸的是不再可用。这是新链接:chrome.google.com/webstore/detail/clickonce-helper/...
5赞 Brian 1/11/2011 #7

Chrome 现在有一个扩展程序,允许您启动一次点击应用程序(适用于 Chrome 的 ClickOnce)。

不幸的是,它不会更新用户代理,因此无法知道该站点是否支持它。有一种方法可以更改Chrome中的用户代理,但这不是我期望普通用户可以做的事情。但是,以下是 Chrome 帮助论坛上的答案,其中解释了如何参考。

基本上创建一个 Chrome 的快捷方式,并将此命令行参数添加到目标中。

--user-agent="Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US) AppleWebKit/534.10 (KHTML, like Gecko) Chrome/8.0.552.224 Safari/534.10 .NET CLR 3.5.21022; .NET CLR 3.5.30729; .NET4.0E" 

您可能需要确保拥有当前的用户代理。这是一个将为您显示它的网站。要添加到用户代理的部件是“.NET CLR 3.5.21022;.NET CLR 3.5.30729;”(当然,这可能还取决于计算机上安装的内容)。

这种方法的另一个缺点是,修改后的用户代理似乎在 Javascript 中不可用(我仍然得到未修改的版本)。

------ 编辑 ------

如果你想知道 ClickOnce 在客户端上是否可用,这里有一个我写的 Javascript 函数,它会告诉你......

this.hasClickOnce = function () {
    var userAgent = navigator.userAgent.toUpperCase();
    if (userAgent.indexOf('.NET CLR 3.5') >= 0) return true;
    if (window.clientInformation && window.clientInformation.plugins) {
        // check to see if a ClickOnce extension is installed.
        for (var i = 0; i < clientInformation.plugins.length; i++)
            if (clientInformation.plugins[i].name == 'ClickOnce plugin for Chrome') return true;
    }
    return false;
};

评论

0赞 Brian 2/11/2012
上次我检查了一下,Firefox有一个扩展程序,你可以为ClickOnce安装。FF 允许扩展修改用户代理,因此上面的 JS 代码应该适用于 FF。
0赞 olidev 2/11/2012
我试过了,但它不适用于 FireFox,我安装了 FF 的插件:addons.mozilla.org/en-US/firefox/addon/... 所以我检查了它:clientInformation.plugins[i].name == 'Microsoft .NET Framework Assistant 1.3.1' 但它不起作用
1赞 Brian 2/11/2012
什么“不起作用”?扩展还是我在上面测试它的方式?如果是扩展程序,则需要与扩展程序的开发人员讨论。如果检测到扩展,我知道这曾经有效。如果你弄清楚了,请告诉我,我会更新我的答案。
0赞 Andrew Dunkman 4/13/2012
我已经更新了这个代码示例以使用当前的浏览器: gist.github.com/2371101
2赞 Emmaly 1/25/2014
我对上面的答案发表了同样的评论,但是:仅供参考,这是一个很好的答案,但现在它会导致出现大量广告(弹出窗口、注入等),包括恶意软件广告。并且不遵守扩展程序中的广告选择退出。远离此扩展。我还没有找到替代品。
1赞 Sundar 7/28/2011 #8

这是 https://chrome.google.com/webstore/detail/eeifaoomkminpbeebjdmdojbhmagnncl

0赞 GamaSharma 2/26/2020 #9

我们有一些产品使用一次单击部署和更新,这些产品也使用单点登录。由于我们的客户也想使用 Chrome,因此我们不得不寻找替代方案。

https://chrome.google.com/webstore/search/clickonce?hl=en-US

在撰写本文时,有 3 个第三方插件可用: - 窗口混音 ClickOnce - Meta4 点击一次 - 谷歌的 ClickOnce

但这些需要自行决定使用。

enter image description here