ico
1
我的常用和默认浏览器是 Edge,但最近发现 Edge 在打开特别长的网页时,比如美股在 SEC 的 filings,会很容易无响应,要是有 Ctrl+F 搜索的操作就更容易了,而 Firefox 则没出现这个问题
例子:百济神州的一季报 https://www.sec.gov/Archives/edgar/data/1651308/000165130823000068/bgne-20230331.htm
我平常会把这些报告的网址以 .url 的文件形式保存在本地,方便自己很快从本地找到用浏览器打开看,也省存储空间
现在想将其关联到 Firefox,但是右键 .url 文件 - 属性,发现根本不能更改打开方式……
有什么办法能实现我说的需求呢?目前只能是手动打开 Firefox,把文件拖拽到窗口里
似乎 Candy 可以?但是好像学起来也挺麻烦的,有没有更方便一点的办法?
也想到了用 .lnk 快捷方式的办法,但我的 .url 文件挺多的,一个一个手动转换很麻烦,有没有批量转换的方法?
ico
2
ico
4
有了个 bon 不 jour 的曲线救国方法:
从网上下了个文本文件批量修改器,批量把 .url 文件中的 URL=
替换为 "C:\Program Files\Mozilla Firefox\firefox.exe"
,把文件重命名为 .bat 文件即可
开头的[InternetShortcut]
甚至都不用去掉,除了运行时会先弹出来个命令行的黑框外没毛病
2 Likes
Windows 好像不允许更改 URL 文件的打开方式。我用 FileTypesMan 查询后发现,URL 文件的打开方式在注册表中的存储路径为:
计算机\HKEY_CLASSES_ROOT\InternetShortcut\shell\Open\Command
但该注册表项似乎不能编辑,修改后都会报错。
不过您可以用 FileTypesMan 在 URL 文件的右键菜单中新建一个动作 “用 Firefox 打开”,动作命令如下:
"C:\Program Files\Mozilla Firefox\firefox.exe" %l
但是即使将该动作设置为默认,双击 URL 文件后仍是用系统默认的浏览器打开链接。
附:FileTypesMan 的下载链接
ico
7
新发现,因为我用 Total Commander,在 TC 里右键 .url 文件是可以选择打开方式的,然而选择使用 Firefox 默认打开后,Firefox 会报错,不能加载我的配置文件
另外若选择用C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe
打开,则会像打开个 TXT文件一样,必须选择Internet浏览器
这一项打开才能使 Edge 正确打开网址
ico
8
我的为啥新建不了 Action 呢?直接新建没反应,选择复制自带的一个 Actions 然后再粘贴,结果报错Error 5: 拒绝访问
L11
9
URL 文件通常包含 https 网址,用于访问网页。 但是,URL 文件也可以包含 mailto: 、 tel: 、 file: 或其他 URL,这就是你无法修改url关联方式的原因。
读取所有的 .url, 然后生成一个 html文件.
每次用firefox 打开这个html, 然后点击对应的链接 .
一个标准的.url 文件内容大致如下
[{000214A0-0000-0000-C000-000000000046}]
Prop3=19,2
[InternetShortcut]
IDList=
URL=http://www.baidu.com/
你只要读取包含 URL 的那行数据, 写入 html 即可.
编程的话, 很简单的几行代码. 实在不会, 问问 AI 也可以.
或者也可以写一个有GUI的程序, 直接拖动到这个软件快捷方式上就行.
1 Like
或许是因为您没有以管理员身份运行 FileTypesMan。
我今天下午写了一个软件.
大概功能如下,
配置文件里写入
url= firefox.exe
然后拖动 url 文件到软件上, 或者桌面快捷方式上即可.
另外, 我测试的时候发现, msedge 自身居然不支持 url文件.
dog
13
可以写一段ahk代码
功能是, 当在文件管理器(包括桌面)界面, 拦截鼠标双击事件,
检查当前选中的项目是否后缀名为 url
如果为url,则通过指定浏览器来打开,
否则发送双击事件
我待会试试,应该挺好写,有段现成的代码
可以换个思路,还是用 edge 当作默认浏览器,然后用书签打开火狐,例如FirefoxURL-308046B0AF4A39CB://:https://baidu.com
。
火狐的 URL Protocol 可以去注册表里找,默认路径是 计算机\HKEY_CLASSES_ROOT\FirefoxURL-
。然后批量替换你本地的 url,加上前缀保存为书签导入 edge。
dog
16
搞定 ,修改ahk代码中的两处 E:\miniapp\Firefoxsunbox\Firefox\firefox.exe 为你的目标浏览器路径即可。
使用方法,在文件管理器或桌面,鼠标中键 单击url文件,即可通过你自定义的浏览器打开。
【倒是也可以写成拦截鼠标双击,但是那样副作用太大,所以我写成了用鼠标中键】
#InstallMouseHook
#IfWinActive ahk_class CabinetWClass ; 文件管理器
mButton::
click
clipboard:=""
sleep,300
sendinput,^+c
clipwait
lastname := SubStr(clipboard, -2)
url:="url"
if lastname = url
{
IniRead,web, %clipboard%, InternetShortcut, URL
run E:\miniapp\Firefoxsunbox\Firefox\firefox.exe %web%
}
else
click,M
return
#IfWinActive ahk_class Progman ; 桌面
mButton::
click
clipboard:=""
sleep,300
sendinput,^+c
clipwait
lastname := SubStr(clipboard, -2)
url:="url"
if lastname = url
{
IniRead,web, %clipboard%, InternetShortcut, URL
run E:\miniapp\Firefoxsunbox\Firefox\firefox.exe %web%
}
else
click,M
return
ico
18
感谢各位手搓大佬,不过感觉还是我这曲线救国的方法最方便了……
因为平常用 TC,手基本一直放在键盘上,可以非常方便地敲几下键盘就立马索引到想打开的文件,然后回车一下打开
对我而言,@dog 兄的方式如果调整一下会比我的笨方法更好:
用 Shift + Enter
代替原先的鼠标中键单击,不但能够按需用 Firefox 打开,也不影响继续用 Edge 打开
我来研究下怎么监视 TC,以及监视 Shift + Enter
————————————————————————————
啊,发现自己安的是 AHK2,得再多花点功夫了
ico
19
写了个 AHK2 的脚本,但是有一些问题:
- Shift 键似乎在运行后是一直按着的状态
- 假如文件的路径是
C:\abc def\ghi jkl.url
,那么这个字符串就会被中间的空格分割成几串打开多个标签页,如何才能将其合并一起打开呢?
- 会多启动一个浏览器窗口,如何在原有浏览器窗口中直接新标签页打开?
HotIfWinActive "ahk_exe totalcmd.exe"
Hotkey "Shift & Enter", myFuncForOpeningURLInFirefox
myFuncForOpeningURLInFirefox(ThisHotkey)
{
Sleep 100
SendInput("^3") ; TC 文件管理器中 Ctrl + 3 复制路径及文件名
Sleep 100
extension := SubStr(A_Clipboard, -3) ; 检查文件扩展名
if (extension = "url") {
Run "C:\Program Files\Mozilla Firefox\firefox.exe " A_Clipboard ; 用 Firefox 打开 URL 文件
}
}
ico
20
又多照着 dog 兄的代码抄了点,这回 OK 了,没看到啥其他问题,就是 Firefox 可能有病,如果没有现存 Firefox 窗口的时候去运行,经常会提示用安全模式启动,蠢死了

HotIfWinActive "ahk_exe totalcmd.exe"
Hotkey "Shift & Enter", myFuncForOpeningURLInFirefox
myFuncForOpeningURLInFirefox(ThisHotkey)
{
SendInput("^3") ; TC 文件管理器中 Ctrl+3 复制路径及文件名
extension := SubStr(A_Clipboard, -3) ; 检查文件扩展名
if (extension = "url") {
web := IniRead(A_Clipboard, "InternetShortcut", "URL")
Run "C:\Program Files\Mozilla Firefox\firefox.exe " web
}
}
ico
21
能支持命令行吗?我现在用 AHK 脚本去运行 Firefox,经常会提示用安全模式启动…… 用你的软件倒没出现过这种情况
我想用命令行调用,因为手常放在键盘上,用命令行更方便