![]() |
Laufwerk C:\ einlesen und erfahren das C:\Programme ein link ist
Hi,
also ich habe nun alles was mir eingefallen bei Google und hier gesucht. Ich komme nicht auf die Lösung. Entweder such ich falsch oder es ist nicht so einfach. Ich möchte mit FindFirst und FindNext (wenn es damit geht) die Directory Struktur von C: einlesen. Dabei möchte ich feststellen ob das was ich grade bekommen habe (z.b. C:\Progamme) ein link ist und wo er hinzeigt. Ich habe alle Versionen die in diesem ![]() Nun weiß ich echt nicht mehr weiter. Was mache ich falsch? bzw. wie macht man sowas? Und Unix hatte ich das ruckzuck. Das ist aber leider nicht Portierbar. Vielen dank im Voraus |
AW: Laufwerk C:\ einlesen und erfahren das C:\Programme ein link ist
C:\Programme ist kein Link, das ist eine Lokalisierung an "C:\Program Files" und kommt aus der Desktop.ini, in diesem Verzeichnis.
Wenn du sowas automatisch übersetzt haben willst, dann mußt du mit den ShellFolder-Interfaces arbeiten. ![]() OK, in deutschen Windowsen gibt es für viele Verzeichnisse doch einen "defekten" Link Junction, falls wer über die normale FileAPIs versucht den übersetzten Namen zu benutzen. Müssten die da nicht in den FileAttributen was drin haben? [add] ![]() ![]() |
AW: Laufwerk C:\ einlesen und erfahren das C:\Programme ein link ist
Huhu,
das mag sein. Aber ich habe mit mklink selber Links angelegt. Bei denen klappt auch nix. Leider. Könntest du ansonsten eventuell noch 1-2 Schlagworte mitgeben oder hast du eventuell ein Beispiel. Ich glaube da würde ich mich nass machen :-D Hehe, hast du eine Glaskugel oder sowas?!? Während ich geschrieben habe haust du das schon rein, irre... |
AW: Laufwerk C:\ einlesen und erfahren das C:\Programme ein link ist
Ich kann gerade nicht sagen, ob das in D2007 schon verfügbar ist, aber in aktuellen Delphi-Versionen gibt es in System.Sysutils ein
![]() |
AW: Laufwerk C:\ einlesen und erfahren das C:\Programme ein link ist
Leider nicht.
|
AW: Laufwerk C:\ einlesen und erfahren das C:\Programme ein link ist
Mit JclNTFS klappt es.
Vielen dank an euch, ich hätte NIE gefunden. |
AW: Laufwerk C:\ einlesen und erfahren das C:\Programme ein link ist
Hmmm,
tut mir leid, aber noch eine Frage. Wie finde ich heraus das C:\Programme auf C:\Program Files zeigt? Mount ich es unter Unix kann man es sehen. Das find ich leider nicht in der Unit. Unix ausgabe:
Code:
Nachtrag: bei NtfsIsFolderMountPoint bekomme ich ein True zurück.
drwxrwxrwx 1 root root 4096 Sep 11 10:21 ProgramData
lrwxrwxrwx 2 root root 18 Mar 18 2022 Programme -> '/mnt/Program Files' Noch ein Nachtrag: ![]() Das Sysinternals läuft einwandfrei.
Code:
C:\>junction.exe C:\Programme
Junction v1.07 - Creates and lists directory links Copyright (C) 2005-2016 Mark Russinovich Sysinternals - www.sysinternals.com C:\Programme: JUNCTION Print Name : C:\Program Files Substitute Name: C:\Program Files C:\>junc.exe C:\Programme Directory: "C:\Programme" Junctions found: 0 C:\> |
AW: Laufwerk C:\ einlesen und erfahren das C:\Programme ein link ist
Der vorige Inhalt des Beitrags war falsch, hab doch tatsächlich die Junction C:\Programme übersehen :oops:.
|
AW: Laufwerk C:\ einlesen und erfahren das C:\Programme ein link ist
Zitat:
Code:
dir /AL C:\
dir /AL C:\Users dir /AL C:\Users\%username%
Code:
dir /AL /S C:\
|
AW: Laufwerk C:\ einlesen und erfahren das C:\Programme ein link ist
Huhu,
da waren 2 Fehler in dem ding von ![]() Die Ausgabe unter Delphi ist nun wie folgt.
Code:
Oder wenn es einfach eine Dir ist, so:
Directory: "C:\Programme"
Junction: "C:\Programme" --> "C:\Program Files" Junctions found: 1
Code:
Directory: "C:\tmp"
Junctions found: 0 |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:57 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz