nils-hero: Wie kann ich diese speziellen Verknüpfungen mit Python erstellen

Hallo,

Wenn ich unter XP einen Ordner mit gedrückter 'Alt'-Taste in den Startmenü-Ordner ziehe [1], wird nicht eine Verknüpfung erstellt, sondern etwas anderes, was aussieht wie ein normaler Ordner, was in Menüs auch aufklappt, aber funktioniert wie eine Verknüpfung. Vergleichbar eher mit den Symlinks unter Linux.

Was sind das für Dinger? Hat jemand eine Ahnung, ob sowelche mit Python in normalen Verzeichnissen erstellt werden können?

Gruß, Nils

p.s. Ich wünsche mir einen Themenbereich 'Python'.

[1] normalerweise ist das C:\Dokumente und Einstellungen\All Users\Startmenü
--
Bookmarks

  1. Hallo Nils,

    Wenn ich unter XP einen Ordner mit gedrückter 'Alt'-Taste in den Startmenü-Ordner ziehe [1], wird nicht eine Verknüpfung erstellt,

    Doch, es wird. Das Startmenü hat aber im Gegensatz zu anderen Teilen des Explorers die Eigenschaft, Shortcuts auf Ordner zu folgen.

    Wie Du Shortcuts selbst anlegst mit Python ist hier erklät. Der Link dort zu den Python Windows Extensions funktioniert allerdings nicht mehr, die gibt's neuerdigngs bei Sourceforge.

    Vergleichbar eher mit den Symlinks unter Linux.

    Nein, das sind keine Symlinks, sondern diese Explorer-Verknüpfungen (im Endeffekt eine Binärdatei, die Informationen über das Ziel enthält).

    Auf NTFS-Partitionen kennt Windows allerdings sogenannte "Junction Points" oder "Reparse Points", mit denen man sowas wie Symlinks nachbauen kann. Allerdings kommt der Explorer selbst damit nicht wirklich klar (es gibt etliche Probleme - insbesondere auch beim Löschen von sowas, da kann es zu Datenverlust kommen). Kannst ja mal danach suchen, man kann das sicher auch mit Python anlegen, allerdings würde ich davon aus praktischen Gründen (Explorer kommt damit nicht klar) eher von abraten.

    p.s. Ich wünsche mir einen Themenbereich 'Python'.

    Gab's mal, wurde wegen zu wenig Fragen zum Thema wieder abgeschafft. Wenn die sich jetzt anfangen zu häufen, werden wir sicher darüber nachdenken, den wieder einzubauen.

    Viele Grüße,
    Christian

    1. Hallo,

      Wenn ich unter XP einen Ordner mit gedrückter 'Alt'-Taste in den Startmenü-Ordner ziehe [1], wird nicht eine Verknüpfung erstellt,

      Doch, es wird. Das Startmenü hat aber im Gegensatz zu anderen Teilen des Explorers die Eigenschaft, Shortcuts auf Ordner zu folgen.

      mir ist dieses Verhalten bisher nicht aufgefallen, ich habe aber mal versucht, das nachzustellen. Und es kommt noch besser!

      Erstens:  Dieses Verhalten ist NICHT auf das Startmenü beschränkt.
      Zweitens: Gewöhnliche Verknüpfungen mit einem Verzeichnis werden weder im Startmenü noch sonstwo im Explorer automatisch "aufgelöst". Was hier wirklich passiert, ist viel komplexer.

      Angenommen, ich ziehe das Verzeichnis "E:\Doc" mit gedrückter Alt-Taste ins Startmenü. Dann entsteht dort in Wirklichkeit folgende Struktur:

      ...\Doc             (Verzeichnis mit gesetztem System-Attribut)
         |
         +- desktop.ini     (siehe unten)
         +- target.lnk      (Verknüpfung mit E:\Doc)

      Inhalt der erzeugten desktop.ini:

      [.ShellClassInfo]
       CLSID2={0AFACED1-E828-11D1-9187-B532F1E9575D}
       Flags=2
       ConfirmFileOp=0

      Die *Erzeugung* dieser Verzeichnis/Dateistruktur klappt in der Weise anscheinend nur im Startmenü. Verschiebt man das Gebilde aber an eine beliebige andere Stelle, bleibt das *Verhalten* unverändert: An der Stelle, wo das so erzeugte Verzeichnis Doc im Explorer auftaucht, wird als Inhalt der gesamte Inhalt von E:\Doc einschließlich aller Unterverzeichnisse angezeigt. Nur der *tatsächliche* Inhalt des magischen Doc-Verzeichnisses wird vom Explorer verleugnet.

      Wenn man diese Struktur von Verzeichnis und Dateien von Hand nachbaut, ist man übrigens nicht auf den Umweg über das Startmenü angewiesen. Das funktioniert auch in jedem anderen Verzeichnis als Container.

      So, wieder etwas Neues über Windows gelernt! :-)

      Schönes Wochenende noch,
       Martin

      --
      Lieber Blödeleien als blöde Laien.
  2. Hallo,

    @ Christian
    Danke, wie man normale shortcuts erstellt, hab ich bereits herausbekommen.
    (Ich mach es mit winshell)

    @ der Martin
    Das ist es, so funktioniert es. Ich hatte das Verzeichnis mal mit Firefox geöffnet, da hab ich gemerkt, das es ein Verzeichnis mit ner Verknüpfung drin zu sein scheint, aber hab weder die desktop.ini bemerkt, noch wusste ich das mit dem Systemattribut. Gegoogelt, kann mit 'ATTRIB +S V:\erzeich\nis' in der Konsole gesetzt werden.

    Danke für die Hilfe.

    Nils