Was macht Internet Shortcut-Dateien besonders?

Wenn ich eine Verknüpfung von Firefox auf der Festplatte speichere, ist dies der Inhalt, wenn er in einem Text-oder Hex-Editor angezeigt wird.

[InternetShortcut]
URL=http://superuser.com/
IDList=
HotKey=0
IconFile=C:\Users\Jerry\AppData\Local\Mozilla\Firefox\Profiles\e8oe2h15.default\shortcutCache\ndPGaHoK9RbB9Xs6pYDwiA==.ico
IconIndex=0

Es erscheint sehr einfach: Klartext mit etwas Markup in einer Datei.

Angenommen, ich möchte diese Datei manuell neu erstellen.

  1. Ich erstelle eine leere Textdatei.
  2. Ich füge den Inhalt oben hinein.
  3. .. speichern Sie die Datei und beenden Sie das Programm.
  4. .. ändern Sie die Dateierweiterung von txt in url.
  5. .. akzeptieren das Risiko, die Dateitypzuordnung zu verlieren, indem Sie auf JA klicken wenn aufgefordert.

1

Jetzt würde ich erwarten, diese Datei in meinem Standard-Webbrowser öffnen zu können, indem ich auf das Dateisymbol doppelklicke. Aber nein, so funktioniert es nicht. Stattdessen erhalte ich eine Fehlermeldung.

2

Das Ziel "" dieser Internetverknüpfung ist ungültig. Geh zu den Internet Shortcut Eigenschaftsblatt und stellen Sie sicher, dass das Ziel korrekt ist.

Was genau ist gemeint mit target ""?

Wenn ich hier auf der Website suche, kann ich sehen, dass mehrere andere Benutzer auf diese oder ähnliche Schwierigkeiten mit Internetverknüpfungsdateien gestoßen sind, und einige haben sogar versucht, "plattformübergreifende" Internetverknüpfungsdateien zu erstellen. Was ich nicht sehe, ist, warum das überhaupt so ein Schmerz ist.

Es soll sich nur um eine einfache Datei mit einer URL-Adresse handeln, die in einem Webbrowser geöffnet wird. Was macht diese "Internet Shortcut" - Dateien so besonders? Was macht sie ticken? Wenn Ich Vergleiche meine Datei mit dem original, Sie scheinen identisch zu sein. Also wo genau ist das problem dann?

Aktualisieren


Hier sind einige interessante Erkenntnisse. Das Wort "Ziel" bedeutet wahrscheinlich URL und" Internet Shortcut property sheet "bezieht sich höchstwahrscheinlich auf die Registerkarte" Web Document "im Dialogfeld "Dateieigenschaften". Wenn ich mich richtig erinnere, trug es in früheren Windows-Versionen (zumindest in Windows 98) den Titel "Internetverknüpfung". Es scheint in Web Document umbenannt worden zu sein seitdem.

Da ist noch mehr! Wie aus den folgenden Screenshots hervorgeht, hat meine Datei denselben SHA1-Digest wie das Original. Es hat jedoch nicht dasselbe Dateisymbol und auch nicht die Registerkarte "Webdokument".

ursprüngliche Dateieigenschaften neue Dateieigenschaften original-Datei sha1 neue Datei sha1

Wenn ich meine neue Datei so umbenenne, dass sie mit einem Großbuchstaben beginnt, wird sie zu einer funktionalen Internetverknüpfungsdatei. Einfach so! Es nur beginnt zu arbeiten. Wenn ich es erneut umbenenne, so dass es mit einem Kleinbuchstaben beginnt, funktioniert es nicht mehr... wieder. Nehmen Sie nicht mein Wort dafür, schauen Sie sich den Screenshot unten an.

neue Dateieigenschaften mit neuem Namen

Es hilft auch, den Dateinamen mit einem Unterstrich, einem Bindestrich, einem Punkt, einer Klammer, einer geschweiften Klammer, einer eckigen Klammer, einem Gleichheitszeichen, einem Zahlenzeichen, einem Ausrufezeichen usw. zu beginnen. Es ersetzt sogar das Globus-Symbol ordnungsgemäß durch ein leeres Papierblattsymbol. Umbenennen in etwas anderes als test oder Test ändert das Symbol wirklich.

