Delphi » FAQ

Jak dokonać konwersji długiej nazwy ścieżki na krótką (dos).

netvalker
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ShellCtrls, StdCtrls, ComCtrls;

type
  TForm1 = class(TForm)
    ShellTreeView1: TShellTreeView;
    Edit1: TEdit;
    Edit2: TEdit;
    procedure ShellTreeView1Change(Sender: TObject; Node: TTreeNode);
  private
    { Private declarations }
  public
    { Public declarations }
    Function ShortPath(LongPath : String) : String;
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

Function Tform1.ShortPath(LongPath : String) : String;
var
   Buffer: array[0..MAX_PATH-1] of Char;
Begin
   SetString(Result,Buffer,GetShortPathName(PAnsiChar(LongPath),Buffer,SizeOf(Buffer)));
End;

procedure TForm1.ShellTreeView1Change(Sender: TObject; Node: TTreeNode);
begin
     Edit1.Text := ShellTreeView1.Path;                          // Edit1 wyświetla ścieżkę przed konwersją;
     Edit2.Text := LowerCase(ShortPath(ShellTreeView1.Path));   //  Edit2 wyświetla ścieżkę po konwersji;
end;

end.

Myślę że wszystko jest na tyle jasne że nie trzeba kodu tłumaczyć!!

FAQ

6 komentarzy

AAAa, #$%#$$## kur****. Juz nie mam sily :[ Takie rzeczy dodawaj do FAQ!!!
Prosze Cie teraz abys usunal to newsa oraz dodal do FAQ te wskazowke... Bosz... ilez mozna mowic...

eeeeeee Zanim się zaczniesz wqrwiać to sprawdź bo właśnie tam to jest DODANE !! !! !!
http://4programmers.net/view_faq.php?id=492

Adam ale wpadka :P

Eeeee, sorry... mea culpa [wstyd]

A nie łatwiej ExtractShortPathName(Śćieżka);
????

Co to mają byc za wyrazy. Co za banda dzikusów...