Sam*_*mir 9 shortcuts windows-8.1
当我将快捷方式从 Firefox 保存到磁盘时,这是在文本或十六进制编辑器中查看时的内容。
[InternetShortcut]
URL=http://superuser.com/
IDList=
HotKey=0
IconFile=C:\Users\Jerry\AppData\Local\Mozilla\Firefox\Profiles\e8oe2h15.default\shortcutCache\ndPGaHoK9RbB9Xs6pYDwiA==.ico
IconIndex=0
Run Code Online (Sandbox Code Playgroud)
它看起来很简单:文件中带有一些标记的纯文本。
假设我想手动重新创建此文件。

现在,我希望能够通过双击文件图标在我的默认 Web 浏览器中打开此文件。但不,它不是那样工作的。相反,我收到一条错误消息。

此 Internet 快捷方式的目标“”无效。转到 Internet Shortcut 属性表并确保目标正确。
究竟是什么意思target ""?
通过在网站上搜索,我可以看到其他几个用户在 Internet 快捷方式文件方面遇到了这种或类似的困难,有些甚至试图创建“跨平台”Internet 快捷方式文件。我不明白的是为什么这首先会如此痛苦。
它应该只是一个带有可在 Web 浏览器中打开的 URL 地址的简单文件。那么是什么让这些“互联网快捷方式”文件与众不同呢?是什么让他们打勾?当我将我的文件与原始文件进行比较时,它们似乎是相同的。那么问题究竟出在哪里呢?
这里有一些有趣的发现。“目标”一词可能表示 URL,而“Internet 快捷方式属性表”很可能是指文件属性对话框中的“Web 文档”选项卡。如果我没记错的话,它在以前版本的 Windows(至少在 Windows 98 中)中的标题是“Internet Shortcut”。从那时起,它似乎已重命名为 Web 文档。
还有更多!从下面的屏幕截图中可以看出,我的文件与原始文件共享相同的 SHA1 摘要。但它不共享相同的文件图标,也没有“Web 文档”选项卡。
更重要的是,当我重命名我的新文件以使其以大写字母开头时,它就变成了一个实用的 Internet 快捷方式文件。就是这样!它刚刚开始工作。如果我再次重命名它,使其以小写字母开头,它将停止工作......再次。不要相信我的话,看看下面的截图。
它还有助于以下划线、破折号、点、括号、花括号、方括号、等号、数字符号、感叹号等开头的文件名。它甚至可以用空白纸图标正确替换地球图标。将其重命名为除图标以外的任何名称test或Test真正更改图标。
但是是什么导致它像这样的行为或行为不端?例如,为什么文件名以大写字母开头会很重要?常规文件没有这样的限制......
如果新文件的名称以大写字母,开始更改扩展名之前,并随后被改名,使其以小写字母开头...那么它仍然有效!
因此,如果您像这样进行操作,它将起作用:
newfile Lancelot.txt
pastein Lancelot.txt
rename Lancelot.txt Lancelot.url
rename Lancelot.url lancelot.url
Run Code Online (Sandbox Code Playgroud)
test.url 文件的原始问题很可能发生在上面的第 4 步。我最初在不同的磁盘上创建了一个名为 test.txt 的文件,并将其重命名为 test.url。这是在我在桌面文件夹中的系统磁盘上创建第二个同名文件之前(如上所示)。我不记得了,但很可能是我最初创建了一个文件,更改了扩展名,然后粘贴到目标 URL 中并保存它,并希望通过简单的双击它就可以工作。与创建文件、粘贴目标 URL、然后更改名称扩展名相反。
我想我得到了一些东西。正如我所怀疑的那样,Windows 以某种方式内化(记住)您以前用于 Internet 快捷方式文件的名称。我使用 Windows 10 TP 做了一些实验。我将尝试总结到目前为止我所学到的东西。下面的屏幕截图显示了我一直在试验的文件的图标和名称。

我将按编号、从左到右或按名称来引用它们。
编号 2、3 和 6 是作为空白文本文件手动创建的。它们被留空,它们的扩展名从 txt 更改为 url。这些不工作:它们会导致出现该错误。

1:如果文件的内容在启用之前已正确定义(通过设置 url 扩展名),则不会受到名称更改的影响。它在更改前有效,在更改后也将有效。
2:如果文件的内容在启用之前没有定义(例如空白文件),它不会受到名称更改的影响。仅更改名称无济于事。之前没用,改了之后也没用。此外!如果您决定在没有正确定义内容的情况下更改文件名(或将其留空),并且稍后回来添加正确的 URL 定义(请继续阅读以获取解释),新文件名将无法使用。
1:如果之前正确定义了文件的内容,该文件仍然可以像以前一样工作。但是对文件所做的所有更改都将被忽略。事实上,所有内容都可以删除,文件仍然可以工作。要提交任何更改,文件必须保存在一个新文件名下,一个以前从未使用过的文件名。字母大小写很重要,因此对test.url进行更改并将其保存为Test.url(如果以前未使用)被视为一个新文件,独立于 test.url 文件。任何其他更改都必须保存在另一个文件名下,以前从未使用过。等等等等。
2:如果文件的内容以前没有定义过(例如空白文件),现在通过更改内容并保存这些更改来定义它无济于事。所有更改都将被忽略。如果它之前不起作用,那么更改后它将不起作用。要提交任何更改,文件必须保存在一个以前从未使用过的新文件名下(具有唯一新名称的新文件)。
1、2、6号内容:
[InternetShortcut]
URL=http://superuser.com/
IDList=
HotKey=0
IconFile=C:\Users\Jerry\AppData\Local\Mozilla\Firefox\Profiles\bcf6rzuf.default\shortcutCache\ndPGaHoK9RbB9Xs6pYDwiA==.ico
IconIndex=0
Run Code Online (Sandbox Code Playgroud)
数字 3 和 4 的内容:它们是空白的!
5号内容:
[InternetShortcut]
URL=http://microsoft.com/
Run Code Online (Sandbox Code Playgroud)
这里有两个关键事实需要学习。
似乎在 Internet Explorer 中打开文件(如果您使用的是 Firefox 或其他第三方浏览器)一次可能会修复损坏的 URL 文件。我在 IE 版本 11 的 Windows 8.1 上看到过这种情况。但如前所述,在 IE 中打开之前,需要正确定义 URL 文件内容。然后 IE 将重新解释内容,甚至添加一个漂亮的网站图标作为文件图标,通过添加任何丢失的“Web 文档”属性来基本上修复文件。但是,它没有修复我的 test.url 文件。所以它可能不适用于所有文件,我不知道为什么。
我发现此注册表编辑很有帮助。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet
Explorer\Main\FeatureControlFEATURE_URLFILE_CACHEFLUSH_KB936881FEATURE_URLFILE_CACHEFLUSH_KB936881iexplore.exeiexplore.exe设为 1这样做之后,我的 test.url 文件终于开始工作了,它收到了一个 Firefox 图标来代替地球(请参阅有问题的屏幕截图)。此修复程序最初应用于 XP、Server 2003 和 Vista。但显然它也适用于 Windows 8.1(未在 Windows 10 上测试)。
此错误的原因(在 Microsoft KB 文章中给出)不是很详细,但确实说明如下。
如果 Windows 外壳程序在创建 Internet 快捷方式文件的过程中收到通知,则会出现此问题。在文件完全写入磁盘之前收到此通知。
它没有确切说明“通知”的含义。
正如我怀疑的那样,Windows 正在使用某些 Internet Explorer 组件来解释这些 Internet 快捷方式 (URL) 文件。因此,您在该文本文件中放入的任何内容仅用于初始解释。一旦您将文件扩展名更改为 URL,您就更改了文件关联,因此文件内容将被 Internet Explorer 解释。如果结构正确,它将把它变成一个有效的 URL Internet Shortcut 文件。否则(例如将其留空并更改扩展名),当您尝试打开它时会遇到可怕的错误。
实际的快捷方式存储在其他地方,而不是文件本身,因此一旦初始解释和文件类型转换完成,原始文件可以作为 0 字节文件留空。该文件仅用于指向快捷方式数据的目的。快捷方式数据是存储在 NTFS 文件系统中的“Web 文档”字段。
整个业务无法重用文件名,或者您将地球仪作为文件图标(或收藏夹图标或浏览器图标)的方式,这与 Internet Explorer 缓存 Web 内容的方式有关。因此,实际上,当您双击这些 URL 文件之一,并且将 Firefox 设置为默认 Web 浏览器时,实际上不是 Firefox 打开 URL;它是 Internet Explorer!Internet Explorer 然后通过一些内部 Windows 向导将 URL 传递给 Firefox,Firefox 启动并加载 URL,然后您就会看到指示灯(页面)。您为不使用 Internet Explorer 感到自豪。
要删除任何阻止您重命名文件的缓存,或强制 Internet Explorer 再次重新解释同名文件(例如修改其内容后),您需要清除一些缓存文件夹。这称为 TIF 或 Internet 临时文件。
这应该适用于 Windows 8、8.1 和 10。您会在以前的 Windows 版本的其他位置找到此文件夹。在 Windows 7 中,我认为它与上面的位置相同,最高可达 Windows 级别。应该有一个名为 Temporary Internet Files 的文件夹。
| 归档时间: |
|
| 查看次数: |
9622 次 |
| 最近记录: |