Aber was bewirkt, dass es sich so verhält oder sich schlecht benimmt? Warum sollte es zum Beispiel wichtig sein, wenn der Dateiname mit einem Großbuchstaben beginnt? Es gibt keine solche Einschränkung für normale Dateien...

Update 2


Wenn der Name der neuen Datei mit einem Großbuchstaben beginnt, wird vor dem Ändern der Namenserweiterung und dann umbenannt so dass es beginnt mit einem Kleinbuchstaben... dann funktioniert es immer noch!

So wenn Sie so vorgehen, wird es funktionieren:

newfile Lancelot.txt
pastein Lancelot.txt
rename Lancelot.txt Lancelot.url
rename Lancelot.url lancelot.url

ein B

Update 3 -


Es ist wahrscheinlich, dass das ursprüngliche problem mit dem test.die URL-Datei ist bei Schritt 4 oben aufgetreten. Ich hatte zunächst eine Datei mit dem Namen test erstellt.txt auf einer anderen Festplatte und umbenannt test.URL. Dies war, bevor ich eine zweite Datei mit demselben Namen auf der Systemfestplatte im Desktop-Ordner erstellt habe (wie oben dargestellt). Ich erinnere mich nicht, aber es ist wahrscheinlich, dass ich ursprünglich erstellt eine Datei, änderte die Namenserweiterung, und dann in der Ziel-URL eingefügt und speichern und hoffen, dass es durch einen einfachen Doppelklick zu arbeiten. Im Gegensatz zum Erstellen der Datei fügen Sie die Ziel-URL ein und dann Ändern Sie die Namenserweiterung.

Author: Samir, 2015-04-07

1 answers

Ich glaube ich habe etwas. Wie ich vermutete, verinnerlicht Windows irgendwie die Namen, die Sie zuvor für Internetverknüpfungsdateien verwendet haben. Ich habe einige Experimente mit Windows 10 TP durchgeführt. Ich werde versuchen, zusammenzufassen, was ich bisher gelernt habe. Der Screenshot unten zeigt die Symbole und Namen der Dateien, mit denen ich experimentiert habe.

bausteinsymbole

Ich beziehe mich auf sie nach Nummer, von links nach rechts oder nach Namen.

  • Nummer 1 wurde erstellt von Firefox per Drag & Drop das Favicon auf Desktop. Ich habe diesen als Referenz verwendet. Es funktioniert.
  • Die Nummern 2, 3 und 6 wurden manuell als leere Textdateien erstellt. Sie wurden leer gelassen und ihre Namenserweiterungen von txt in URL geändert. Diese sind nicht arbeiten: sie verursachen den Fehler zu erscheinen.

    Fehlermeldung

  • Nummer 4 wurde manuell als leere Textdatei erstellt. Der Inhalt von nummer 1 wurde dann eingefügt, und sein Name wurde geändert aus txt zu url. Es funktioniert.
  • Nummer 5 wurde manuell als leere Textdatei erstellt. Sein Dateityp name und Ziel-URL wurde manuell eingegeben. Es funktioniert.
  • Ändern des Dateinamens (Erweiterung ausgeschlossen) wirkt sich auf die funktion (ob es tatsächlich funktioniert) der Datei auf eine von zwei Arten.

1: Wenn der Inhalt der Datei vor der Aktivierung korrekt definiert wurde es (durch Festlegen der URL-Erweiterung) wird es nicht von einem Namen beeinflusst ändern. Es funktionierte vor der Änderung, und es wird nach der Änderung arbeiten.

