Windows Standard-Verhalten für Verknüpfungen ändern

Probleme mit dem Desktop oder dem Datei Explorer?
Antworten
Thomas-Gast

Windows Standard-Verhalten für Verknüpfungen ändern

Beitrag von Thomas-Gast » 25.06.2021, 20:20

Moin, moin,

Ich möchte Sprungmarken (anchor) in HTML Dateien direkt über einen Link anspringen. Dazu wird in meinem Lieblingseditor (Notepad++) die Betriebssystem-Funktion ShellExecute ausgeführt mit dem Link als Parameter.

Innerhalb der PowerShell ist das Verhalten einfach nachstellbar mittels:

Code: Alles auswählen

Start-Process file:///C:\tmp\anchor-test-file.html#part3
Mit Hilfe des Python-Scripts (Python 2.7)

Code: Alles auswählen

# -*- coding: utf-8 -*-
import ctypes
SW_SHOW = 5
ctypes.windll.Shell32.ShellExecuteA(None, 'open', r'file:///C:\tmp\anchor-test-file.html#part3', None, None, SW_SHOW)
wird das Verhalten von notepad++ noch besser nachgeahmt.

Die HTML-Datei unter dem Namen C:\tmp\anchor-test-file.html sieht so aus:

Code: Alles auswählen

<!DOCTYPE html>
<html dir="ltr" lang="en"><head>
<title>HTML-Anchor-Test</title>
</head>
<body>

<a href="#part1">part 1</a><br>
<a href="#part2">part 2</a><br>
<a href="#part3">part 3</a><br>
<a href="#part4">part 4</a><br>

<h2 id="part1"><a href="#part1">part 1</a></h2>
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
<h2 id="part2"><a href="#part2">part 2</a></h2>
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
<h2 id="part3"><a href="#part3">part 3</a></h2>
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
<h2 id="part4"><a href="#part4">part 4</a></h2>
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
visible end of document

</body>
</html>
Das Problem ist, dass Windows die URL abschneidet und den Browser "falsch" aufruft:
Anstatt

Code: Alles auswählen

"C:\Program Files (x86)\Mozilla Firefox\firefox.exe" file:///C:\tmp\anchor-test-file.html#part3
wird

Code: Alles auswählen

"C:\Program Files (x86)\Mozilla Firefox\firefox.exe" -osint -url "C:\tmp\anchor-test-file.html"
ausgeführt.

Weiß jemand, wo in der Registry hin gegriffen werden muss, um das Verhalten zu korrigieren?
Oder weiß jemand, wo ich über das Problem berichten kann, um ein Lösung zu bekommen?

Gruß
Thomas

Tante Google

Windows Standard-Verhalten für Verknüpfungen ändern

Beitrag von Tante Google » 25.06.2021, 20:20


Thomas-Gast

Re: Windows Standard-Verhalten für Verknüpfungen ändern

Beitrag von Thomas-Gast » 29.06.2021, 13:56

Moin,

Ich habe ein Python Script für Notepad++ gebaut, so dass sich die Aufgabe für mich erledigt hat.

Die Lösung ist unter beschrieben. Es gibt auch ein Issue zu diesem Thema.

Gruß
Thomas

Antworten