Показать сообщение отдельно
  #1  
Старый 19.05.2009, 00:49
Aндрей Aндрей вне форума
Прохожий
 
Регистрация: 16.02.2009
Адрес: Брянск
Сообщения: 34
Репутация: 10
По умолчанию Укорачивание имени

Мне в программе нужно укоротить путь до папки (использую TShellTreeView). Так вот, пробовал тренироваться на эдитах:
Edit1.Text:= TShellTreeView.Path;
Код:
function ShortFileName(const FileName: string): string;
var aTmp: array[0..255] of Char;
begin
  if not DirectoryExists(FileName)  //FileExists(FileName)
    then Result:=''
    else if GetShortPathName(PChar(FileName), aTmp, Sizeof(aTmp)-1) = 0
      then Result:= FileName
      else Result:= StrPas (aTmp);
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
  Edit2.Text:=(ShortFileName(Edit1.Text));
end;
Почему-то он возвращает в Edit2 пустое значение.. Подскажите что ни так?
Ответить с цитированием