2: Wenn der Inhalt der Datei vor dem Aktivieren nicht definiert war (z. B. leere Datei), wird nicht durch einen Namen beeinflusst ändern. Das Ändern des Namens allein hilft nicht. Es hat vorher nicht funktioniert und es wird nach dem Wechsel nicht funktionieren. Außerdem! Der neue Dateiname wird später unbrauchbar, sollten Sie sich entscheiden, die Datei zu ändern name sowieso, ohne den Inhalt richtig zu definieren (oder es verlassen leer) und Sie kommen später zurück, um die richtige URL-Definition hinzuzufügen (lesen zur Erklärung).

  • Das Ändern des Dateiinhalts wirkt sich auf die Funktion der Datei aus auf eine von zwei Arten.

1: Wenn der Inhalt der Datei zuvor ordnungsgemäß definiert wurde, ist der datei wird immer noch funktionieren, wie es vorher tat. Aber alle änderungen an der datei wird ignoriert. In der Tat können alle Inhalte entfernt werden und die Datei wird immer noch funktionieren. Zum Begehen einer änderungen die Datei muss unter gespeichert werden ein neuer Dateiname, der noch nie verwendet wurde. Brief-Gehäuse zählt, also Änderungen an test vornehmen.url und speichere es als Test.url (wenn zuvor unbenutzt) gilt als neue Datei, unabhängig von Test.URL Datei. Alle zusätzlichen Änderungen müssen unter einer weiteren gespeichert werden dateiname, noch nie benutzt. So weiter und so weiter.

2: Wenn der Inhalt der Datei wurde nicht zuvor definierten (zB leere Datei), es wird nicht helfen, es jetzt zu definieren, indem es Änderungen an der inhalt und Speichern dieser Änderungen. Alle Änderungen werden ignoriert. Wenn es hat vorher nicht funktioniert, wird es nach den Änderungen nicht funktionieren. Zum Begehen einer änderungen, die Datei muss unter einem neuen Dateinamen gespeichert werden, der wurde noch nie verwendet (eine neue Datei mit eindeutigem neuen Namen).

Dateiinhalt

Inhalt der Nummern 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

Inhalt der Nummern 3 und 4: Sie sind leer!

Inhalt Nummer 5:

[InternetShortcut]
URL=http://microsoft.com/

Schlussfolgerung

Hier gibt es zwei wichtige Fakten zu lernen.

  1. Die Datei muss ein gültiges "Ziel" (dh URL-Adresse) und einen Dateinamen (Internetverknüpfung) enthalten, bevor die Namenserweiterung geändert wird (oder Hinzugefügt).
  2. Verwendete Namen können nicht für eine andere Ziel-URL wiederverwendet werden. Nicht einmal nach dem dauerhaften Löschen der Originaldatei.

Aktualisierungen


Es scheint, dass das öffnen der Datei im Internet Explorer (falls Sie Firefox oder einen anderen Browser eines Drittanbieters verwenden) einmal könnte die defekte URL-Datei beheben. Ich habe es hier unter Windows 8.1 mit IE Version 11 gesehen. Wie bereits erläutert, muss der Inhalt der URL-Datei jedoch ordnungsgemäß definiert werden, bevor er im IE geöffnet wird. Der IE interpretiert dann den Inhalt neu und fügt sogar ein schönes Favicon als Dateisymbol hinzu, um die Datei im Wesentlichen zu heilen, indem er eine fehlende Eigenschaft "Web Document" hinzufügt. Es hat meinen Test jedoch nicht behoben.url-Datei. So es funktioniert möglicherweise nicht für alle Dateien und ich bin mir nicht sicher warum.


Ich fand diese Registrierungsbearbeitung hilfreich.

  1. regedit Ausführen.exe -
  2. Navigieren Sie zu HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl
  3. Erstelle einen neuen Schlüssel mit dem Titel FEATURE_URLFILE_CACHEFLUSH_KB936881
  4. Navigieren Sie zu FEATURE_URLFILE_CACHEFLUSH_KB936881
  5. Erstelle ein neues dword mit dem Titel iexplore.exe
  6. Setze den Wert von iexplore.exe auf 1
  7. Reboot

Quelle: Microsoft (KB936881)

