Laden...

Einen Shortpath generieren

Erstellt von velgreyer vor 19 Jahren Letzter Beitrag vor 19 Jahren 2.322 Views
V
velgreyer Themenstarter:in
45 Beiträge seit 2004
vor 19 Jahren
Einen Shortpath generieren

HiHo

Gibt es in C# eine Möglichkeit aus einem langen Pfad einen ShortPath zu machen? In Delphi nennt sich die Funktion extractfilepath().

, vel

V
842 Beiträge seit 2003
vor 19 Jahren

Hi!

Was kann man unter langen und was unter kurzen Dateipfad verstehen? Haste mal ein Beispiel? Meinst du vllt folgendes:
c:\Program Files\AAA\BBB\CCC\DDD\fff.txt
wird zu:
c:\Program Files...\DDD\fff.txt

Code-Hacker

V
velgreyer Themenstarter:in
45 Beiträge seit 2004
vor 19 Jahren

Zum Beispiel dass aus
C:\Dokumente und Einstellungen\NoAdmin\Desktop\Neuer Ordner\new.bmp
C:\DOKUME1\NoAdmin\Desktop\NEUERO1\new.bmp
wird.

H
704 Beiträge seit 2003
vor 19 Jahren

Sofern du es nur für Windows brauchst, kannst du die Funktion GetShortPathName via Interop einbinden:


[DllImport("kernel32.dll", CharSet = CharSet.Auto)]
public static extern int GetShortPathName(
   [MarshalAs(UnmanagedType.LPTStr)]
   string path,
   [MarshalAs(UnmanagedType.LPTStr)]
   StringBuilder shortPath,
   int shortPathLength);

Aufruf:


StringBuilder shortPath = new StringBuilder(80);
int result = GetShortPathName(
@"d:\test.jpg", shortPath, shortPath.Capacity);
string s = shortPath.ToString();

[last.fm](http://www.last.fm/user/hauptmanAlpha/)
V
velgreyer Themenstarter:in
45 Beiträge seit 2004
vor 19 Jahren

Vielen Dank Hauptmann =)