Wo speichert Windows 7 "Warninformationen" über eine .LNK? (Und wie Sie die Warnung entfernen können)

303
LSerni

Ich habe ein Programm installiert. Ist eigentlich egal was.

Wenn ich auf die ausführbare Datei doppelklicke, wird sie ohne Probleme gestartet.

Wenn ich einen Link in einer Taskleiste oder in der Menüleiste erstelle, wird durch Klicken auf den Link ein Warndialogfeld geöffnet: "Datei öffnen - Sicherheitswarnung", das besagt, dass "Dateien aus dem Internet nützlich sein können, dieser Dateityp jedoch möglicherweise Ihren Computer beschädigen kann." .

Ich weiß, dass ich die Warnung loswerden kann, aber ich möchte nicht die Sicherheit von allen Links entfernen . Nur von diesem, und ich möchte der UAC den Zugriff gewähren, wenn ich dies tue. Danach die Verbindung sollte ohne weitere Umschweife geprüft und offen je .

Wenn ich die Verknüpfung auf dem Desktop erstellen, und kopieren Sie sie dann in der Menüleiste, und dann habe ich bewegen Sie den Link in der gleichen Menüleiste, habe ich am Ende mit bis zwei Links auf der gleichen Menüleiste.

Der erste öffnet den Dialog. Das zweite gilt nicht: Die Anwendung wird direkt geöffnet.

An diesem Punkt wurde ich neugierig: Was ist der Unterschied zwischen den beiden Dateien?

  • Dateiname: nein
  • Dateiinhalt: weder. Sie haben den gleichen MD5-Hash.
  • Attribute: keine Freude, sie haben identische Attribute.
  • vielleicht einen alternativen Datenstrom? Könnte sein - ist aber nicht. Keine der .LNK-Dateien hat ADS angehängt.
  • in der registy Macht wenig Sinn, scheint aber dazu nichts in der Registry zu haben.
  • MFT-Metadaten? Ich habe versucht, dieses Tool zu verwenden und habe möglicherweise einen Fehler gemacht, aber ich habe nichts offensichtliches gefunden (ich bin mir nicht sicher, ob das nicht der Fall war).

Ich habe versucht, auf die $ MFT-Metadaten zu blicken, und habe einen Unterschied zwischen den Feldern "General information" der beiden Dateien gefunden, dessen Bedeutung ich nicht kenne. Der NTFS-Explorer meldet die Abschnitte als identisch. eigentlich sind sie nicht. Nach den Datumsfeldern und den DOS-Attributen gibt es zwei Hex-Sequenzen, die sich unterscheiden:

File1 00 00 00 00 88 03 00 00 00 00 00 00 00 00 00 00  10 45 41 22 00 00 00 00  File2 00 00 00 00 A6 03 00 00 00 00 00 00 00 00 00 00  18 44 41 22 00 00 00 00 

Wenn der Unterschied nur ein bisschen gewesen wäre, wäre ich mir sicher, aber das ist nicht der Fall. Ich bin nicht allzu zuversichtlich, die $ MFT zufällig zu ändern, um zu sehen, was passiert - ich habe etwas Angst vor dem, was passieren könnte . Und außerdem erscheint es mir dumm, dass eine nicht unvernünftige Operation (" Entfernen Sie die Warnung von diesem Link hier "), für die es sogar eine einfach zu findende Problemumgehung gibt (" Erstellen Sie den Link auf dem Desktop und wechseln Sie dort dorthin, wo er wirklich ist." "to go ") sollte so kompliziert sein und sogar ein Tool von Drittanbietern benötigen.

Ich gehe davon aus, dass es ein gebündeltes Werkzeug oder eine Prozedur mit demselben Effekt geben sollte, um das mysteriöse und schwer fassbare Flag "Internet Warning" bearbeiten zu können.

Also, wo ist es gespeichert? Und gibt es eine einfache Möglichkeit, es zu entfernen (für das nächste Mal)?

1

1 Antwort auf die Frage

1
LSerni

Die Informationen befanden sich tatsächlich in der DACL-Zone und können mit dem entsprechenden Tool von der Befehlszeile aus bearbeitet werden .

Dadurch wird die Warnung aus "dateiname.lnk" entfernt (muss von der Befehlsshell aus ausgeführt werden, ich verwende CMD aus Gründen der alten Zeit):

ICACLS filename.lnk /SetIntegrityLevel M /L 

Ein ganzer Verzeichnisbaum von Links kann mit behandelt werden

ICACLS *.lnk /T /L /SetIntegrityLevel M 

lief aus dem Stammordner.

Ich denke, es wäre möglich, eine Shell-Operation ("Unblock") zu erstellen, die den Befehl ICACLS ausführen kann, wenn Sie mit der rechten Maustaste auf eine .LNK-Datei klicken. Ein Anfänger-Tutorial könnte hier gefunden werden (Vista, aber Seven sollte nicht zu unterschiedlich sein).

Erstellen Sie den Menübefehl "Entsperren"

  1. REGEDITDienstprogramm öffnen . Übliche Vorsichtsmaßnahmen treffen zu. REGEDIT kann Ihr System zerstören!
  2. Öffne den HKEY_CLASSES_ROOTBienenstock
  3. Suchen Sie den lnkfileEintrag.
  4. Klicken Sie mit der rechten Maustaste auf Lnkfile und wählen Sie "Neu> Schlüssel".
  5. Erstellen Sie einen neuen Schlüssel namens "Shell".
  6. Wiederholen Sie die obigen Schritte, um einen Schlüssel namens "Unblock" in der "Shell" zu erstellen.
  7. Wiederholen Sie oben, um "Befehl" in "Unblock" zu erstellen.
  8. Bearbeiten Sie den Standardwert des Unblock-Schlüssels, damit er gelesen wird

    CMD.EXE /S /C "ICACLS %1 /L /SetIntegrityLevel med" 

Schließen REGEDIT.

Suchen Sie jetzt den LNK, der Ihnen Probleme bereitete. Klicken Sie mit der rechten Maustaste darauf. Sie sollten im Menü einen Eintrag zum Entsperren sehen können. Wählen Sie es aus.

Es erscheint eine Aufforderung zur Benutzerkontensteuerung, der zugestimmt werden muss. Außerdem wird möglicherweise eine Warnung angezeigt, in der Sie überprüfen, ob Sie dies wirklich tun.

Wenn Sie nun erneut auf den Link doppelklicken, wird die Anwendung ohne weitere Probleme gestartet. Wenn Sie eine UAC-Warnung und keine Warnung zum Öffnen von Dateien hatten, reicht das obige Verfahren nicht aus. Sie müssen auch mit der rechten Maustaste auf den Link klicken und in seinen Eigenschaften "Als Administrator ausführen" wählen (möglicherweise müssen Sie dies auch für die Anwendung selbst tun).

Getestet und arbeitet mit Windows 7 Pro und Ultimate.

Funktioniert auch unter Windows 10. john16384 vor 6 Jahren 0