Danach mein Test.url-Datei schließlich anfing zu arbeiten, und es erhielt ein Firefox-Symbol anstelle des Globus (siehe Screenshot in Frage). Dieses Update wurde ursprünglich auf XP, Server 2003 und Vista angewendet. Aber anscheinend funktioniert es auch unter Windows 8.1 (nicht unter Windows 10 getestet).

Die Ursache für diesen Fehler-im Microsoft KB-Artikel angegeben-ist nicht sehr detailliert, sagt aber Folgendes.

Dieses Problem tritt auf, wenn die Windows-Shell eine Benachrichtigung erhält während des Vorgangs, der die Internetverknüpfungsdatei erstellt. Dieser eine Benachrichtigung wird empfangen, bevor die Datei vollständig geschrieben wurde auf die Festplatte.

Es sagt nicht genau, was mit "Benachrichtigung" gemeint ist.


Wie ich vermutete, verwendet Windows einige Internet Explorer-Komponenten, um diese Internetverknüpfungsdateien (URL) zu interpretieren. Der Inhalt, den Sie in diese Textdatei einfügen, wird also nur für die anfängliche Interpretation verwendet. Sobald Sie die Dateinamenerweiterung in URL geändert haben, haben Sie die Dateizuweisung geändert, und somit wird der Dateiinhalt lassen Sie sich von Internet Explorer interpretiert. Wenn es richtig strukturiert ist, wird es in eine funktionierende URL-Internetverknüpfungsdatei umgewandelt. Andernfalls (z. B. wenn Sie es leer lassen und die Erweiterung ändern) wird der gefürchtete Fehler angezeigt, wenn Sie versuchen, es zu öffnen.

Die eigentliche Verknüpfung wird an anderer Stelle gespeichert, nicht in der Datei selbst, und die Originaldatei kann daher als 0-Byte-Datei leer gelassen werden, sobald die anfängliche Interpretation und Dateitypkonvertierung durchgeführt wurde. Die Datei dient nur dem Zweck von nur auf die Verknüpfungsdaten zeigen. Die Verknüpfungsdaten sind das Feld "Webdokument", das im NTFS-Dateisystem gespeichert ist.

Das ganze Geschäft mit nicht in der Lage, einen Dateinamen wiederzuverwenden, oder die Art und Weise, dass Sie das Gleiche wie Ihre Datei-Symbol (oder Favicon oder Browser-Symbol) zu bekommen, hat es mit der Art und Weise Internet Explorer Caches Web-Inhalte zu tun. Wenn Sie also in Wirklichkeit auf eine dieser URL-Dateien doppelklicken und Firefox als Standard-Webbrowser festgelegt haben, ist dies wirklich nicht der Fall Firefox, der die URL öffnet; es ist Internet Explorer! Durch eine interne Windows-Zauberei übergibt Internet Explorer die URL dann an Firefox, Firefox startet und lädt die URL und Sie sehen das Licht (Seite). Sie fühlen sich stolz darauf, Internet Explorer nicht zu benutzen.

Um einen Cache zu entfernen, der verhindert, dass Sie die Datei umbenennen, oder um Internet Explorer zu zwingen, die gleiche Datei mit dem gleichen Namen erneut zu interpretieren (wie nach dem Ändern seiner inhalt), müssen Sie einige der Caching-Ordner löschen. Dies wird als TIF oder temporäre Internetdateien bezeichnet.

  1. Öffnen Sie %localappdata%\Microsoft\Windows\INetCache
  2. Alle Dateien auswählen (Strg+a).
  3. Delete (del)!
  4. {[17],} ja
  5. Doppelklicken Sie jetzt auf Ihre geänderte URL-Datei. Es sollte funktionieren.

Dies sollte für Windows 8, 8.1 und 10 funktionieren. Sie finden diesen Ordner an anderen Orten in früheren Windows-Versionen. In Windows 7 Habe Ich denken Sie, es ist an der gleichen Stelle wie oben, bis zu Windows-Ebene. Es sollte einen Ordner geben, der dann als Temporäre Internetdateien bezeichnet wird.

 9
Author: sammyg,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2015-04-08 12:06:25