gpt4 book ai didi

ruby - 如何让ruby调用默认浏览器打开localfile

转载 作者:数据小太阳 更新时间:2023-10-29 08:10:51 26 4
gpt4 key购买 nike

this question ,我发现使用 system('start http://www.google.com') 是可以的。但是,如果文件在本地磁盘中,则使用 system('start file:///c:/temp/a.html') 不起作用。如何让 Ruby 使用默认浏览器打开本地文件?

最佳答案

在 Windows 资源管理器中双击 .html 文件会得到什么?如果不是浏览器,那是你的问题。 'start'关键字通过 ShellExecute 函数推送路径,因为 http://URLs 知道在浏览器中打开它,如果它是一个文件,它取决于文件的扩展名,如果你的系统有 .html 指向例如记事本(因为在过去你已经将它设置为记事本)它总是会在那个程序中打开它,除非你去专门改变它。

从通用变通的角度来看,您无能为力,如果您可以在 Ruby 下访问 Windows 注册表,那么您可以查询 HKEY_CLASSES_ROOT\http\shell\open\command 默认值值包含绑定(bind)到 HTTP 协议(protocol)的当前浏览器的命令行,您可以使用它来构建完整路径(将 %1 替换为 URL 字符串)。

关于ruby - 如何让ruby调用默认浏览器打开localfile,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2159735/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com