Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Aus UNC den Laufwerksbuchstaben ermitteln (https://www.delphipraxis.net/99884-aus-unc-den-laufwerksbuchstaben-ermitteln.html)

Andreas H. 19. Sep 2007 05:25


Aus UNC den Laufwerksbuchstaben ermitteln
 
Hallo,

wie man zu einer Pfadangabe mit LW-Buschtaben den UNC-Pfad ermittelt, ist ja hier schon hinreichend erläutert worden.

Ich benötige aber den umgekehrten Fall. Ich speichere in einer Datenbank Links zu Dateien im Netzwerk in Form von UNC-Pfaden. Dem User möchte ich aber die gewohnten Laufwerksbuchstaben anzeigen.

In der SysUtils scheint es sowas nicht zu geben. kennt sich da jemand aus?

Gruß Andreas

marabu 19. Sep 2007 06:23

Re: Aus UNC den Laufwerksbuchstaben ermitteln
 
Moin Andreas,

das Network Share kann nicht wissen mit welchem Laufwerksbuchstaben es auf deinem Rechner verbunden wurde - wenn es denn überhaupt verbunden wurde. Also wirst du die verbundenen Shares mit WNetOpenEnum() und dem RESOURCETYPE_DISK ermitteln müssen. Findest du dann dein Share als RemoteName wieder, dann kennst du auch den LocalName.

Grüße vom marabu

Andreas H. 19. Sep 2007 06:46

Re: Aus UNC den Laufwerksbuchstaben ermitteln
 
Da scheint es mir ja einfacher, den Pfad doppelt zu speichern, einmal als DOS-Pfad und einmal als UNC.

Oder? :gruebel:

Gruß Andreas

marabu 19. Sep 2007 07:08

Re: Aus UNC den Laufwerksbuchstaben ermitteln
 
Wie soll das funktionieren? Dabei würden die unterschiedlichen Bedingungen auf den verschiedenen Rechnern der Benutzer nicht berücksichtigt. Mag sein, dass du da sehr restriktive Regeln erlassen kannst und ein bestimmtes Share stets und überall mit einem festen Laufwerksbuchstaben verknüpft werden muss, aber dieser Mangel an Flexibilität ist weder schön noch notwendig, wenn du die Laufwerksbuchstaben zu jedem Share auf der Client-Seite ermittelst.

Reinhard Kern 19. Sep 2007 07:32

Re: Aus UNC den Laufwerksbuchstaben ermitteln
 
Zitat:

Zitat von Andreas H.
Hallo,

wie man zu einer Pfadangabe mit LW-Buschtaben den UNC-Pfad ermittelt, ist ja hier schon hinreichend erläutert worden.

Ich benötige aber den umgekehrten Fall. Ich speichere in einer Datenbank Links zu Dateien im Netzwerk in Form von UNC-Pfaden. Dem User möchte ich aber die gewohnten Laufwerksbuchstaben anzeigen.

In der SysUtils scheint es sowas nicht zu geben. kennt sich da jemand aus?

Gruß Andreas

Hallo,

es ist ja gerade der Sinn der UNC-Notation, dass keine Laufwerksbuchstaben mehr gebraucht werden (für Unixer sowieso Teufelszeug). Eine allgemeine Funktion zur Umwandlung muss also in vielen Fällen schon daran scheitern, dass es die Form Laufwerk\Share garnicht gibt - was dann?

Gruss Reinhard

Andreas H. 19. Sep 2007 07:45

Re: Aus UNC den Laufwerksbuchstaben ermitteln
 
Ja, Ihr habt recht.

Meine Software soll ja gerade die Verzeichnis-Struktur kapseln.

Es handelt sich um eine Dokumenten-Datenbank, bei der die Dokumente im Dateisystem verbleiben und in der Datenbank darauf verwiesen wird. Der Benutzer findet die Dokumente in der Datenbank über Schlagworte oder den Dokumentnamen (Datenfeld, nicht Dateiname!).

Also: nur UNC-Pfade speichern.

Danke für die Unterstützung bei der Meinungsfindung :wink: :thumb:

Gruß Andreas


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:35 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz