[求助] 如何让 Chrome 全局带参数启动 ?

2021-12-29 00:09:30 +08:00
 cuicuiv5

事情是这样的, 我一直使用的截图工具 Snipaste 要想实现在浏览器中自动框选对象需要启用 chrome://accessibility 下的两个选项,而这两个选项重启之后就会失效, 官方推荐的方法是在快捷方式后面添加启动参数 --force-renderer-accessibility , 但是这样只有通过快捷方式启动有效, 其他应用调用 chrome 的时候就失效了, 我在网上找到的解决方法是在注册表中修改

HKEY_CLASSES_ROOT\ChromeHTML\shell\open\command

在后面添加参数即可:

一切看起来很好, 但我如此操作之后再次启动 Chrome 发现并没有起作用, 🤣🤣请问各位 V 友这种情况该如何解决?

我的环境是 win10 最新版+Chrome 最新版

2652 次点击
所在节点    Chrome
13 条回复
ysc3839
2021-12-29 05:02:54 +08:00
看看 https 对应的是 ChromeHTML 吗?
dzdh
2021-12-29 09:02:49 +08:00
chrome.exe 重命名 成别的

go 写个启动器 叫 chrome.exe
cuicuiv5
2021-12-29 11:24:17 +08:00
@ysc3839 不是,我这里是 ie

[![T6XXz4.md.png]( https://s4.ax1x.com/2021/12/29/T6XXz4.md.png)]( https://imgtu.com/i/T6XXz4)
[![T6XvQJ.md.png]( https://s4.ax1x.com/2021/12/29/T6XvQJ.md.png)]( https://imgtu.com/i/T6XvQJ)

可否提供一个修改思路我尝试下
cuicuiv5
2021-12-29 11:25:48 +08:00
@dzdh 这也是一种思路, 但我现在很不解就是为什么别人的解决方案在我这里不好用...
ysc3839
2021-12-29 12:05:36 +08:00
@cuicuiv5 我看了下我这里,默认浏览器设置成 Chrome 的情况下,https 也是 IE ,估计有特殊处理吧。不然试试搜索注册表里的 chrome.exe 然后全部改掉。
dzdh
2021-12-29 12:54:26 +08:00
@cuicuiv5

```
package main

import (
"fmt"
"os"
"os/exec"
"time"
)

func main() {

args := make([]string, 1)

args[0] = "--force-renderer-accessibility"
args = append(args, os.Args[1:]...)

err := exec.Command("./chrome.exe", args...).Start()
if err != nil {
fmt.Println("ERROR:", err)
time.Sleep(10 * time.Second)
}
}
```

不成敬意
cuicuiv5
2021-12-30 14:25:42 +08:00
@dzdh 哇塞 ! 感谢大佬 !
尝试了一下然后稍作修改成功了, 一开始单独运行正常, 但是被其他软件调用提示找不到文件 , 将./chrome.exe 换成我 chrome 的绝对路径就可以正常使用了.
azusematsuri
2022-01-01 14:55:34 +08:00
@dzdh go 还能这么用,涨姿势了
abccccabc
20 天前
楼主,这个启动器能不能加其它参数?能不能开源一下? chrome 系列太需要这玩意了。
cuicuiv5
20 天前
@abccccabc 六楼大佬的源代码就可行,args[0] = "--force-renderer-accessibility"改成你想要的参数就行
abccccabc
19 天前
问题 1:我想把这个弄成 exe 文件,作为便携版,要怎样改代码?放到任何目录,都会自动找同目录的 chrome.exe 文件?
问题 2:args[0] = "--force-renderer-accessibility" 这个参数是否可以继续加更多参数?加了参数还要改其它参数吗?
cuicuiv5
19 天前
@abccccabc #11

1. 建议使用绝对路径
2. 参数后面加空格继续添加新参数就可以了

使用方法:
将下列代码修改后编译成 exe ,放置到 C:\Program Files\Google\Chrome\Application\目录,将原有的 chrome.exe 修改为_chrome.exe ,将编译后的启动器命名为 chrome.exe, 注册表不需要进行更改
即可实现全局带参数启动

package main

import (
"fmt"
"os"
"os/exec"
"time"
)

func main() {

args := make([]string, 1)

args[0] = "--force-renderer-accessibility --参数 2 --参数 3"
args = append(args, os.Args[1:]...)

err := exec.Command("C:\\Program Files\\Google\\Chrome\\Application\\_chrome.exe", args...).Start()
if err != nil {
fmt.Println("ERROR:", err)
time.Sleep(10 * time.Second)
}
}

你去查一下如何编译 go 为 exe 就好啦,也可以让 ai 给你改写一下实现从一个配置文件中读取启动参数
abccccabc
19 天前
多谢,我试下

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/824994

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX